Minio 是一個基于Apache License v2.0開源協(xié)議的對象存儲服務(wù)。它兼容亞馬遜S3云存儲服務(wù)接口傅事,非常適合于存儲大容量非結(jié)構(gòu)化的數(shù)據(jù)叫挟,例如圖片、視頻昼激、日志文件庇绽、備份數(shù)據(jù)和容器/虛擬機(jī)鏡像等锡搜,而一個對象文件可以是任意大小,從幾kb到最大5T不等瞧掺。
Minio是一個非常輕量的服務(wù),可以很簡單的和其他應(yīng)用的結(jié)合耕餐,類似 NodeJS, Redis 或者 MySQL
注意點:
分布式Minio單租戶存在最少4個盤最多16個盤的限制(受限于糾刪碼)。這種限制確保了Minio的簡潔辟狈,同時仍擁有伸縮性肠缔。如果你需要搭建一個多租戶環(huán)境,你可以輕松的使用編排工具(Kubernetes)來管理多個Minio實例上陕。
1. 安裝
# wget? https://dl.min.io/server/minio/release/darwin-amd64/minio
# chmod +x minio? # 賦權(quán)
2. 啟動
./minio server /data? #單機(jī)的方式
集群的方式:
export MINIO_ACCESS_KEY=123456? #設(shè)置
export MINIO_SECRET_KEY=123456? #設(shè)置
# 這里是兩臺服務(wù)器桩砰,每臺服務(wù)器每臺服務(wù)器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. 可以加入開機(jī)啟動
vi /etc/rc.local
4. python開發(fā)接口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,? # 這種為非加密,加密的方式需要設(shè)置為True
)
# minioClient.make_bucket('joj')? # 創(chuàng)建一個文件夾
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')? # 下載