下面给你一个**Linux 下 MinIO 集群部署(分布式模式)**的实用指南,适用于 生产环境。
假设你有 4 台服务器,每台 1 块或多块磁盘。
| 节点 | IP | 数据盘 |
|---|---|---|
| node1 | 192.168.1.11 | /data/minio1 |
| node2 | 192.168.1.12 | /data/minio1 |
| node3 | 192.168.1.13 | /data/minio1 |
| node4 | 192.168.1.14 | /data/minio1 |
✅ 官方建议:至少 4 个节点(避免脑裂)
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
mv minio /usr/local/bin/
验证:
minio --version
mkdir -p /data/minio1
chown -R $USER:$USER /data/minio1
如果是多盘:
mkdir -p /data/minio1 /data/minio2
cat > /usr/local/bin/start-minio.sh << 'EOF'
#!/bin/bash
export MINIO_ROOT_USER=admin
export MINIO_ROOT_PASSWORD=Admin@123456
minio server \
http://192.168.1.11/data/minio1 \
http://192.168.1.12/data/minio1 \
http://192.168.1.13/data/minio1 \
http://192.168.1.14/data/minio1 \
--console-address ":9001"
EOF
chmod +x /usr/local/bin/start-minio.sh
✅ 所有节点执行相同的脚本
nohup /usr/local/bin/start-minio.sh > /data/minio1/minio.log 2>&1 &
浏览器访问:
http://任意节点IP:9001
控制台显示 4 个节点在线 即成功。
cat > /etc/systemd/system/minio.service << 'EOF'
[Unit]
Description=MinIO
After=network.target
[Service]
Environment="MINIO_ROOT_USER=admin"
Environment="MINIO_ROOT_PASSWORD=Admin@123456"
ExecStart=/usr/local/bin/minio server \
http://192.168.1.11/data/minio1 \
http://192.168.1.12/data/minio1 \
http://192.168.1.13/data/minio1 \
http://192.168.1.14/data/minio1 \
--console-address ":9001"
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable minio
systemctl start minio
upstream minio {
server 192.168.1.11:9000;
server 192.168.1.12:9000;
server 192.168.1.13:9000;
server 192.168.1.14:9000;
}
server {
listen 80;
server_name minio.example.com;
location / {
proxy_pass http://minio;
}
}
✅ 所有节点:
❌ 不要:
如果你告诉我:
我可以给你定制版部署方案。