在 StorageGRID 系統新增節點後,重新平衡銷毀編碼資料。
新增儲存節點後,您可以使用銷毀編碼 (EC) 重新平衡程序,在現有儲存節點和新儲存節點之間重新分配銷毀編碼片段。
-
您已完成新增儲存節點的擴充步驟。
-
您已審閱 "重新平衡銷毀編碼資料的注意事項"。
-
您瞭解此程序不會移動複寫的物件資料,且 EC 重新平衡程序也不會移動複寫的資料。然而,在決定要將 EC 資料移動到何處時,會將複寫的資料納入考量。
-
您擁有
Passwords.txt檔案。
開始程序之前,請注意以下事項:
-
如果一個或多個磁碟區處於離線(未掛載)狀態,或處於線上(已掛載)但處於錯誤狀態,則 EC 重新平衡程式將不會啟動。
-
EC 重新平衡程序會暫時預留大量儲存設備。可能會觸發儲存警報,但會在重新平衡完成後解除警報。如果預留的儲存設備不足,EC 重新平衡程序將會失敗。無論 EC 重新平衡程序成功與否,預留的儲存空間都會在程序完成後釋放。
-
如果在 EC 重新平衡過程中某個 Volume 離線,則重新平衡程序將會終止。任何已移動的資料片段都將保留在新位置,不會遺失任何資料。
所有 Volume 恢復線上後,您可以重新執行程序。
-
當 EC 重新平衡程序運作時,ILM 作業和 S3 用戶端作業的效能可能會受到影響。
如果上傳物件(或物件部分)的 S3 API 作業需要超過 24 小時才能完成,則在 EC 重新平衡程序期間可能會失敗。如果適用的 ILM 規則在擷取時使用 Balanced 或 Strict 放置,則長時間的 PUT 作業將會失敗。將會回報下列錯誤: 500 Internal Server Error。 -
工作完成條件。當符合下列任一條件時,即視為 EC 重新平衡程序已完成:
-
它無法再移動任何銷毀編碼資料。
-
所有節點中的資料與目標資料分區之間的偏差均在 5% 以內。
-
此程序已執行 30 天。
-
-
-
選取 Nodes 。
-
選擇站台上的第一個儲存節點。
-
選擇 Storage 索引標籤。
-
將遊標停留在「已使用儲存設備 - 物件資料」圖表上,即可查看儲存節點上目前複寫資料和銷毀編碼資料的數量。
-
重複這些步驟以檢視網站上的其他儲存節點。
-
-
登入主要管理節點:
-
輸入以下命令:
ssh admin@primary_Admin_Node_IP -
請輸入 `Passwords.txt`檔案中列出的密碼。
-
輸入以下命令以切換至根目錄:
su - -
請輸入 `Passwords.txt`檔案中列出的密碼。
當您以根目錄身分登入時,提示符號會從
$`變為 `#。
-
-
開始操作:
`rebalance-data start --site "site-name"
對於 "site-name",指定您新增一個或多個 Storage Node 的第一個站台。將
site-name括在雙引號中。EC 重新平衡程序開始,並傳回作業 ID。
-
複製作業 ID。
-
-
若要檢視單一 EC 重新平衡程序的狀態:
rebalance-data status --job-id job-id對於
job-id,請指定啟動該程序時傳回的 ID。 -
若要檢視目前 EC 重新平衡程序的狀態以及任何先前已完成的程序:
rebalance-data status
如需有關 rebalance-data 命令的協助:
rebalance-data --help -
-
根據傳回的狀態執行其他步驟:
-
如果
State為In progress,則 EC 重新平衡作業仍在執行中。您應該定期監控此程序,直到其完成為止。前往「節點」頁面,評估站台中儲存節點的資料分佈。
當所有節點中的資料與目標資料分割區的偏差在 5% 以內時,EC 重新平衡作業即被視為完成並停止。
-
-
如果 EC 重新平衡程序產生過多的負載(例如,影響擷取作業),請暫停此程序。
rebalance-data pause --job-id job-id -
如果您需要終止 EC 重新平衡程序(例如,以便執行 StorageGRID 軟體升級),請輸入以下命令:
rebalance-data terminate --job-id job-id當您終止 EC 重新平衡程序時,任何已移動的資料片段都會保留在新的位置。資料不會移回原始位置。 -
如果您在多個站台使用銷毀編碼,請對所有其他受影響的站台執行此程序。