Minio分布式集群搭建

IT
IT
IT
400
文章
1
评论
2020年5月15日13:52:32 评论 33,158 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
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
Teambition 网盘与阿里云盘数据合并说明 CentOS

Teambition 网盘与阿里云盘数据合并说明

前言 Teambition 团队是阿里巴巴的一个创新产品团队,除了你熟悉的 Teambition App,「阿里云盘」也是我们的作品,它们都属于阿里云正在打造的新一代「云服务」。 过去几个月,我们投入...
CentOS8安装Jenkins CentOS

CentOS8安装Jenkins

简述 Jenkins 是最流行的,开源的,基于 Java 的自动化服务器,它允许你很容易的设置一个持续集成和持续发布的管道。 持续集成 (CI)是一个 DevOps 实践。当团队成员正常提交代码到版本...
使用vmware安装VMware vSphere Hypervisor7.0服务端 CentOS

使用vmware安装VMware vSphere Hypervisor7.0服务端

创建虚拟机 安装 进入安装界面 敲击回车按F11 如下提示是:安装在哪一个硬盘里,根据自己的需求进行安装即可。博主直接默认安装在第一块硬盘上,直接回车。 默认即可,敲击回车 设置一个VMware的密码...

您必须才能发表评论!