文件

mc admin replicate

在版本 RELEASE.2023-01-11T03-14-16Z 中變更

說明

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

建立新的站點複製設定或擴展現有的設定。

mc admin replicate info

傳回有關站點複製設定的資訊。

mc admin replicate resync

如果第二個站點遺失資料,則將內容從一個站點重新同步到第二個站點。

mc admin replicate rm

從參與站點複製中移除整個站點複製設定或一個或多個對等站點。

mc admin replicate status

顯示參與站點之間可複製資料的狀態。

mc admin replicate update

修改站點複製設定中指定對等站點的端點。

語法

mc admin replicate add

建立或擴展站點複製設定。 預設情況下,此設定使用非同步站點複製,這是 MinIO 建議的方式。

若要啟用同步站點複製,請使用此命令建立複製。 然後使用 mc admin replicate update --mode sync 來更新設定。

考量一個多站點 MinIO 拓撲,其中三個不同的 MinIO 部署使用以下別名minio1minio2minio3。所有三個站點都具有完整的雙向網路存取權限,並且站點之間的延遲很低。

mc admin replicate add minio1 minio2 minio3

以下命令會將現有的站點複製擴展為包含對等站點 minio1minio2minio3minio4 到一個額外的對等站點 minio5minio5 不包含任何資料。先列出所有現有的對等站點。最後列出要擴展到的站點。

如果任何現有站點無法連線,請先使用 mc admin replicate rm 移除無法連線的站點,然後繼續進行站點複製擴展。

mc admin replicate add minio1 minio2 minio3 minio4 minio5

以下命令會在對等站點 minio1minio2minio3 之間建立新的站點複製設定,其中包含 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 過期規則複製。已在對等點之間同步的現有規則不會從任何對等點移除。

--enable-ilm-expiry-replication
選用

新增於版本 mc: RELEASE.2023-12-02T02-03-28Z

開始對等站點之間的 ILM 過期規則複製。

--endpoint
必要

要與對等站點關聯的新端點或 URL。

--mode
選用

指定 MinIO 是同步還是非同步執行與對等點的複製作業。可用的值為 syncasync

預設為 async

--sync
選用

重要

RELEASE.2023-07-07T05-25-51Z 起,--sync 旗標已棄用。請改用 --mode

啟用或停用同步站點複寫。可用的值為 enabledisable。如果未定義,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 的現有站點複寫配置中,移除別名為 minio5minio6 的站點。

mc admin replicate rm      \
                   minio2  \
                   minio5  \
                   minio6  \
                   --force

此命令具有以下語法

mc [GLOBALFLAGS] admin rm          \
                       TARGET      \
                       ALIAS1      \
                       [ALIAS2...] \
                       --all       \
                       --force
TARGET
必要

參與目標站點複寫的現有 MinIO 部署的別名。除非要從站點複寫中移除所有站點,否則請勿使用要移除的部署別名。

ALIAS
選用

要從站點複寫配置中移除的現有 MinIO 部署的別名。可以重複使用以移除其他站點。

--all
選用

包含此旗標以移除為站點複寫配置的所有站點,並結束站點複寫配置。

--force
必要

此旗標會強制從站點複寫配置中移除指定的對等站點。

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 部署的別名

--all
選用

顯示所有可用的站點複寫狀態資訊。

--buckets
選用

顯示所有儲存貯體的複寫狀態。

--bucket
選用

透過在旗標後包含儲存貯體名稱來顯示特定儲存貯體的複寫狀態。

--groups
選用

顯示所有群組的複寫狀態。

--group
選用

透過在旗標後包含群組名稱來顯示特定群組的複寫狀態。

--ilm-expiry-rules
選用

新增於版本 mc: RELEASE.2023-12-02T02-03-28Z

顯示關於 ILM 到期規則的同步資訊。

--ilm-expiry-rule互斥

--ilm-expiry-rule
選用

新增於版本 mc: RELEASE.2023-12-02T02-03-28Z

顯示關於指定 ILM 到期規則的複寫狀態資訊。

--ilm-expiry-rules互斥

--policies
選用

顯示所有原則的複寫狀態。

--policy
選用

透過在旗標後包含原則名稱來顯示特定原則的複寫狀態。

--users
選用

顯示所有使用者的複寫狀態。

--user
選用

透過在旗標後包含使用者名稱來顯示特定使用者的複寫狀態。

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 取代為需要重新同步資料的站點別名。

start

從具有資料的站點啟動新的重新同步程序,到需要同步的第二個站點。

status

顯示為站點複寫配置的兩個站點之間,現有重新同步程序的狀態。

cancel

結束為站點複寫配置的兩個站點之間,目前正在進行的重新同步程序。

alias1

站點複寫配置中,具有您想要重新同步到另一個站點之資料的現有 MinIO 部署的別名

alias2

站點複寫配置中,需要從另一個站點重新同步資料的現有 MinIO 部署的別名

全域旗標

此命令支援任何全域旗標