文章目錄
- 介紹
- 軟件特點
- 下載
- 多機分布式集群部署
- 1.前提準備
- 2. 新建minio工作目錄
- 3. 編寫運行命令
- 4. 啟動、測試
- 5. nginx配置
介紹
MinIO 是一款高性能、開源、云原生的分布式對象存儲系統,專為私有云、公有云和邊緣計算場景設計,完全兼容 Amazon S3 API,可無縫替代 AWS S3,適用于 AI/ML、大數據、備份歸檔等海量非結構化數據存儲場景。
軟件特點
- 高性能:基于 Golang 編寫,單機可達數十 GB/s 吞吐,分布式線性擴展;采用糾刪碼(Reed-Solomon)與HighwayHash 位腐爛保護,兼顧速度與數據完整性。
- 云原生:40 MB 單二進制文件,可容器化部署,提供官方 Helm Chart,與Kubernetes、Prometheus、Grafana 生態深度集成,支持 PV/PVC 持久卷。
- S3 完全兼容:支持全部核心 S3 API(含 SSE-S3/SSE-C/KMS 加密、版本控制、生命周期、WORM 鎖等),現有 S3 SDK、工具(如 Velero、Restic、Spark、Presto)無需修改即可使用。
- 多云/多站點:支持“連續復制”與“全局聯邦”,可跨地域、跨云廠商構建統一命名空間,實現災備與就近訪問。
- 安全合規:內置 TLS、細粒度 IAM、OpenID/LDAP 集成、WORM 防篡改、審計日志,滿足金融、醫療等合規要求。
- 輕量易運維:單進程、無中心元數據庫,磁盤 JBOD 直掛即可;控制臺提供 UI 與 mc 命令行,一鍵擴縮容、監控告警。
下載
官網下載頁面:https://www.min.io/download?platform=windows
點擊下載社區版的
社區版直達下載地址:https://www.min.io/open-source/download?platform=windows
注意:最新版的 MinIO 社區版中缺少用戶設置,這是因為 MinIO 近期對其社區版的用戶界面 (UI) 功能進行了重大調整。過去,MinIO 的 Web 控制臺提供了賬戶和策略管理、配置設置等功能。然而,在最新的社區版中,這些功能已被移除。
如果下載歷史版本的可訪問:
https://dl.minio.org.cn/server/minio/release/windows-amd64/archive/
找到對應的版本進行下載即可
多機分布式集群部署
提前找好3臺或多臺機器,推薦最少4臺,由于我們目前場景只有3臺機器,就做3臺的部署演示,多臺可自行擴展即可。這些機器需要在同一個局域網內,可相互ping通。
MinIO 采用糾刪碼(Erasure Code) 技術來實現數據冗余和恢復,分布式 Minio 里所有的節點需要有同樣的 access 秘鑰和 secret 秘鑰,這樣這些節點才能建立聯接。
1.前提準備
網絡互通:所有服務器節點必須在同一網絡并能通過 IP 相互解析和訪問。
時間同步:所有節點的主機時間差不能超過 3 秒。
相同的憑據:在所有節點上設置完全相同的 MINIO_ROOT_USER 和 MINIO_ROOT_PASSWORD 環境變量。
干凈的磁盤:確保每個節點上用于 MinIO 的磁盤目錄是干凈的(沒有數據)。
2. 新建minio工作目錄
分別在3臺機器上在D盤新建minio工作目錄,將下載好的minio,拷貝進去
然后在minio文件夾中新建 minio-data 文件夾,做為minio存儲數據文件夾。
3. 編寫運行命令
在minio文件夾下新建 start.bat,將以下命令粘貼進去進行保存。
set MINIO_ROOT_USER=minioadmin
set MINIO_ROOT_PASSWORD=minioadmin
minio.exe server --address ":9000" --console-address ":9001" ^
http://192.168.1.116/D:/minio/minio-data ^
http://192.168.1.112/D:/minio/minio-data ^
http://192.168.1.108/D:/minio/minio-data
在啟動命令中,將IP替換為你自己的各節點的真實局域網 IP 地址。
4. 啟動、測試
分別在3臺機器上啟動start.bat 正常啟動成功后,即可訪問minio的控制臺(任意一臺機器即可):http://192.168.1.116:9001
使用設置的用戶名和密碼登錄:minioadmin/minioadmin
新建buckets 然后上傳文件
分別查看各個機器上minio/minio-data文件夾下3臺機器均存有數據。
5. nginx配置
使用 Nginx 配置負載均衡提供統一的訪問入口并實現高可用。
下載nginx,然后修改nginx.conf配置文件
upstream minio_cluster {server 192.168.1.116:9000;server 192.168.1.112:9000;server 192.168.1.108:9000;# ... 添加所有節點的IP和端口
}server {listen 9000;server_name localhost;location / {proxy_pass http://minio_cluster;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;client_max_body_size 0;chunked_transfer_encoding on;}
}
啟動 Nginx(nginx.exe),之后應用程序只需訪問 Nginx 的地址(如 http://<nginx_server_ip>:9000)即可。