升級 MinIO 部署
重要事項
對於早於 RELEASE.2024-03-30T09-41-56Z 且啟用 AD/LDAP 的部署,您在開始此程序之前必須閱讀 RELEASE.2024-04-18T19-09-19Z 的發行說明。您必須執行連結發行說明中記錄的額外步驟,作為升級的一部分。
MinIO 使用先更新後重新啟動的方法將部署升級到較新的版本
使用較新的版本更新 MinIO 二進位檔案。
使用
mc admin service restart
重新啟動部署。
此程序不需要停機,並且不會對正在進行的操作造成中斷。
本頁記錄了使用先更新後重新啟動方法升級 systemctl
和使用者管理 MinIO 部署的方法。使用 Ansible、Terraform 或其他管理工具的部署可以使用此處的程序作為在現有自動化框架內實施的指導。
先決條件
先備份叢集設定
在開始停用之前,使用 mc admin cluster bucket export
和 mc admin cluster iam export
命令來取得儲存桶中繼資料和 IAM 組態的快照。您可以使用這些快照來還原 儲存桶 和 IAM 設定,以便在必要時從使用者或程序錯誤中恢復。
檢查發行說明
MinIO 發布 發行說明 以供您參考,作為識別每個版本中應用的變更的一部分。請檢閱您目前的 MinIO 版本和較新版本之間的相關發行說明,以便全面了解任何變更。
請特別注意任何不向後相容的版本。您無法從任何此類版本輕鬆降級。
在套用至生產環境前測試升級
MinIO 在所有版本中都使用測試和驗證套件。然而,沒有任何測試套件可以涵蓋您生產環境中硬體、軟體和工作負載的獨特組合和排列。
您應該在將任何 MinIO 升級套用至生產環境部署或任何其他包含重要資料的環境之前,始終在較低的環境(開發/QA/預備環境)中驗證這些升級。在未先在較低環境中驗證的情況下更新生產環境,風險由您自行承擔。
對於遠落後於最新穩定版(6 個月以上)的 MinIO 部署,請考慮使用 MinIO SUBNET,以在升級過程中獲得額外的支援和指導。
考量事項
升級不會造成中斷
MinIO 的升級然後重新啟動程序不需要停機或安排維護期間。MinIO 重新啟動速度很快,通常在幾秒鐘內即可完成所有伺服器程序的平行重新啟動。MinIO 操作是原子性的且嚴格一致,因此使用 MinIO 或 S3 SDK 的應用程式可以依賴內建的透明重試,而無需額外的用戶端邏輯。這確保了升級不會中斷正在進行的操作。
更新 systemctl
管理的 MinIO 部署
使用以下步驟來升級 MinIO 伺服器程序由 systemctl
管理的 MinIO 部署,例如使用 MinIO DEB/RPM 套件建立的那些部署。
此程序假設您在所有 MinIO 節點上都設定了 MINIO_CONFIG_ENV_FILE
變數。
更新每個節點上的 MinIO 二進制檔案
以下索引標籤提供了使用 RPM、DEB 或二進制檔案在 64 位元 Linux 作業系統上更新 MinIO 的範例
使用以下命令下載最新的穩定版 MinIO RPM 並更新現有安裝。
wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20241029160148.0.0-1.x86_64.rpm -O minio.rpm sudo dnf update minio.rpm
使用以下命令下載最新的穩定版 MinIO DEB 並升級現有安裝
wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio_20241029160148.0.0_amd64.deb -O minio.deb sudo dpkg -i minio.deb
使用以下命令下載最新的穩定版 MinIO 二進制檔案並覆寫現有二進制檔案
wget https://dl.min.io/server/minio/release/linux-amd64/minio chmod +x minio sudo mv -f ./minio /usr/local/bin/minio
將
/usr/local/bin
替換為現有 MinIO 二進制檔案的位置。如果尚未知道路徑,請執行which minio
以識別路徑。在每個節點上執行
minio --version
以驗證您是否已成功將所有二進制檔案升級到相同的版本。除非所有節點都使用相同的 MinIO 二進制檔案版本,否則請勿繼續。重新啟動部署
執行
mc admin service restart
命令,同時重新啟動部署中的所有 MinIO 伺服器程序。mc admin service restart ALIAS
取代要重新啟動的 MinIO 部署的 別名。
與 S3 相容的 SDK 和應用程式應自動重試操作,因此重新啟動過程通常不會中斷正在進行的操作。
驗證升級
使用
mc admin info
命令檢查所有 MinIO 伺服器是否在線上、正常運作,並反映已安裝的 MinIO 版本。更新 MinIO 用戶端
您應該升級您的
mc
二進制檔案,以符合或緊密追隨 MinIO 伺服器版本。您可以使用mc update
命令將二進制檔案更新為最新的穩定版本mc update
更新非系統管理的 MinIO 部署
使用這些步驟來升級 MinIO 伺服器程序在系統之外(systemd
、systemctl
)管理的 MinIO 部署,例如由使用者、自動化腳本或其他一些程序管理工具所管理。此程序僅適用於執行 MinIO 程序的使用者具有 MinIO 二進制檔案路徑寫入權限的系統。對於使用 systemctl
管理的部署,請參閱 更新 systemctl 管理的 MinIO 部署。
使用 mc admin update
更新
mc admin update
命令會更新目標 MinIO 部署中的所有 MinIO 伺服器二進制檔案,然後同時重新啟動所有節點。重新啟動過程通常會在幾秒鐘內完成,並且不會中斷正在進行的操作。
以下命令會將具有指定 別名 的 MinIO 部署更新為最新的穩定版本
mc admin update ALIAS
執行 mc admin update
命令的使用者必須具有二進制檔案安裝位置的 寫入
權限。
您可以指定解析為特定 MinIO 伺服器二進制檔案版本的 URL。氣隙或與網際網路隔離的部署可以利用此功能從內部可存取的伺服器進行更新
mc admin update ALIAS https://minio-mirror.example.com/minio
您應該升級您的 mc
二進制檔案,以符合或緊密追隨 MinIO 伺服器版本。您可以使用 mc update
命令將二進制檔案更新為最新的穩定版本
mc update
透過手動取代二進制檔案更新
您可以下載並手動取代部署中每個主機節點上的 minio
伺服器二進制檔案。然後,您必須同時重新啟動所有節點,例如使用 mc admin service restart
。
例如,以下命令會下載適用於 Linux 的最新穩定版 MinIO 二進制檔案,並將其複製到 /usr/local/bin
。此命令會覆寫該路徑上的現有 minio
二進制檔案。
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x ./minio
sudo mv -f ./minio /usr/local/bin/minio
在您取代部署中所有 MinIO 主機上的二進制檔案之後,您必須同時重新啟動所有節點。
您應該升級您的 mc
二進制檔案,以符合或緊密追隨 MinIO 伺服器版本。您可以使用 mc update
命令將二進制檔案更新為最新的穩定版本
mc update