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') # 下载
网友评论