啟用單向伺服器端儲存桶複製
此頁面上的程序會建立新的儲存桶複製規則,用於將物件從一個 MinIO 儲存桶單向同步到另一個 MinIO 儲存桶。這些儲存桶可以位於相同的 MinIO 部署中,也可以位於不同的 MinIO 部署中。
若要設定 MinIO 儲存桶之間的雙向「主動-主動」複製,請參閱啟用雙向伺服器端儲存桶複製。
若要設定 MinIO 部署之間的多站點「主動-主動」複製,請參閱啟用多站點伺服器端儲存桶複製
注意
若要設定任意 S3 相容服務(不一定是 MinIO)之間的複製,請使用mc mirror
。
需求
複製需要所有參與的叢集滿足以下需求。此程序假設您已檢閱並驗證這些需求。
如需更多詳細資訊,請參閱儲存桶複製需求頁面。
考量
點擊以展開以下任何一項
複製現有物件
MinIO 支援自動複製儲存桶中的現有物件。
MinIO 需要明確啟用使用 mc replicate add --replicate
或 mc replicate update --replicate
並包含 existing-objects
複寫功能標誌來複寫現有物件。此程序包含啟用現有物件複寫所需的標誌。
複寫刪除操作
MinIO 支援將 S3 DELETE
操作複寫到目標儲存桶。具體來說,MinIO 可以複寫版本控制的 刪除標記 和特定版本物件的刪除
對於物件的刪除操作,MinIO 複寫也會在目標儲存桶上建立刪除標記。
對於物件版本的刪除操作,MinIO 複寫也會在目標儲存桶上刪除這些版本。
MinIO 需要明確啟用使用 mc replicate add --replicate
或 mc replicate update --replicate
來複寫刪除操作。此程序包含啟用刪除操作和刪除標記複寫所需的標誌。
MinIO *不會* 複寫由於應用 生命週期管理過期規則 而導致的刪除操作。
多站點複寫
MinIO 支援為每個儲存桶或儲存桶前綴設定多個遠端目標。例如,您可以設定一個儲存桶將資料複寫到兩個或更多遠端 MinIO 部署,其中一個部署是 1:1 副本(複寫包括刪除在內的所有操作),而另一個是完整歷史記錄(僅複寫非破壞性寫入操作)。
此程序說明到單一遠端 MinIO 部署的單向複寫。您可以重複此教學課程,將單一儲存桶複寫到多個遠端目標。
程序
使用 MinIO 主控台設定單向儲存桶複寫
1) 建立新的儲存桶複寫規則
登入部署的 MinIO 主控台
選取要複寫的儲存桶的 管理 按鈕
選取 複寫 區段
選取 新增複寫規則 +
填寫要求的資訊
欄位
描述
優先順序
輸入一個數值,以表示處理儲存桶複寫規則的順序。 1 表示最高重要性。
目標 URL
要將資料複寫到的部署 URL。
使用 TLS
如果目標部署使用 TLS,則將切換開關保持在 開啟 位置。否則,請將切換開關移至 關閉 位置。
存取金鑰
要在目標部署上使用的使用者名稱。使用者必須擁有對要複寫到的儲存桶的寫入權限。
密碼金鑰
提供的 **存取金鑰** 的密碼。
目標儲存桶
目標位置上要將資料寫入的儲存桶。目標儲存桶的名稱可能與來源儲存桶相同,具體取決於目標儲存桶的位置。
區域
目標部署的 AWS 資源區域位置。
複寫模式
保留預設選取的 **非同步**,允許 MinIO 在來源端完成寫入操作後複寫資料。選取 **同步**,以嘗試在寫入操作期間完成物件的複寫。
雖然同步複寫可能導致來源和目標儲存桶之間更可靠的同步,但也可能會增加每個寫入操作的時間。
頻寬
指定複寫程序在複寫資料時可以使用的最大頻寬量。輸入一個數字並選取一個資料單位。
健全狀況檢查持續時間
MinIO 應花費在驗證目標儲存桶上複寫資料健全狀況的最大時間長度(秒)。
儲存類別
要在目標部署上用於複寫資料的儲存類別。有效值為
STANDARD
或REDUCED_REDUNDANCY
。物件篩選器
使用 前綴 或 **標籤** 限制要從儲存桶複寫的物件。如果您輸入多個標籤,則物件必須符合所有標籤值。
中繼資料同步
保持選取以同時複寫物件的中繼資料檔案。否則,請將切換開關移至 關閉 位置。
刪除標記
保持選取以同時複寫 MinIO 的指示,指出物件已被刪除,也應在動作儲存桶中標記為已刪除。否則,請將切換開關移至 關閉 位置,以防止將物件標記為在目標儲存桶中刪除。
刪除
保持選取以允許複寫物件版本的刪除。否則,請將切換開關移至 關閉 位置,以便不複寫物件版本的刪除。
選取 儲存 以完成新增複寫規則
2) 驗證複寫設定
使用命令列 mc
設定單向儲存桶複寫
此程序使用 別名 SOURCE
和 REMOTE
來參考每個設定用於複寫的 MinIO 部署。使用您目標 MinIO 部署的適當別名取代這些值。
此程序假設每個別名都對應於一個具有必要複寫權限 的使用者。
變更版本 RELEASE.2022-12-24T15-21-38Z: mc replicate add
會自動建立必要的複寫目標,而無需使用已棄用的 mc admin remote bucket add
命令。此程序僅說明該版本之後的程序。
1) 建立新的儲存桶複寫規則
使用 mc replicate add
命令,為每個 MinIO 部署新增新的複寫規則。
mc replicate add ALIAS/BUCKET \
--remote-bucket 'https://USER:PASSWORD@HOSTNAME:PORT/BUCKET' \
--replicate "delete,delete-marker,existing-objects"
使用來源 MinIO 部署的 別名 取代
ALIAS
。名稱 *必須* 與先前步驟中建立遠端目標時指定的儲存桶相符。使用來源部署上要從中複寫的儲存桶名稱取代
BUCKET
。使用
--remote-bucket
來指定遠端的 MinIO 部署和儲存桶,ALIAS/BUCKET
將會複製到該處。USER:PASSWORD
必須對應到遠端部署上具有必要複製權限的使用者。HOSTNAME:PORT
必須解析到遠端部署上可連線的 MinIO 執行個體。BUCKET
必須存在,並且符合所有其他的複製需求。--replicate "delete,delete-marker,existing-objects"
旗標啟用以下複製功能:請參閱
mc replicate add --replicate
以取得更完整的說明文件。省略任何欄位會停用該元件的複製。
為 mc replicate add
指定任何其他支援的選用引數。
2) 驗證複製設定
使用 mc cp
將新物件複製到其中一個部署上的已複製儲存桶。
mc cp ~/foo.txt ALIAS/BUCKET
使用 mc ls
來驗證物件是否存在於目標儲存桶中。
mc ls ALIAS/BUCKET
另請參閱
使用
mc replicate update
命令來修改現有的複製規則。使用
mc replicate update
命令以及--state "disable"
旗標來停用現有的複製規則。使用
mc replicate rm
命令來移除現有的複製規則。