微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Minio集群搭建

部署前说明
安装前需要再添加一个磁盘后将磁盘挂载到/opt/minio目录,minio集群部署需要独占磁盘分区,不能使用文件夹代替。
最开始直接在/opt/minio目录下面创建data启动时报错,后面挂载一个磁盘后就可以了,报错如图:

在这里插入图片描述


运行分布式 MinIO 实例的服务器时间差不应超过15分钟。
所有运行分布式 MinIO 设置的节点都是同构的,即相同的操作系统、相同数量的磁盘和相同的网络互连 。
MinIO 的节点需要具有相同的访问密钥和秘密密钥才能连接,即access key 和 MINIO secret key 都要一样。

1.创建目录

mkdir -p /opt/minio/{run,data} && mkdir -p /etc/minio
cd /opt/minio/run

2.挂载新的硬盘
挂载/opt/minio目录,具体挂载参考 linux 挂载新的硬盘

在这里插入图片描述


3.下载Minio到/opt/minio/run

wget https://dl.min.io/server/minio/release/linux-amd64/minio

4.创建启动脚本文件

vim /opt/minio/run/run.sh

#Minio认9000端口,在配置文件中加入–address “127.0.0.1:9029” 可更改端口
#注意 :
#MINIO_ROOT_USER:用户名,长度最小是5个字符
#MINIO_ROOT_PASSWORD:密码,密码不能设置过于简单,不然minio会启动失败,长度最小是8个字符
#–config-dir:指定集群配置文件目录

#!/bin/bash
export MINIO_ROOT_USER=admin
export MINIO_ROOT_PASSWORD=adminbfd123
/opt/minio/run/minio server --config-dir /etc/minio \
        --address "0.0.0.0:9029" --console-address ":9000" \
        http://172.16.11.1:9029/opt/minio/data \
        http://172.16.11.2:9029/opt/minio/data  > minio_server.log

5.创建停止脚本文件

vim /opt/minio/run/stop.sh
#!/bin/bash
#MinIO停止脚本
ps -ef | grep  minio | grep -v 'grep' | awk '{print $2}'| xargs kill -9
 
if $? != 0;then
          echo "minio service stop Failed."
            exit 1
fi

6.创建Minio.server

vim /etc/systemd/system/minio.service
[Unit]
Description=Minio service
Documentation=https://docs.minio.io/
 
[Service]
WorkingDirectory=/opt/minio/run/
ExecStart=/opt/minio/run/run.sh
ExecStop=/opt/minio/run/stop.sh
 
Restart=on-failure
RestartSec=5
 
[Install]
WantedBy=multi-user.target

7.权限修改

chmod +x /etc/systemd/system/minio.service && chmod +x /opt/minio/run/minio && chmod +x /opt/minio/run/run.sh && chmod +x /opt/minio/run/stop.sh

8.启动集群

systemctl daemon-reload
systemctl start minio
systemctl enable minio
systemctl status minio.service

9.配置Nginx代理
生产环境一般都需要使用域名做访问,所以选择Nginx
可以在其中一台部署好Nginx,也可以单独一台做Nginx
我这里选择在172.16.11.1配置Nginx

vim   minio-cluster.conf 
upstream minio_console {
    server 172.16.11.1:9000 max_fails=3 fail_timeout=5s;
    server 172.16.11.2:9000 max_fails=3 fail_timeout=5s;

}
upstream minio_api {
    server 172.16.11.1:9029 max_fails=3 fail_timeout=5s;
    server 172.16.11.2:9029 max_fails=3 fail_timeout=5s;

}

server {
    listen          80;
    server_name     cons.minio.com;
    location / {
        proxy_next_upstream     http_500 http_502 http_503 http_504 error timeout invalid_header;
        proxy_set_header        Host  $host;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass              http://minio_console;
        expires                 0;
    }
}

server {
    listen          80;
    server_name     api.minio.com;

    location / {
        proxy_next_upstream     http_500 http_502 http_503 http_504 error timeout invalid_header;
        proxy_set_header        Host  $host;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass              http://minio_api;
        expires                 0;
    }
}

重载Nginx配置,由于这里是使用了测试域名,所以需要本机host文件做一下指向,把两个测试域名指向到172.16.11.1.

在这里插入图片描述


10.访问测试

在这里插入图片描述


输入账号密码,账号密码在刚才配置的启动文件里面 run.sh。

登录之后,查看集群是否成功。

在这里插入图片描述


这里查看到现在是两台服务器,说明集群已经部署完成。

原文地址:https://www.jb51.cc/wenti/3281987.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐