安装minio
MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。
下载
从官方网站下载最新版本Minio,网址为: https://github.com/minio/minio,最新下载URL为: https://dl.min.io/server/minio/release/linux-amd64/minio
用ftp或sftp工具拷贝minio到linux操作系统
启动
chmod +x minio
# 使用默认端口:9000
./minio server /data
# 指定端口
./minio server --address ":9001" ./data
# 指定accessKey和secretKey启动
export MINIO_ACCESS_KEY=clown
export MINIO_SECRET_KEY=clown
./minio server /data
集群部署
export MINIO_ACCESS_KEY=Minio
export MINIO_SECRET_KEY=Test123456
/opt/minio/minio server --config-dir /etc/minio \
http://172.16.1.101/minio/data1 http://172.16.1.101/minio/data2 \
http://172.16.1.102/minio/data1 http://172.16.1.102/minio/data2 \
其中,“MINIO_ACCESS_KEY”为用户名,“MINIO_SECRET_KEY”为密码,密码不能设置过于简单,不然minio会启动失败,“–config-dir”指定集群配置文件目录,生成复杂用户名和密码可通过类似Linux命令
tr -cd ‘[:alnum:]’ </dev/urandom |fold -w64|head -n1的方式来生成
多租户部署
单机部署
要在单台机器上托管多个租户,为每个租户运行一个Minio server,使用不同的HTTPS端口、配置和数据目录。
示例1:单主机,单磁盘
以下示例在一块磁盘上托管三个租户。
minio --config-dir ~/tenant1 server --address :9001 /data/tenant1
minio --config-dir ~/tenant2 server --address :9002 /data/tenant2
minio --config-dir ~/tenant3 server --address :9003 /data/tenant3
示例2:单主机,多块磁盘 (erasure code)
以下示例在多块磁盘上托管三个租户。
minio --config-dir ~/tenant1 server --address :9001 /disk1/data/tenant1 /disk2/data/tenant1 /disk3/data/tenant1 /disk4/data/tenant1
minio --config-dir ~/tenant2 server --address :9002 /disk1/data/tenant2 /disk2/data/tenant2 /disk3/data/tenant2 /disk4/data/tenant2
minio --config-dir ~/tenant3 server --address :9003 /disk1/data/tenant3 /disk2/data/tenant3 /disk3/data/tenant3 /disk4/data/tenant3
分布式部署
要在分布式环境中托管多个租户,同时运行多个分布式Minio实例。
To host multiple tenants in a distributed environment, run several distributed Minio instances concurrently.
示例3 : 多主机,多块磁盘 (erasure code)
以下示例在一个4节点集群中托管三个租户。在4个节点里都执行下列命令:
export MINIO_ACCESS_KEY=<TENANT1_ACCESS_KEY>
export MINIO_SECRET_KEY=<TENANT1_SECRET_KEY>
minio --config-dir ~/tenant1 server --address :9001 http://192.168.10.11/data/tenant1 http://192.168.10.12/data/tenant1 http://192.168.10.13/data/tenant1 http://192.168.10.14/data/tenant1
export MINIO_ACCESS_KEY=<TENANT2_ACCESS_KEY>
export MINIO_SECRET_KEY=<TENANT2_SECRET_KEY>
minio --config-dir ~/tenant2 server --address :9002 http://192.168.10.11/data/tenant2 http://192.168.10.12/data/tenant2 http://192.168.10.13/data/tenant2 http://192.168.10.14/data/tenant2
export MINIO_ACCESS_KEY=<TENANT3_ACCESS_KEY>
export MINIO_SECRET_KEY=<TENANT3_SECRET_KEY>
minio --config-dir ~/tenant3 server --address :9003 http://192.168.10.11/data/tenant3 http://192.168.10.12/data/tenant3 http://192.168.10.13/data/tenant3 http://192.168.10.14/data/tenant3