minio分布式存储使用

2019-11-12  本文已影响0人  think_lonely

Minio 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。

Minio是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL

注意点:

分布式Minio单租户存在最少4个盘最多16个盘的限制(受限于纠删码)。这种限制确保了Minio的简洁,同时仍拥有伸缩性。如果你需要搭建一个多租户环境,你可以轻松的使用编排工具(Kubernetes)来管理多个Minio实例。

1. 安装

# wget  https://dl.min.io/server/minio/release/darwin-amd64/minio

# chmod +x minio  # 赋权

2. 启动

./minio server /data  #单机的方式

集群的方式:

export MINIO_ACCESS_KEY=123456  #设置

export MINIO_SECRET_KEY=123456  #设置

# 这里是两台服务器,每台服务器每台服务器4个硬盘

/soft/minio server http://172.16.17.4/storage1/minio http://172.16.17.4/storage2/minio http://172.16.17.4/storage3/minio http://172.16.17.4/storage4/minio \

              http://172.16.17.5/storage1/minio http://172.16.17.5/storage2/minio http://172.16.17.5/storage3/minio http://172.16.17.5/storage4/minio

3. 可以加入开机启动

vi /etc/rc.local

4. python开发接口api

地址:https://docs.min.io/cn/python-client-quickstart-guide.html

实例:

from minio import Minio  #需要安装minio模块

minioClient = Minio('28.33.23.1:19000',

access_key='123456',

secret_key='123456',

secure=False,  # 这种为非加密,加密的方式需要设置为True

)

# minioClient.make_bucket('joj')  # 创建一个文件夹

buckets=minioClient.list_buckets() # 列出所有的文件夹

for bucketin buckets:

     print(bucket.name,bucket.creation_date)

print(minioClient.bucket_exists("test"))  # 测试文件夹是否存在

# minioClient.fput_object('test','test.jpg','E:\\project\\test\\56.jpg')  #  上传

minioClient.fget_object('test','test.jpg','E:\\project\\1.jpg')  # 下载

上一篇 下一篇

猜你喜欢

热点阅读