分布式minio集群部署
前提:生产环境必须有4台机器,每台机器最少一块磁盘
创建目录
mkdir -p /data/minio/{bin,data,logs}
下载minio程序
cd /data/minio/bin
wget https://dl.minio.org.cn/server/minio/release/linux-amd64/minio
chmod +x minio
编辑启动脚本
#!/bin/bash
# 控制台用户名
export MINIO_ROOT_USER=minioadmin
# 控制台密码
export MINIO_ROOT_PASSWORD=minioadmin
/data/minio/bin/minio server --config-dir /etc/minio --console-address ":9001" \
http://172.15.3.12:9000/data/minio/data \
http://172.15.3.13:9000/data/minio/data \
http://172.15.3.14:9000/data/minio/data \
http://172.15.3.15:9000/data/minio/data > /data/minio/logs/minio.log 2>&1 &
赋权
chmod +x /data/minio/bin/start.sh
启动集群
/data/minio/bin/start.sh
使用nginx负载均衡
cat minio.conf
upstream minio_console {
server 172.15.3.12:9001 max_fails=3 fail_timeout=5s;
server 172.15.3.13:9001 max_fails=3 fail_timeout=5s;
server 172.15.3.14:9001 max_fails=3 fail_timeout=5s;
server 172.15.3.15:9001 max_fails=3 fail_timeout=5s;
}
upstream minio_api {
server 172.15.3.12:9000 max_fails=3 fail_timeout=5s;
server 172.15.3.13:9000 max_fails=3 fail_timeout=5s;
server 172.15.3.14:9000 max_fails=3 fail_timeout=5s;
server 172.15.3.15:9000 max_fails=3 fail_timeout=5s;
}
server {
listen 9898;
server_name localhost;
location / {
proxy_pass http://minio_console;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_next_upstream http_500 http_502 http_503 http_504 error timeout invalid_header;
expires 0;
}
}
server {
listen 9897;
server_name localhost;
location / {
proxy_pass http://minio_api;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_next_upstream http_500 http_502 http_503 http_504 error timeout invalid_header;
expires 0;
}
}