在三台服务器上使用docker搭建minio集群
Minio集群
参考-->minio
所有节点配置主机名解析:
cat >> /etc/hosts << EOF
192.168.86.58 minio-1
192.168.86.19 minio-2
192.168.86.43 minio-3
EOF
使用docker run运行minio
部署minio集群,3个节点每个节点挂载2个目录
minio-1节点执行
docker run -d --name minio \
--restart=always --net=host \
-e MINIO_ACCESS_KEY=minio \
-e MINIO_SECRET_KEY=minio123 \
-v minio-data1:/data1 \
-v minio-data2:/data2 \
minio/minio server \
--address 192.168.86.58:9000 \
http://minio-{1...3}/data{1...2}
minio-2节点执行
docker run -d --name minio \
--restart=always --net=host \
-e MINIO_ACCESS_KEY=minio \
-e MINIO_SECRET_KEY=minio123 \
-v minio-data1:/data1 \
-v minio-data2:/data2 \
minio/minio server \
--address 192.168.86.19:9000 \
http://minio-{1...3}/data{1...2}
minio-3节点执行
docker run -d --name minio \
--restart=always --net=host \
-e MINIO_ACCESS_KEY=minio \
-e MINIO_SECRET_KEY=minio123 \
-v minio-data1:/data1 \
-v minio-data2:/data2 \
minio/minio server \
--address 192.168.92.12:9000 \
http://minio-{1...3}/data{1...2}
说明:docker部署集群模式时必须指定–net=host参数,使用主机网络,使用端口映射无法创建集群。
使用docker-compose部署minio
都要先更改/etc/hosts中的域名解析
在192.168.86.58上的docker-compose
version: "3.2"
services:
minio3:
container_name: minio
image: minio/minio:RELEASE.2020-08-08T04-50-06Z
restart: always
volumes:
- ./minio-data1:/data1
- ./minio-data2:/data2
ports:
- "9000:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio-{1...3}/data{1...2}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
interval: 30s
timeout: 20s
retries: 3
network_mode: host
其他两台的配置同上