目錄4、分布式minio集群搭建
5、配置網域名稱及https
6、控制台介面操作及客戶端sdk
7、多租戶部署
對於有需求不能或不使用雲廠商提供的儲存服務,例如阿里雲的oss、七牛雲的物件儲存等,可以通過自建minio物件儲存集群的方式
多節點的minio會根據不同的access_key及secret_key來區分不同租戶,每個租戶可操作對應server獲取object。minio server間可以通過不同的程序模型、容器或是虛擬機器來互相隔離。
分布式minio在無共享架構中根據需求擴充套件到盡可能多的伺服器,所有節點需要使用相同的access_key及secret_key來登入。分布式minio使用web負載均衡器或dns輪循(dns round-robin),在各伺服器之間實現負載均衡。
minio儲存的部署方案在官網有很多,例如在docker-compose,kubernetes,dc/os等環境下,本文採用的是較穩定的二進位制部署方式。
作業系統centos 7.6
伺服器資源:
本集群由2臺伺服器構成(官方推薦集群最小4臺伺服器),每個伺服器上掛載兩個磁碟目錄,最小資料掛載點為4個
建立專用的使用者
useradd -m -s /sbin/nologin -r minio-user
[root@localhost ~]# mkdir -p /minio/data1
[root@localhost ~]# mkdir -p /minio/data2
[root@localhost ~]# mkdir -p /opt/minio
[root@localhost ~]# mkdir -p /etc/minio
[root@localhost ~]# vim /opt/minio/run.sh
#!/bin/bash
export minio_access_key=minio
export minio_secret_key=test123456
/opt/minio/minio server --config-dir /etc/minio \
\ \
其中,「minio_access_key」為使用者名稱,「minio_secret_key」為密碼,密碼不能設定過於簡單,不然minio會啟動失敗,「–config-dir」指定集群配置檔案目錄,生成複雜使用者名稱和密碼可通過類似linux命令
tr -cd '[:alnum:]' 4.6.1、二進位制檔案
將minio二進位制檔案上傳到/opt/minio目錄下並賦予許可權
chmod +x minio
4.6.2、賦予啟動指令碼許可權chmod +x /opt/minio/run.sh
4.6.3、修改目錄所屬
由於minio
服務由minio-user
這個使用者啟動和執行,所以需要修改相應目錄的屬主和屬組
chown -r minio-user:minio-user /minio
chown -r minio-user:minio-user /etc/minio
chown -r minio-user:minio-user /opt/minio
4.6.4、啟動服務systemctl daemon-reload
systemctl start minio
systemctl enable minio
systemctl status minio
啟動後可通過訪問節點:9000,並使用設定的key登入到控制台,也可在啟動指令碼中加入引數--address "127.0.0.1:9000"
修改埠,即:
#!/bin/bash
export minio_access_key=minio
export minio_secret_key=test123456
/opt/minio/minio server --config-dir /etc/minio \
--address "127.0.0.1:9000" \
\ \
使用nginx配置網域名稱進行訪問,在 nginx 的配置檔案中加入下面的內容:
location /
使用nginx配置https安全訪問,並根據301規則自動跳轉到https,https證書可自籤、也可申請乙個瀏覽器可信的證書,下面的證書屬於瀏覽器可信的,全域性配置如下:
minio控制台介面是通過accsss key和secret key登入的,除了將這對key用於客戶端,作為管理員還可能有需要對控制台訪問做保護,即在用key登入的基礎上再加一層。這就如同非x-pack版本的kibana介面一樣,沒有訪問控制。同樣的,可以嘗試使用nginx的basic_auth模組。一番折騰發現是不可行的,對於nginx基礎認證,後端不支援非aws4-hmac-sha256簽名演算法,可能出現如下圖所示的返回結果:
因此這個想法不可行,具體如何實現也沒有google到。。。
通過上面配置的網域名稱訪問到minio介面
並通過指定的access key及secret key登入到控制台
控制台可以做的操作如下:
多租戶的實現可參考:
minIO 物件儲存搭建
windows下幾個小命令,啟動乙個minio物件儲存服務 minio.exe server data 啟動服務 實用mc.exe進行管理,也可以登入9000埠來進行管理 mc.exe config host add myminio 9adva11o8wwfh8ggdgi1 r jtf 2rbfi4...
物件儲存服務minio
wget chmod x minio minio server mnt data minio是乙個非常輕量的服務,可以很簡單的和其他應用的結合,類似 nodejs,redis 或者 mysql。docker pull minio minio docker run p 9000 9000 minio ...
minIO 物件儲存搭建
windows下幾個小命令,啟動乙個minio物件儲存服務 minio.exe server data 啟動服務 實用mc.exe進行管理,也可以登入9000埠來進行管理 mc.exe config host add myminio 9adva11o8wwfh8ggdgi1 r jtf 2rbfi4...