设置 4 节点分布式 Minio 集群

需要在所有4 个实例上应用以下步骤。

切换到root用户,挂载二级盘到/data目录:

$ sudo su 
$ mkdir /data
$ mkfs.xfs /dev/xvdb
$ echo "/dev/xvdb /data xfs defaults,noatime,nofail 0 0" >> /etc/fstab
$ mount -a

验证磁盘是否已挂载:

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      7.7G  1.3G  6.5G  17% /
/dev/xvdb        20G   53M   20G   1% /data

在所有 4 个 EC2 实例上安装磁盘后,收集私有 IP 地址并在所有 4 个实例上设置主机文件(在我的情况下):

$ cat > /etc/hosts << EOF
172.31.38.98    minio-1
172.31.39.214    minio-2
172.31.37.208    minio-3
172.31.42.115    minio-4
127.0.0.1     localhost
EOF

安装 Minio

在每个节点上安装 minio:

$ apt update && apt install wget -y
$ wget -O /usr/local/bin/minio https://dl.minio.io/server/minio/release/linux-amd64/minio
$ chmod +x /usr/local/bin/minio

在所有节点上安装 minio 后,在节点上创建 systemd 单元文件:

$ cat > /lib/systemd/system/minio.service << EOF
[Unit]
Description=minio
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio

[Service]
WorkingDirectory=/usr/local/
User=root
Group=root
EnvironmentFile=/etc/default/minio
ExecStart=/usr/local/bin/minio server \$MINIO_OPTS
Restart=always
LimitNOFILE=65536
TimeoutStopSec=infinity
SendSIGKILL=no

[Install]
WantedBy=multi-user.target
EOF

就我而言,我将我的访问密钥设置为AKaHEgQ4II0S7BjT6DjAUDA4BX并将我的秘密密钥SKFzHq5iDoQgF7gyPYRFhzNMYSvY6ZFMpH设置为,因此我将其设置为 minio 的默认配置:

$ cat > /etc/default/minio << EOF
MINIO_OPTS="http://minio-1:9000/data http://minio-2:9000/data http://minio-3:9000/data http://minio-4:9000/data"
MINIO_ACCESS_KEY="AKaHEgQ4II0S7BjT6DjAUDA4BX"
MINIO_SECRET_KEY="SKFzHq5iDoQgF7gyPYRFhzNMYSvY6ZFMpH"
EOF

将上述步骤应用于所有节点后,重新加载 systemd 守护进程,在启动时启用该服务并在所有节点上启动该服务:

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

转到任何节点并运行状态以查看 minio 是否已启动:

$ systemctl status minio.service
  minio.service - minio
   Loaded: loaded (/lib/systemd/system/minio.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-10-09 17:47:15 UTC; 1min 16s ago
     Docs: https://docs.min.io
Main PID: 2089 (minio)
    Tasks: 8 (limit: 1152)
   CGroup: /system.slice/minio.service
           └─2089 /usr/local/bin/minio server http://minio-1:9000/data http://minio-2:9000/data http://minio-3:9000/data http://minio-4:9000/data


Oct 09 17:47:24 ip-172-31-38-98 minio[2089]: Status:         4 Online, 0 Offline.
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]: Endpoint:  http://172.31.38.98:9000  http://127.0.0.1:9000
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]: Browser Access:
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]:    http://172.31.38.98:9000  http://127.0.0.1:9000
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]: Object API (Amazon S3 compatible):
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]:    Go:         https://docs.min.io/docs/golang-client-quickstart-guide
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]:    Java:       https://docs.min.io/docs/java-client-quickstart-guide
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]:    Python:     https://docs.min.io/docs/python-client-quickstart-guide
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]:    JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide
Oct 09 17:47:24 ip-172-31-38-98 minio[2089]:    .NET:       https://docs.min.io/docs/dotnet-client-quickstart-guide

如您所见,所有 4 个节点都已启动。

Minio 网页界面

获取您的节点之一的公共 IP 并在端口 9000 上访问它:

9023CA3B-E2FC-4A30-A815-43FD6D2B683C

创建您的第一个存储桶将如下所示:

86424AFD-102A-4BF7-B83C-0EDAC1C85F6D

猜你喜欢

转载自blog.csdn.net/allway2/article/details/121859595