mc admin replicate
在版本 RELEASE.2023-01-11T03-14-16Z 中變更
mc admin replicate edit
更名為mc admin replicate update
mc admin replicate remove
更名為mc admin replicate rm
說明
mc admin replicate
命令會為一組 MinIO 對等站點建立和管理站點複寫。
站點複寫會模擬主動-主動儲存桶複寫,但適用於多個 MinIO 部署。無論在站點集中,IAM 設定、儲存桶或物件發生任何變更,變更都會複寫到站點複寫群組中的所有站點。
其中儲存桶複寫會管理從部署內或跨部署從一個位置到另一個位置的特定儲存桶或物件的鏡像,站點複寫會持續鏡像整個 MinIO 站點到其他站點。
設定站點複寫時,mc admin replicate
僅支援分散式部署的站點複寫。
當初始化新的站點複製設定時,只能有一個部署擁有任何資料。
站點複製會對所有儲存桶強制執行儲存桶版本控制,包括現有的儲存桶以及在啟動站點複製後新增的任何儲存桶。站點複製會完整同步版本化的物件,相較於僅對物件的最新版本進行操作的 mc mirror
。
僅在 MinIO 部署上使用 mc admin
MinIO 不支援將 mc admin
命令與其他 S3 相容的服務一起使用,無論它們聲稱與 MinIO 部署的相容性如何。
mc admin replicate
命令具有以下子命令
子命令 |
說明 |
---|---|
建立新的站點複製設定或擴展現有的設定。 |
|
傳回有關站點複製設定的資訊。 |
|
如果第二個站點遺失資料,則將內容從一個站點重新同步到第二個站點。 |
|
從參與站點複製中移除整個站點複製設定或一個或多個對等站點。 |
|
顯示參與站點之間可複製資料的狀態。 |
|
修改站點複製設定中指定對等站點的端點。 |
語法
- mc admin replicate add
建立或擴展站點複製設定。 預設情況下,此設定使用非同步站點複製,這是 MinIO 建議的方式。
若要啟用同步站點複製,請先使用此命令建立複製。 然後使用
mc admin replicate update --mode sync
來更新設定。考量一個多站點 MinIO 拓撲,其中三個不同的 MinIO 部署使用以下別名:
minio1
、minio2
和minio3
。所有三個站點都具有完整的雙向網路存取權限,並且站點之間的延遲很低。mc admin replicate add minio1 minio2 minio3
以下命令會將現有的站點複製擴展為包含對等站點
minio1
、minio2
、minio3
和minio4
到一個額外的對等站點minio5
。minio5
不包含任何資料。先列出所有現有的對等站點。最後列出要擴展到的站點。如果任何現有站點無法連線,請先使用
mc admin replicate rm
移除無法連線的站點,然後繼續進行站點複製擴展。mc admin replicate add minio1 minio2 minio3 minio4 minio5
以下命令會在對等站點
minio1
、minio2
和minio3
之間建立新的站點複製設定,其中包含 ILM 過期規則同步。mc admin replicate add minio1 minio2 minio3 --replicate-ilm-expiry
此命令具有以下語法
mc [GLOBALFLAGS] admin replicate add \ ALIAS1 \ ALIAS2 \ [ALIAS3 ...] \ [--replicate-ilm-expiry]
- ALIAS
- 必要
要包含在站點複製中的 MinIO 部署的別名。
需要至少兩個 MinIO 部署別名才能建立站點複製。只有第一個別名可以有儲存桶或物件。第一個站點也可以是空的。
若要將現有的站點複製擴展到一個或多個新的複製站點,請列出現有的站點複製集中要擴展的所有對等站點別名。然後包含一個或多個額外的別名以新增到現有的站點複製。新增的對等點必須是空的。
- --replicate-ilm-expiry
- 選用
新增於版本 mc: RELEASE.2023-12-02T02-03-28Z
跨對等點複製ILM 過期規則。
- mc admin replicate update
修改參與站點複製的現有對等站點所使用的端點。
版本變更 RELEASE.2023-01-11T03-14-16Z:
mc admin replicate edit
重新命名為mc admin replicate update
。mc admin replicate update \ minio2 \ --deployment-id c1758167-4426-454f-9aae-5c3dfdf6df64 \ --endpoint https://minio2:9000
此命令具有以下語法
mc [GLOBALFLAGS] admin replicate update \ ALIAS \ --deployment-id [deploymentID] \ --endpoint [newEndpoint] \ --mode ["sync" | "async"] \ --enable-ilm-expiry-replication \ --disable-ilm-expiry-replication
- ALIAS
- 必要
MinIO 部署的別名。
- --bucket-bandwidth
設定儲存桶的預設頻寬限制(以位元/秒為單位)。
有效單位包括
B
代表位元組K
代表千位元組M
代表百萬位元組G
代表十億位元組T
代表兆位元組Ki
代表千位元組 (kibibytes)Mi
代表百萬位元組 (mebibytes)Gi
代表十億位元組 (gibibytes)Ti
代表兆位元組 (tebibytes)
例如,以下命令將
myminio
部署上的複製限制為不超過每秒 2 GB。mc admin replicate update myminio --deployment-id c1758167-4426-454f-9aae-5c3dfdf6df64 --bucket-bandwidth "2G"
- --deployment-id
- 必要
要變更的部署的唯一 ID。
執行
mc admin replicate info ALIAS
可以找到部署 ID
- --disable-ilm-expiry-replication
- 選用
新增於版本 mc: RELEASE.2023-12-02T02-03-28Z
停止對等站點之間的 ILM 過期規則複製。已在對等點之間同步的現有規則不會從任何對等點移除。
- --sync
- 選用
重要
從
RELEASE.2023-07-07T05-25-51Z
起,--sync
旗標已棄用。請改用--mode
。啟用或停用同步站點複寫。可用的值為
enable
和disable
。如果未定義,MInIO 會使用非同步站點複寫。
- mc admin replicate rm, remove
版本變更自 RELEASE.2023-01-11T03-14-16Z:
mc admin replicate remove
子命令已重新命名為mc admin replicate rm
。從站點複寫配置中移除一個或多個站點。
請記住,如果您將來打算將站點重新新增至站點複寫配置,則該站點必須沒有可複寫的資料。
移除包含 minio2 的現有站點複寫配置中,所有已連線站點的站點複寫。這會刪除所有參與站點的站點複寫配置。
mc admin replicate rm \ minio2 \ --all \ --force
從包含 minio2 的現有站點複寫配置中,移除別名為
minio5
和minio6
的站點。mc admin replicate rm \ minio2 \ minio5 \ minio6 \ --force
此命令具有以下語法
mc [GLOBALFLAGS] admin rm \ TARGET \ ALIAS1 \ [ALIAS2...] \ --all \ --force
- TARGET
- 必要
參與目標站點複寫的現有 MinIO 部署的別名。除非要從站點複寫中移除所有站點,否則請勿使用要移除的部署別名。
- ALIAS
- 選用
要從站點複寫配置中移除的現有 MinIO 部署的別名。可以重複使用以移除其他站點。
- mc admin replicate info
傳回站點複寫配置中站點的相關資訊。
mc admin replicate info minio1
mc [GLOBALFLAGS] admin replicate info ALIAS
- ALIAS
- 必要
站點複寫配置中現有 MinIO 部署的別名。
- mc admin replicate status
顯示站點複寫配置中站點、儲存貯體、使用者、群組或原則的狀態。
顯示包含站點
minio1
的站點複寫配置的整體複寫狀態。mc admin replicate status minio1
顯示包含站點
minio1
的站點複寫配置中,跨站點的儲存貯體複寫狀態。mc admin replicate status \ minio1 \ --buckets
顯示包含站點
minio1
的站點複寫配置中,名為images
的儲存貯體跨站點的站點複寫狀態。mc admin replicate status \ minio1 \ --bucket images
顯示包含站點
minio1
的站點複寫配置中,使用者janedoe
跨站點的設定的站點複寫狀態。mc admin replicate status \ minio1 \ --user janedoe
以上範例的輸出類似如下
Bucket replication status: ● 30/30 Buckets in sync Policy replication status: ● 5/5 Policies in sync User replication status: ● 3/3 Users in sync Group replication status: No Groups present ILM Expiry Rules replication status: ● 5/5 ILM Expiry Rules in sync Object replication status: Replication status since 1 day Summary: Replicated: 0 objects (0 B) Queued: - 0 objects, (0 B) (avg: 0 objects, 0 B; max: 0 objects, 0 B) Received: 0 objects (0 B)
顯示包含站點
minio1
的站點複寫配置中,規則 ID 為ckok9v5b4dtgofkbi6tg
的 ILM 到期規則的跨站點站點複寫狀態。mc admin replicate status minio1 --ilm-expiry-rule ckok9v5b4dtgofkbi6tg
輸出類似如下
● ILM Expiry Rule replication summary for: ckok9v5b4dtgofkbi6tg ILMExpiryRule | MINIO1 | MINIO2 ILM Expiry Rule | ✔ | ✔
mc [GLOBALFLAGS] admin replicate status \ TARGET \ [--all] \ [--buckets] \ [--bucket nameOfBucket] \ [--groups] \ [--group nameOfGroup] \ [--ilm-expiry-rules] \ [--ilm-expiry-rule <rule ID>] \ [--policies] \ [--policy nameOfPolicy] \ [--users] \ [--user accessKey]
- TARGET
- 必要
站點複寫配置中現有 MinIO 部署的別名。
- mc admin replicate resync
在資料遺失時,將複寫配置中一個站點的資料重新同步到複寫配置中的第二個站點。
以下命令開始重新同步程序,以從
minio1
還原minio2
mc admin replicate resync start minio1 minio2
以下命令顯示目前正在進行的重新同步的狀態。
mc admin replicate resync status minio1 minio2
以下命令停止正在進行的重新同步。
mc admin replicate resync cancel minio1 minio2
mc [GLOBALFLAGS] admin replicate resync start|status|cancel ALIAS1 ALIAS2
將
ALIAS1
取代為具有要還原資料的站點別名。將
ALIAS2
取代為需要重新同步資料的站點別名。
- alias1
站點複寫配置中,具有您想要重新同步到另一個站點之資料的現有 MinIO 部署的別名。
- alias2
站點複寫配置中,需要從另一個站點重新同步資料的現有 MinIO 部署的別名。
全域旗標
此命令支援任何全域旗標。