天天看點

Linux指令行部署管理minio多節點伺服器

作者:Sys漿糊

我先認輸了,暫時還沒辦法用docker部署minio多節點,先用指令行部署先。

首先,部署minio多節點服務

因為我用我的虛拟機做實驗環境,是以沒有配置域名和硬碟,直接建目錄測試。

虛拟機IP:

  • 192.168.3.28
  • 192.168.3.166
  • 192.168.3.221

每台伺服器上建2目錄:

  • /data/data1
  • /data/data2

然後運作minio程式

export MINIO_ROOT_USER=minio_admin
export MINIO_ROOT_PASSWORD=minio_admin_password
./minio server \
        http://192.168.3.28:9000/data/data1 \
        http://192.168.3.28:9000/data/data2 \
        http://192.168.3.166:9000/data/data1 \
        http://192.168.3.166:9000/data/data2 \
        http://192.168.3.221:9000/data/data1 \
        http://192.168.3.221:9000/data/data2 \
   --console-address ":9001" \
   --address ":9000"           

在每一台伺服器上執行以上指令後,日志開始有報錯。

配置mc連接配接

mc config host add nodes http://192.168.3.28:9000           

輸入使用者密碼後連接配接成功。

然後可以執行以下指令看最終結果:

mc admin info nodes           

192.168.3.166:9000

Uptime: 31 minutes

Version: 2023-03-24T21:41:23Z

Network: 3/3 OK

Drives: 2/2 OK

Pool: 1

● 192.168.3.221:9000

Uptime: 33 minutes

Version: 2023-03-24T21:41:23Z

Network: 3/3 OK

Drives: 2/2 OK

Pool: 1

● 192.168.3.28:9000

Uptime: 33 minutes

Version: 2023-03-24T21:41:23Z

Network: 3/3 OK

Drives: 2/2 OK

Pool: 1

Pools:

1st, Erasure sets: 1, Drives per erasure set: 6

6 drives online, 0 drives offline

從以上資訊可以看到部署成功,網絡和硬碟都ok。

在叢集上建立Bucket

上一步已經建立了主機連接配接,然後我們通過這個主機連接配接建立一個桶Bucket

mc mb nodes/mycloud           

建立成功後建立使用者

mc admin user add nodes
 mc admin user info nodes mycloud
        AccessKey: mycloud
        Status: enabled
        PolicyName:
        MemberOf:           

為這個使用者建立政策可以連接配接桶mycloud

mc admin policy create nodes mycloud ./mycloud.json           

mycloud.json就是讓使用者對桶mycloud有增删改的權限,内容如下:

{
  "Version": "2012-10-17",
  "Statement": [
   {
    "Effect": "Allow",
    "Action": [
     "s3:GetObject",
     "s3:GetBucketLocation",
     "s3:ListBucket",
     "s3:PutObject",
     "s3:DeleteObject"
    ],
    "Resource": [
     "arn:aws:s3:::mycloud/*"
    ]
   }
  ]
 }
           

将權限mycloud授權給使用者mycloud:

mc admin policy attach nodes mycloud --user mycloud
Policy `mycloud` successfully attached to user `mycloud`           

授權成功後配置mycloud的主機連接配接

mc config host create mycloud http://192.168.3.28:9000           

測試往mycloud上傳下載下傳檔案:

mc cp 2.PNG mycloud/mycloud
mc ls mycloud/mycloud           

結果是上傳成功:

Linux指令行部署管理minio多節點伺服器

再把它下載下傳下來看

mc cp 2.PNG mycloud/mycloud           

下載下傳成功:

Linux指令行部署管理minio多節點伺服器

也可以把它删除

mc rm mycloud/mycloud/2.PNG           

總結

minio多節點多盤(MultiNodesMulitDrives)部署通過minio程式直接運作比較簡單,而且可以嚴格控制權限,無需使用root權限執行,相對比較安全,其他使用起來跟單節點差不多。

下一步我們要實驗的是在docker上部署NextCloud雲盤,然後把雲盤放在minio上,敬請期待!

繼續閱讀