超詳細centos中部署minio


准備工作

1.尋找國外minio官網,並安裝minio

2.格式化並掛載好硬盤

3.centos系統需要打開端口

4.下載配置mc和Prometheus(非必需)


安裝

安裝前准備,文件夾創建,控制台登入root賬戶(sudo su)並進入根目錄(cd /)

創建運行文件夾(mkdir /opt/minio)

創建存儲文件夾(mkdir /mnt/minio),進入后創建子文件夾data1


下載並賦予權限,進入運行文件夾

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

chmod +x minio


掛載硬盤

查看主機內存在的所有硬盤(fdisk -l )

新掛載的硬盤可以根據大小區分'舉例sdf這塊盤',當運行格式化命令后(mkfs -t ext4 /dev/sdf),運行(blkid)可以查看到UUID,此時將硬盤掛載到儲存文件夾下的子文件夾data1。運行vim /etc/fstab 按 i 末尾追加UUID=d765d835-4989-4bff-8ae8-116c654d4bba /mnt/minio/data1 ext4 defaults 0 2. 保存后重啟(reboot).


測試運行minio

單機單磁盤

運行netstat -anpt 查看9000 9001端口是否被使用,docker容器容易占用。當然了,console和API使用的端口都是可以自由設置的,我只是用常見的9000和9001舉例。

進入運行文件夾,輸入 ./minio server --console-address :9001 --address :9000 >minio.log /mnt/minio/data1

./minio代表剛才下載並附權的那個文件。 --console-address :9001 代表將console頁面指定為9001端口訪問。 -- address :9000 指定API訪問端口。 >minio.log 表示當前文件夾下創建了一個日志文件。 /mnt/minio/data1表示指明在儲存文件夾里的位置

此模式下,不能自由的創建桶,個人使用的話可以手動在儲存文件夾下創建文件夾,即創建了桶。


單機多磁盤與分布式

單機多磁盤,4塊或4的倍數塊相同大小的磁盤。並自動引入糾刪碼模式。

./minio server --console-address :9001 --address :9000 >minio.log /mnt/minio/data1 /mnt/minio/data2 /mnt/minio/data3 /mnt/minio/data4分布式部署,至少四個節點,運行相同minio配置。也是自動引入糾刪碼模式。

多節點分布式(節點為10.10.5.200~10.10.5.203 文件夾都為data1~data4)四個節點依次運行相同命令。(節點中相近版本可以組成分布式,沒限制必須所有節點minio版本一致)

./minio server --console-address :9001 --address :9000 >minio.log http:10.10.5.{200...203}/mnt/minio/data{1...4}
分布式部署還可以使用第五個節點對上述四點進行負載均衡配置,合並成一個連接訪問。

正式運行

運行文件夾下執行vim startminio.sh,

#!/bin/bash
export MINIO_ROOT_USER=admin
export MINIO_ROOT_PASSWORD=12345678

/opt/minio/minio server --console-address :9001 --address :9000 /mnt/minio/data{1...4} >minio.log

賦予權限

chmod +x startminio.sh


創建開機執行服務

vim /usr/lib/systemd/system/minio.service

[Unit]
Description=Minio server
After=network.target

[Service]
Type=simple
User=root
Group=root

ExecStart=/opt/minio/startminio.sh

# Give a reasonable amount of time for the server to start up/shut down
TimeoutSec=300

# Place temp files in a secure directory, not /tmp
PrivateTmp=true

[Install]
WantedBy=multi-user.target

賦予權限並開機啟動

chmod 644 /usr/lib/systemd/system/minio.service

systemctl daemon-reload

systemctl start minio.service

systemctl enable minio.service


打開防火牆中的9000與9001端口

查看狀態

systemctl status firewalld

查看已開放端口

firewall-cmd --list-all

開放9000端口

firewall-cmd --zone=public --add-port=9000/tcp --permanent

防火牆重載

firewall-cmd --reload


此時訪問http://10.10.5.200:9001,登錄admin,12345678,可以使用


安裝mc

還是進入國外minio官網,進入下載,附權,運行

wget https://dl.min.io/client/mc/release/linux-amd64/mc

chmod +x mc

./mc alias set myminio/ http://0.0.0.0:9000 admin 12345678


安裝運行Prometheus

下載,解壓,調整配置,運行

wget https://github.com/prometheus/prometheus/releases/download/v2.33.4/prometheus-2.33.4.linux-amd64.tar.gz

tar xvfz prometheus-2.33.4.linux-amd64.tar.gz.tar.gz

cd prometheus-2.33.4.linux-amd64

/opt/minio/mc admin prometheus generate myminio 這里的myminio是前文(./mc alias set myminio)中設置的。

復制scrape_configs之后的內容,追加到prometheus.yml末尾,注意格式縮進

scrape_configs:
- job_name: minio-job
  bearer_token: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJleHAiOjQ3OTkzNTcwMDUsImlzcyI6InByb21ldGhldXMiLCJzdWIiOiJhZG1pbiJ9.7o0ewFRd7EbwWneh0Vg09R4UljwAL4B0zUKovBwWPlVfPkGxSe2l_DNnDPO-jwGBcn77LsxOaldRww7YAIlJjA
  metrics_path: /minio/v2/metrics/cluster
  scheme: http
  static_configs:
  - targets: ['0.0.0.0:9000']

配置文件startminio.sh中還要 追加

export MINIO_PROMETHEUS_AUTH_TYPE="public"

export MINIO_PROMETHEUS_URL="http://10.10.5.200:9090"

在prometheus-2.33.4.linux-amd64文件夾中運行./prometheus --config.file=prometheus.yml

ps: .yaml跟.yml本質是一個東西,近些年常用后者

重啟后三者一起運行,順序為minio > mc > prometheus


設置證書綁定外網IP等操作,下次更新


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM