当前位置: 首页 > news >正文

Minio集群部署

Minio集群部署

资源规划

IP服务规划配置
192.168.116.138minio-116核32G磁盘10T
192.168.116.139minio-216核32G磁盘10T
192.168.116.140minio-316核32G磁盘10T
192.168.116.141minio-416核32G磁盘10T
192.168.116.128nginx代理8核16G磁盘500G

基本环境配置

下面命令minio4台设备都要执行
[root@minio-1 ~]# tee >> /etc/hosts << EOF
192.168.116.138 minio-1
192.168.116.139 minio-2
192.168.116.140 minio-3
192.168.116.141 minio-4
EOF

[root@minio-1 ~]# mkdir /home/minio/{app,config,data,logs} -p 

下载文件

[root@minio-1 ~]# cd /home/minio/app
[root@minio-1 app]# wget https://dl.min.io/server/minio/release/linux-amd64/minio

创建启动命令

[root@minio-1 app]# tee > run.sh << EOF
#!/bin/bash
export MINIO_ROOT_USER=admin
export MINIO_ROOT_PASSWORD=admin@123
nohup /home/minio/app/minio server --config-dir /home/minio/config --console-address ":9001" \
http://minio-1:9000/home/minio/data http://minio-2:9000/home/minio/data http://minio-3:9000/home/minio/data http://minio-4:9000/home/minio/data > /home/minio/logs/start.log 2>&1 &
echo "MinIO started with PID: $!"
EOF

[root@minio-1 app]# chmod a+x  run.sh 

# 批量发送文件与启动脚本到minio2-3-4服务器
[root@minio-1 app]# for i in 139 140 141; do scp minio run.sh root@192.168.116.$i:/home/minio/app ; done


# 启动minio服务
[root@minio-1 app]# bash run.sh 
[root@minio-2 app]# bash run.sh 
[root@minio-3 app]# bash run.sh 
[root@minio-4 app]# bash run.sh 

配置负载均衡

# 安装nginx
192.168.116.128 机器
[root@nginx-minio ~]# yum -y install nginx

# 写入负载均衡配置文件
[root@nginx-minio conf.d]# cat minio-cluster.conf 
upstream minio-console {
    server 192.168.116.138:9001 max_fails=3 fail_timeout=5s;
    server 192.168.116.139:9001 max_fails=3 fail_timeout=5s;
    server 192.168.116.140:9001 max_fails=3 fail_timeout=5s;
    server 192.168.116.141:9001 max_fails=3 fail_timeout=5s;
}
upstream minio-api {
    server 192.168.116.138:9000 max_fails=3 fail_timeout=5s;
    server 192.168.116.139:9000 max_fails=3 fail_timeout=5s;
    server 192.168.116.140:9000 max_fails=3 fail_timeout=5s;
    server 192.168.116.141:9000 max_fails=3 fail_timeout=5s;
}

server {
    listen          9001;   #或者用80端口也可以
    server_name     _;    #可以用域名
    access_log      /home/minio/logs/minio.com_access.log main;
    error_log       /home/minio/logs/minio.com_error.log warn;
    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          9000;
    server_name     _;   #可以用域名
    access_log      /home/minio/logs/minio.com_access.log main;
    error_log       /home/minio/logs/minio.com_error.log warn;

    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
[root@nginx-minio conf.d]# systemctl  start nginx 

# 检查集群是否健康 
# 默认账号密码 admin/amdin@123
访问http://192.168.116.128:9001/tools/metrics

相关文章:

  • 大数据在金融服务中的中阶应用:从洞察到决策的技术进阶
  • 蓝桥杯 2023 省赛 B 组 I 题 - 景区导游题解(LCA最近公共祖先)
  • 水下成像机理分析
  • 输电线路在线监测通信规约,即I1协议
  • 医院信息系统建设:大数据平台、集成平台、数据治理平台,该如何选择?
  • 常用shell命令
  • NodeTextFileCollectorScrapeError 报警原因及解决方法
  • Linux中的权限管理(附加详细实验示例)
  • swe-bench环境安装踩坑
  • 如何利用 AI 进行 A/B 测试的优化?
  • 【设计模式】过滤器模式
  • 手机显示5GA图标的条件
  • Oracle中文一二三四排序【失败】
  • Linux防火墙的iptables命令示例与详细解释
  • deepseek v3-0324实现数学方程式绘制曲线功能
  • Redis-14.在Java中操作Redis-Spring Data Redis使用方式-操作列表类型的数据
  • 西门子TCP通讯过程中硬件连接突然断开
  • 轻帆云智能ITSM应用最佳实践,助力IT共享服务中心高效运营
  • Redis:集群
  • 广告推荐算法:COSMO算法与A9算法的对比
  • 国务院安委办、应急管理部进一步调度部署“五一”假期安全防范工作
  • 北方旱情持续,水利部:大中型灌区春灌总体有保障
  • 复星医药换帅:陈玉卿接棒吴以芳任董事长,吴以芳改任复星国际执行总裁
  • 习近平就伊朗发生严重爆炸事件向伊朗总统佩泽希齐扬致慰问电
  • 第五届全国医院人文管理路演在昆山举办:患者体验才是温度计
  • 朝鲜派兵库尔斯克是否有助于解决乌克兰危机?外交部回应