站點故障恢復
MinIO 可以將整個站點的損失,儘管很嚴重,但也視為相對較小的事件。站點恢復取決於您為站點使用的複製選項。
站點複製 |
從健康的對等站點完全還原 IAM 組態、儲存桶組態和資料 |
儲存桶複製 |
還原每個設定為複製的儲存桶的物件和中繼資料,來源是健全的遠端位置 |
僅從健全的遠端位置還原物件資料,不包含版本控制 |
站點複製修復會自動將現有站點中的 IAM 設定、儲存桶、儲存桶組態和物件新增至新站點,無需執行其他操作。
如果其他健全站點上仍然存在任何儲存桶複製規則,則無法設定站點複製。儲存桶複製與站點複製互斥。
如果您要從使用儲存桶複製切換到使用站點複製,則必須先從健全的站點中刪除所有儲存桶複製規則,然後再設定站點複製。
將不健康的對等點還原到站點複製
重要
RELEASE.2023-01-02T09-40-09Z MinIO 伺服器版本包含在包含三個或更多對等站點的複製組態中移除已關閉站點的重要修正。
對於設定為站點複製的部署,請規劃將所有對等站點測試和升級到指定的版本。如果發生站點故障,您可以將剩餘的健全站點更新到指定的版本,並使用此程序。
站點複製使兩個或多個 MinIO 部署與 IAM 原則、儲存桶、儲存桶組態、物件和物件中繼資料保持同步。如果對等站點發生故障,例如由於重大災害或長時間停電,您可以使用剩餘的健全站點來還原可複製的資料。
以下程序可以還原在站點遺失之前站點複製處於作用中狀態的情境中的資料。此程序假設一個或多個對等站點的完全遺失,而不是由於延遲或暫時的部署停機時間而造成的複製延遲或延遲。
使用
mc admin replicate rm
命令和--force
選項,從 MinIO 站點複製組態中移除失敗的站點。以下命令會強制從複製組態中移除不健全的對等站點
mc admin replicate rm HEALTHY_PEER UNHEALTHY_PEER --force
將
HEALTHY_PEER
替換為複製組態中任何正常運作節點的別名。將
UNHEALTHY_PEER
替換為不健康節點站點的別名。
站點複製組態中所有正常運作的節點都會自動更新以移除不健康的節點。您可以使用
mc admin replicate info
命令來驗證新的站點複製組態。依照站點複製需求部署新的 MinIO 站點。
除了已述的要求外,請勿上傳任何資料或進行其他部署組態。
驗證新的 MinIO 部署是否正常運作,並且與其他對等站點具有雙向連線能力。
確保新站點與現有對等站點上的伺服器版本相符。
警告
mc admin replicate rm --force
命令僅在站點複製組態中的線上或正常節點上執行。已移除的離線 MinIO 部署會保留其原始複製組態,因此,如果該部署恢復正常運作,它會繼續將資料複製到其設定的對等站點。如果您計劃重新使用該站點複製組態的硬體,則**必須**在重新初始化 MinIO 並將站點加回複製組態之前,完全清除該部署的磁碟機。
將替換的對等站點新增至複製組態。
使用
mc admin replicate add
命令,使用新的站點來更新複製組態。mc admin replicate add HEALTHY_PEER NEW_PEER
將
HEALTHY_PEER
替換為複製組態中任何正常運作節點的別名。將
NEW_PEER
替換為新對等節點的別名。
站點複製組態中所有正常運作的節點都會自動為新對等節點更新。您可以使用
mc admin replicate info
命令來驗證新的站點複製組態。使用
mc admin replicate resync
重新同步新對等節點。mc admin replicate resync start HEALTHY_PEER NEW_PEER
將
HEALTHY_PEER
替換為複製組態中任何正常運作節點的別名。將
NEW_PEER
替換為新對等節點的別名。
驗證複製狀態。
使用下列命令追蹤複製狀態
mc admin replicate status
- 提供複製的整體狀態和進度mc replicate status
- 提供儲存貯體層級和全域複製狀態
作用中儲存貯體複製重新同步
對於在發生故障前已設定儲存貯體複製的情況,您可以使用 mc replicate resync
將資料還原至新的站點。建立一個新的站點來替換失敗的部署,然後將資料從現有的、運作正常的且已啟用儲存貯體複製的部署同步至新的站點。
部署新的 MinIO 站點。
視需要設定 IAM 和使用者。
在具有資料的站點上,使用
mc admin bucket remote add
命令建立新的remote target
,並記錄輸出的 ARN。從具有資料的站點,使用
mc replicate resync start
命令以及先前命令中的 ARN,以重建新站點上的儲存貯體。等待重新同步完成 (使用
mc replicate resync status
進行檢查)。設定從新的 MinIO 站點到現有目標儲存貯體的一或多個儲存貯體複製規則。
(選用) 從目標部署中刪除儲存貯體複製規則,以還原主動-被動複製情境。
被動儲存貯體複製重新同步
透過執行從目標儲存貯體到新的 MinIO 站點的複製,儲存貯體複製 可以直接還原站點內容。
作為被動程序,對於站點復原情境而言,儲存貯體複製可能無法以期望的速度執行。
儲存貯體複製依賴標準複製掃描器佇列,該佇列不會優先於其他程序。對於具有更嚴格 SLA/SLO 的復原程序,請使用具有 mc replicate resync
命令的作用中儲存貯體複製程序,如上所述。
儲存貯體複製規則會將物件、其版本 ID、版本和其他中繼資料複製到目標儲存貯體。如果先前在站點遺失之前已使用儲存貯體複製,MinIO 可以將具有所有這些屬性的物件還原至新的 MinIO 站點。
部署新的 MinIO 站點。
視需要設定 IAM 和使用者。
在剩餘的目標儲存貯體部署上,為每個儲存貯體建立到新的 MinIO 站點的儲存貯體複製規則。
等待複製完成。
設定從新的 MinIO 站點到現有目標儲存貯體的一或多個儲存貯體複製規則。
(選用) 從目標部署中刪除儲存貯體複製規則,以還原主動-被動複製情境。
如果您希望在儲存貯體之間保持主動-主動複製,則請勿從用於復原資料的部署中刪除儲存貯體複製規則。在主動-主動複製中,對任一位置的物件所做的變更會影響另一位置的物件。
鏡像
MinIO 的鏡像會從任何與 S3 相容的儲存系統複製物件。
無論來源為何,鏡像僅複製每個物件的最新版本,且不包含版本中繼資料。您無法使用此方法還原這些屬性。
在您只需要還原物件的最新版本的情況下,請使用 mc mirror
。如果您是從另一個 MinIO 部署複製,並且希望還原物件的版本歷程記錄和版本中繼資料,請使用已使用的儲存貯體複製或站點複製。
部署新的 MinIO 站點。
視需要設定 IAM 和使用者。
在新站點上建立儲存貯體。
使用
mc cp
CLI 命令,將內容從鏡像位置複製到新的 MinIO 站點。