分布式minIO 2个节点8个磁盘搭建 (测试使用;生产环境中建议至少4个节点4个磁盘;单租户最后可搭建16个节点|16个磁盘)
192.168.1.22
192.168.1.23
分别在22,23服务器上搭建minio服务
对22服务器进行设置
1、wget http://dl.minio.org.cn/server/minio/release/linux-amd64/minio
2、chmod +x minio
3、创建4个存储磁盘(文件夹)
cd /
mkdir disk2
chmod 777 disk2
cd disk2
mkdir file{1,2,3,4}
chmod 777 file{1,2,3,4}
4、在usr/local下创建一个Minio环境
mkdir /usr/local/minio
touch minio.log
chmod +x minio.log
mkdir /user/local/minio/bin
cp minio /user/local/minio/bin
5、创建启动服务的脚本 run.sh
vim /usr/local/minio/run.sh
#***********************run.sh启动脚本内容 开始*********************************
#!/bin/bash
export MINIO_ACCESS_KEY=minio
export MINIO_SECRET_KEY=minio123456
/usr/local/minio/bin/minio server \
http://192.168.1.22/disk2/file{1,2,3,4} \
http://192.168.1.23/disk2/file{1,2,3,4}> /usr/local/minio/minio.log
#***********************启动脚本内容 结束*********************************
chmod +x /usr/local/minio/run.sh
6、创建systemctl系统服务minio.service
vim /usr/lib/systemd/system/minio.service
#***********************minio.service脚本2内容 开始*********************************
[Unit]
Description=Minio
Documentation=https://docs.minio.io/
Wants=network-online.target
After=network-online.target
[Service]
WorkingDirectory=/usr/local/minio/
ExecStart=/usr/local/minio/run.sh
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
#***********************minio.service脚本2内容 结束*********************************
chmod +x /usr/lib/systemd/system/minio.service
7、systemctl服务器设置
重载启动服务项
systemctl daemon-reload
开启服务支持
systemctl enable minio.service
启动服务,并检查启动情况
systemctl start minio && systemctl status minio
systemctl stop minio #停止服务
systemctl restart minio #重启服务
对23服务器进行设置
# 两者的配置方式基本相同,唯一不之处在 run.sh
# 创建启动脚本 run.sh
# 创建启动脚本 run.sh
vim /usr/local/minio/run.sh
#***********************run.sh启动脚本内容 开始*********************************
#!/bin/bash
export MINIO_ACCESS_KEY=minio
export MINIO_SECRET_KEY=minio123456
/usr/local/minio/bin/minio server \
http://192.168.1.23/disk2/file{1,2,3,4} \
http://192.168.1.22/disk2/file{1,2,3,4}> /usr/local/minio/minio.log
#***********************启动脚本内容 结束*********************************
chmod +x /usr/local/minio/run.sh
nginx配置
此处的nginx我配置在23服务器上,也可以配置到另一个服务器(非22,23)来做负载均衡
vim /etc/nginx/conf.d/minio.conf
#***********************minio.conf内容 开始*********************************
upstream minio {
server 192.168.1.22:9000 weight=10 max_fails=2 fail_timeout=30s;
server 192.168.1.23:9000 weight=10 max_fails=2 fail_timeout=30s;
# server 192.168.31.4:9000 weight=10 max_fails=2 fail_timeout=30s;
# server 192.168.31.5:9000 weight=10 max_fails=2 fail_timeout=30s;
}
server {
listen 9632;
server_name 192.168.1.23;
charset utf-8;
default_type text/html;
location /{
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
client_body_buffer_size 10M;
client_max_body_size 10G;
proxy_buffers 1024 4k;
proxy_read_timeout 300;
proxy_next_upstream error timeout http_404;
proxy_pass http://minio;
}
}
#***********************minio.conf内容 开始*********************************
nginx -s reload
开放相关端口 9632、9000
firewall-cmd --zone=public --add-port=9632/tcp --permanent
firewall-cmd --zone=public --remove-port=9632/tcp --permanent
firewall-cmd --reload # 配置立即生效
如果不想使用Minio默认的9000端口,可以在启动服务的时候 --address ip:端口"
# 修改启动脚本run.sh
/usr/local/minio/bin/minio server --address 0.0.0.0:4562 \
http://192.168.1.22/disk2/file{1,2,3,4} \
http://192.168.1.23/disk2/file{1,2,3,4}> /usr/local/minio/minio.log