minio分佈式集羣的詳細搭建

一、基礎環境

操作系統:CentOS 7.3

Minio下載  

將下載好的minio移動到 /opt/minio/文件夾下 或 者進入到/opt/minio/文件夾下使用下面的命令下載:

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

二、準備工作

2.1、機器資源

192.168.129.133  掛載磁盤路徑:/data/minio_data

192.168.129.135  掛載磁盤路徑:/data/minio_data

192.168.129.136  掛載磁盤路徑:/data/minio_data

192.168.129.137  掛載磁盤路徑:/data/minio_data

生成環境強烈建議最少四臺機器,這也是官方的建議要求,這樣的話就可以做到掛掉一臺機器集羣依然可以讀寫,掛掉兩臺機器集羣依然可讀,本文僅以兩臺機器爲例子說明如何搭建集羣   

2.2、創建相關目錄(所有節點,上面四臺機器都創建相同路徑的文件夾)

[root@localhost /]# mkdir /data/minio_data/

注意:需要將新建的目錄掛在到對應的磁盤下,磁盤不掛在好,集羣啓動會報錯:找不到磁盤,如下:

[root@localhost /]# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 475M     0  475M   0% /dev
tmpfs                    487M     0  487M   0% /dev/shm
tmpfs                    487M  7.7M  479M   2% /run
tmpfs                    487M     0  487M   0% /sys/fs/cgroup
/dev/mapper/centos-root   17G  7.4G  9.6G  44% /
/dev/sda1               1014M  137M  878M  14% /boot
tmpfs                     98M     0   98M   0% /run/user/0
[root@localhost /]# mount /dev/sda1 /data/minio_data/
mount: /dev/sda1 is already mounted or /data/minio_data busy
       /dev/sda1 is already mounted on /boot
       /dev/sda1 is already mounted on /data/minio_data
[root@localhost /]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /data/minio_data
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sr0              11:0    1  4.4G  0 rom  
[root@localhost /]#

 

創建啓動腳本目錄

[root@localhost /]# mkdir /opt/minio/

三、編寫集羣啓動腳本(所有節點配置文件相同)

腳本如下:

[root@localhost /]# vim /opt/minio/run.sh 

#!/bin/bash
export MINIO_ACCESS_KEY=Xxyminio
export MINIO_SECRET_KEY=Test123456

/opt/minio/minio server \
http://192.168.129.133/data/minio_data/data1 http://192.168.129.135/data/minio_data/data1 \
http://192.168.129.136/data/minio_data/data1 http://192.168.129.137/data/minio_data/data1

其中,“MINIO_ACCESS_KEY”爲用戶名,“MINIO_SECRET_KEY”爲密碼,密碼不能設置過於簡單,不然minio會啓動失敗

創建好的/opt/minio/目錄下的結構如下圖:

四、編寫服務腳本(所有節點)

[root@localhost minio]# 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

其中,“WorkingDirectory”爲啓動腳本目錄,“ExecStart”爲指定集羣啓動腳本

五、啓動測試

5.1、將下載好的minio文件賦予權限

[root@localhost minio]# chmod +x /opt/minio/minio

5.2、賦予啓動文件權限

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

5.3、依次啓動每個服務器的minio

[root@localhost minio]# systemctl daemon-reload
[root@localhost minio]# 
[root@localhost minio]# systemctl start minio
[root@localhost minio]# 
[root@localhost minio]# systemctl status minio
● minio.service - Minio service
   Loaded: loaded (/usr/lib/systemd/system/minio.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-04-22 10:32:54 CST; 44s ago
     Docs: https://docs.minio.io/
 Main PID: 1569 (run.sh)
   CGroup: /system.slice/minio.service
           ├─1569 /bin/bash /opt/minio/run.sh
           └─1570 /opt/minio/minio server http://192.168.129.133/data/minio_data/data1 http://192.168.129.135/data/minio_data/data1 http://192....

Apr 22 10:32:54 localhost.localdomain systemd[1]: Started Minio service.
Apr 22 10:33:17 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 18s)
Apr 22 10:33:20 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 21s)
Apr 22 10:33:23 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 24s)
Apr 22 10:33:26 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 27s)
Apr 22 10:33:29 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 30s)
Apr 22 10:33:32 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 33s)
Apr 22 10:33:35 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 36s)
Apr 22 10:33:38 localhost.localdomain run.sh[1569]: Waiting for a minimum of 2 disks to come online (elapsed 39s)
[root@localhost minio]# 

 

5.4、測試

瀏覽器輸入集羣任意節點地址+9000端口,即可訪問minio,用戶名密碼爲前面設置的“MINIO_ACCESS_KEY”和“MINIO_SECRET_KEY”,可創建“bucket”並上傳文件測試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章