Minio分布式集群搭建

IT
IT
IT
285
文章
1
评论
2020年5月15日13:52:32 评论 888 3396字阅读11分19秒

环境

[root@minio1 ~]# cat /etc/redhat-release 
CentOS Linux release 7.3.1611 (Core)

服务器

192.168.1.138 
192.168.1.139

目录

本集群由2台服务器构成(官方推荐集群最小4台服务器),每个服务器上挂载两个磁盘目录,最小数据挂载点为4个

  • 数据存储目录(两台机器都创建)
[root@minio1 ~]# mkdir -p /home/data1
[root@minio1 ~]# mkdir -p /home/data2
[root@minio2 ~]# mkdir -p /home/data1
[root@minio2 ~]# mkdir -p /home/data2
  • 启动脚本目录

 

[root@minio1 ~]# mkdir -p /opt/minio
[root@minio2 ~]# mkdir -p /opt/minio
  • 集群配置文件目录
[root@minio1 ~]# mkdir -p /etc/minio
[root@minio2 ~]# mkdir -p /etc/minio

编写集群启动脚本(所有节点配置文件相同)

[root@minio1 ~]# 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.1.138/home/data1 http://192.168.1.138/home/data2 \
http://192.168.1.139/home/data1 http://192.168.1.139/home/data2 \

节点2

[root@minio2 ~]# 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.1.138/home/data1 http://192.168.1.138/home/data2 \
http://192.168.1.139/home/data1 http://192.168.1.139/home/data2 \

其中,“MINIO_ACCESS_KEY”为用户名,“MINIO_SECRET_KEY”为密码,密码不能设置过于简单,不然minio会启动失败,“–config-dir”指定集群配置文件目录

编写服务脚本(所有节点)

[root@minio1 ~]# 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

节点2

[root@minio2 ~]# vim /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@minio1 ~]# chmod +x /usr/lib/systemd/system/minio.service

[root@minio2 ~]# chmod +x /usr/lib/systemd/system/minio.service

启动测试

将minio上传到/opt/minio目录下并赋予权限

[root@minio1 ~]# cd /opt/minio/
[root@minio1 minio]# wget https://dl.minio.io/server/minio/release/linux-amd64/minio


[root@minio1 minio]# chmod +x minio
[root@minio1 minio]# chmod +x /opt/minio/run.sh

节点2

[root@minio2 ~]# cd /opt/minio/
[root@minio2 minio]# wget https://dl.minio.io/server/minio/release/linux-amd64/minio


[root@minio2 minio]# chmod +x minio
[root@minio2 minio]# chmod +x /opt/minio/run.sh

启动

[root@minio1 minio]# systemctl daemon-reload
[root@minio1 minio]# systemctl start minio
[root@minio1 minio]# systemctl enable minio
Created symlink from /etc/systemd/system/multi-user.target.wants/minio.service to /usr/lib/systemd/system/minio.service.

节点2

[root@minio2 minio]# systemctl daemon-reload
[root@minio2 minio]# systemctl start minio
[root@minio2 minio]# systemctl enable minio
Created symlink from /etc/systemd/system/multi-user.target.wants/minio.service to /usr/lib/systemd/system/minio.service.

测试

浏览器输入集群任意节点地址+9000端口,即可访问minio,用户名密码为前面设置的“MINIO_ACCESS_KEY”和“MINIO_SECRET_KEY”,可创建“bucket”并上传文件测试

http://192.168.1.138:9000/minio/login

Minio分布式集群搭建

nginx代理

一定要写上 Host Header 的代理,否则请求签名两边对不上。

[root@uploadservice1 vhost]# cat minio.conf 
upstream minio.gr-data.cn {
    server 192.168.2.234:9000 weight=5 ;
    server 192.168.2.238:9000 weight=5 ;

    }
    server {
    listen 80;
    server_name minio.gr-data.cn;
     client_max_body_size 20M;
    charset utf-8;
    location /health {
    proxy_pass http://minio.gr-data.cn/health;
    }

    location / {
    proxy_set_header Host $http_host;
    client_body_buffer_size 10M;
    client_max_body_size 10G;
    proxy_buffers 1024 4k;
    proxy_read_timeout 300;
    proxy_pass http://minio.gr-data.cn/;
    }

   location /status {
   stub_status;
   }
error_page 500 502 503 504 /50x.html;
   location = /50x.html {
    root html;
    }

   }

 

 

更多参考地址 https://www.cnblogs.com/rongfengliang/p/9197315.html

继续阅读
  • 我的QQ
  • QQ扫一扫
  • weinxin
  • 我的头条
  • 头条扫一扫
  • weinxin
IT
  • 本文由 发表于 2020年5月15日13:52:32
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
Install CentOS

Install

自动安装 满足自动安装的必要条件(centos7系列系统,cpu2核以上,内存4GB以上,使用root用户执行。 安装 # cd /opt # yum -y install git # git clo...
禅道 CentOS

禅道

Docker方式部署禅道 使用博主自己的初始化脚本和自动安装docker # git clone https://github.com/cncentoscn/Centos7 # cd Centos7/...