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
描述
The 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
以下命令使用 ILM 过期规则同步在对等站点
minio1
、minio2
和minio3
之间创建新的站点复制配置。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
表示千字节Mi
表示兆字节Gi
表示千兆字节Ti
表示太字节
例如,以下命令将
myminio
部署上的复制限制为不超过每秒 2 千兆字节。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 部署的别名,需要从另一个站点重新同步数据。
全局标志
此命令支持任何全局标志。