文件

mc admin rebalance

權限

此命令要求執行它的使用者具有部署的 admin:Rebalance 政策動作

說明

mc admin rebalance 命令允許在 MinIO 部署上啟動、監控或停止重新平衡操作。重新平衡會在部署中的所有集區之間重新分配物件。

當新增伺服器池時,MinIO 不會自動重新平衡物件。相反地,MinIO 會將新的物件寫入到部署中相較於其他可用池有較多可用空間的池中。觸發手動重新平衡程序會提示 MinIO 掃描整個部署,並在必要時移動物件,以使所有池的可用空間大致相同。

這是一個耗費資源且耗時的操作。請考慮僅在部署使用量較低或沒有使用時執行重新平衡程序。如果在重新平衡操作期間發生寫入操作,它們會並行處理並寫入到未積極參與重新平衡的池中。

您可以停止重新平衡,並在需要時稍後重新開始。

使用以下命令追蹤正在進行的重新平衡操作進度

mc admin trace --call rebalance ALIAS

僅在 MinIO 部署上使用 mc admin

MinIO 不支援將 mc admin 命令與其他 S3 相容服務一起使用,無論它們聲稱與 MinIO 部署的相容性如何。

mc admin rebalance 命令具有以下子命令

子命令

說明

mc admin rebalance start

在 MinIO 部署上啟動重新平衡操作。

mc admin rebalance status

輸出正在進行的重新平衡操作的目前狀態。

mc admin rebalance stop

停止正在進行的重新平衡操作。

語法

mc admin rebalance start

為 MinIO 部署啟動重新平衡操作。

考慮一個具有兩個池的 MinIO 部署,其分配的別名為 minio1。一個池有 250 GB 的可用空間,而另一個池有 3 TB 的可用空間。

mc admin rebalance 命令會將物件從可用空間較少的池移動到可用空間較多的池,以便兩個池上的可用空間大致相等。

mc admin rebalance start minio1

該命令具有以下語法

mc [GLOBALFLAGS] admin rebalance start ALIAS
  • 將 ALIAS 替換為要重新平衡的 MinIO 部署的 別名

mc admin rebalance status

查詢具有作用中重新平衡程序的部署,並傳回有關重新平衡程序狀態的資訊。

該狀態傳回重新平衡操作的 ID、操作時間,以及部署中每個池的詳細資訊。對於每個池,狀態會顯示池 ID、池的重新平衡狀態、已使用空間的百分比,以及池的重新平衡進度。

mc admin rebalance status minio1

該命令具有以下語法

mc [GLOBALFLAGS] admin rebalance ALIAS
  • 將 ALIAS 替換為 MinIO 部署的 別名

mc admin rebalance stop

結束指定部署上正在進行的重新平衡作業。

mc admin rebalance stop minio1

該命令具有以下語法

mc [GLOBALFLAGS] admin rebalance stop ALIAS
  • 將 ALIAS 替換為 MinIO 部署的 別名

全域旗標

此命令支援任何全域旗標

行為

先備份叢集設定

在開始解除部署之前,請使用 mc admin cluster bucket exportmc admin cluster iam export 命令分別取得 bucket 元資料和 IAM 設定的快照。您可以使用這些快照來還原 bucket/IAM 設定,以便在必要時從使用者或程序錯誤中復原。

重新平衡會忽略過期的物件和尾隨的 DeleteMarker

RELEASE.2023-06-23T20-26-00Z 開始,重新平衡會忽略已根據父 bucket 的設定生命週期規則過期的物件版本。

重新平衡也會忽略僅剩的版本是 刪除標記的物件。這可以避免對已視為完全刪除的物件進行池間 I/O

MinIO 依賴 掃描器 來擷取和移除那些過期的物件或尾隨的 DeleteMarker 物件。