环境
# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
服务器
192.168.30.195 node1
192.168.30.135 node2
目录
本集群由2台服务器构成(官方推荐集群最小4台服务器),每个服务器上挂载两个磁盘目录,最小数据挂载点为4个
数据存储目录(两台机器都创建)
node1# mkdir -p /home/data1
node1#mkdir -p /home/data2
集群配置文件目录
node1#mkdir -p /etc/minio
node2#mkdir -p /etc/minio
编写集群启动脚本(所有节点配置文件相同)
[root@node1 ~]# cat /opt/minio/run.sh
#!/bin/bash
export MINIO_ACCESS_KEY=Minio
export MINIO_SECRET_KEY=Test123456
/opt/minio/minio server --config-dir /etc/minio \
http://192.168.30.195/home/data1 http://192.168.30.195/home/data2 \
http://192.168.30.135/home/data1 http://192.168.30.135/home/data2 \
节点2
[root@node2 ~]# cat /opt/minio/run.sh
#!/bin/bash
export MINIO_ACCESS_KEY=Minio
export MINIO_SECRET_KEY=Test123456
/opt/minio/minio server --config-dir /etc/minio \
http://192.168.30.195/home/data1 http://192.168.30.195/home/data2 \
http://192.168.30.135/home/data1 http://192.168.30.135/home/data2 \
其中,“MINIO_ACCESS_KEY”为用户名,“MINIO_SECRET_KEY”为密码,密码不能设置过于简单,不然minio会启动失败,“–config-dir”指定集群配置文件目录
编写服务脚本(所有节点)
node1 和 node2 一样
[root@node1 ~]# cat /usr/lib/systemd/system/minio.service
[Unit]
Description=Minio service
Documentation=https://docs.minio.io/
[Service]
WorkingDirectory=/opt/minio/
ExecStart=/opt/minio/run.sh
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
添加脚本权限
[root@node1 ~]# chmod +x /usr/lib/systemd/system/minio.service
[root@node2 ~]# chmod +x /usr/lib/systemd/system/minio.service
启动测试
将minio上传到/opt/minio目录下并赋予权限
[root@node1 ~]# cd /opt/minio/
[root@node1 minio]#wget https://dl.minio.io/server/minio/release/linux-amd64/minio
[root@node1 minio]#chmod +x minio
[root@node1 minio]#chmod +x /opt/minio/run.sh
node2 同上操作;
启动
[root@node1 minio]# systemctl daemon-reload
[root@node1 minio]# systemctl start minio
[root@node1 minio]# systemctl enable minio
Created symlink from /etc/systemd/system/multi-user.target.wants/minio.service to /usr/lib/systemd/system/minio.service.
node2 同上操作;
测试
浏览器输入集群任意节点地址+9000端口,即可访问minio,用户名密码为前面设置的“MINIO_ACCESS_KEY”和“MINIO_SECRET_KEY”,可创建“bucket”并上传文件测试
nginx代理
一定要写上 Host Header 的代理,否则请求签名两边对不上。