文档基于2025-10-10日社区最终版构建     
切换到英文版    进入演示系统    进入交流社区

MinIO Documentation

mc replicate update

在版本 RELEASE.2022-12-24T15-21-38Z 中的变更:mc replicate update替换mc admin bucket remote update命令。

Changed in version RELEASE.2022-11-07T23-47-39Z:mc replicate update替换mc replicate edit命令。

语法

Themc replicate update命令修改现有的存储桶复制规则.

mc [GLOBALFLAGS] replicate update FLAGS [FLAGS] ARGUMENTS [ARGUMENTS]

以下命令修改现有的复制规则mydata桶上的myminioMinIO 部署:

mc replicate update --id "c76um9h4b0t1ijr36mug"           \
   --replicate "delete,delete-marker,existing-objects"  \
   myminio/mydata

新的复制配置将所有版本化删除操作、删除标记创建以及现有对象同步到远程MinIO部署。

该命令具有以下语法:

mc [GLOBALFLAGS] replicate update              \
                 --remote-bucket string          \
                 [--bandwidth "string"]            \
                 [--healthcheck-seconds integer]   \
                 [--id "string"]                   \
                 [--limit-upload "string"]         \
                 [--limit-download "string"]       \
                 [--path "string"]                 \
                 [--priority int]                  \
                 [--proxy]
                 [--replicate "string"]            \
                 [--state string]
                 [--storage-class "string"]        \
                 [--sync string]                          \
                 [--tags "string"]                 \
                 ALIAS
  • Brackets[]表示可选参数。

  • 共享同一行的参数是相互依赖的。

  • 使用竖线分隔的参数|操作符是互斥的。

将示例复制到文本编辑器中,根据需要修改,然后在终端/Shell中运行命令。

参数

ALIAS
必需

The别名MinIO 部署的名称以及要修改复制规则的存储桶或存储桶前缀的完整路径。 例如:

mc replicate update --id "c75nrap4b0talo3ipthg" [FLAGS]
--id
必需

指定已配置的复制规则的唯一ID。 使用mc replicate ls列出存储桶复制规则的命令。

--bandwidth
可选

将带宽速率限制在不超过指定的 KiB/s、MiB/s 或 GiB/s 速率范围内。 有效单位包括:

  • B对于字节

  • K对于千字节

  • G用于千兆字节

  • T对于太字节

  • Ki对于千位字节

  • Gi对于吉比字节

  • Ti对于太字节

例如,要将带宽速率限制在不超过 1 GiB/s,请使用以下命令:

--limit-upload 1Gi

如果未指定,MinIO 不会限制带宽速率。

--healthcheck-seconds
可选

检查远程存储桶运行状况的时间间隔(以秒为单位)。

如果未指定,MinIO 使用 60 秒的间隔。

--limit-download
可选

限制下载速率不超过指定的速率,单位可以是 KiB/s、MiB/s 或 GiB/s。 有效单位包括:

  • B对于字节

  • K对于千字节

  • G用于千兆字节

  • T对于太字节

  • Ki对于千位字节

  • Gi对于吉比字节

  • Ti对于太字节

例如,要将下载速率限制在不超过 1 GiB/s,请使用以下命令:

--limit-download 1G

如果未指定,MinIO 使用无限制的下载速率。

--limit-upload
可选

限制上传速率不超过指定的速率(单位:KiB/s、MiB/s 或 GiB/s)。 有效单位包括:

  • B对于字节

  • K对于千字节

  • G用于千兆字节

  • T对于太字节

  • Ki对于千位字节

  • Gi对于吉比字节

  • Ti对于太字节

例如,要将上传速率限制在不超过 1 GiB/s,请使用以下命令:

--limit-upload 1G

如果未指定,MinIO 使用无限制的上传速率。

--path
可选

为远程存储桶启用路径式查找支持。

有效值包括:

  • on- 使用路径查找来找到远程存储桶

  • off- 使用资源定位符样式(如域名或IP地址)查找来定位远程存储桶

  • auto- 要求 MinIO 识别要用于查找远程存储桶的正确查找类型

当未定义时,MinIO 使用auto值。

--priority
可选

指定复制规则的整数优先级。 该值必须在源存储桶的所有其他规则中必须是唯一的。 数值越高意味着更高优先级高于所有其他规则。

--proxy
可选

在定义存储桶之间的双活复制时,请勿使用代理。

有效值包括:

  • enable- 启用主动-主动复制中的代理功能。

  • disable- 在主动-主动复制中禁用代理。

默认情况下,MinIO 默认使用enable.

--remote-bucket
可选

指定远程位置的凭据、目标部署和存储桶。 值可以是别名和基于存储桶、基于位置(IP 或 URL)或基于路径的。

例如,一个基于 URL 的目标可能如下所示:

--remote-bucket https://user:secret@myminio.cloudprovider.tld:9001/bucket

基于别名的目标可能如下所示:

--remote-bucket minio-target/my-bucket
--replicate
可选

指定以下值的逗号分隔列表以启用扩展复制功能:

  • delete- 指示 MinIO 进行复制DELETE 操作到目标存储桶。

  • delete-marker- 指示 MinIO 将删除标记复制到目标存储桶。

  • replica-metadata-sync- 指示 MinIO 将复制对象的仅元数据更改同步回源。 此功能仅影响双向主动-主动复制配置。

    省略此值将指示 MinIO 停止将仅元数据的更改复制回源。

  • existing-objects- 指示 MinIO 复制在配置或启用复制之前创建的对象。 MinIO 默认情况下不会将现有对象同步到远程目标。

    现有对象的复制欲了解更多信息。

--state
可选

启用或禁用复制规则。 指定以下值之一:

  • "enable"- 启用复制规则。

  • "disable"- 禁用复制规则。

禁用复制期间创建的对象在启用规则后不会立即具备复制资格。 您必须通过包含现有对象来明确启用复制"existing-objects"到指定的复制功能列表中mc replicate update --replicate.

现有对象的复制欲了解更多信息。

--storage-class
可选

指定 MinIO存储类别应用于复制对象。

--sync
可选

为此远程目标启用同步复制。

默认情况下,MinIO 使用异步复制。

--tags
可选

指定一个或多个与符号&MinIO 用于筛选要复制的对象的分离键值对标签。例如:

mc replicate update --id "ID" --tags "TAG1=VALUE&TAG2=VALUE&TAG3=VALUE"

MinIO 会将复制规则应用于任何标签集包含指定复制标签的对象。

全局标志

此命令支持任何全局标志.

示例

修改现有复制规则

使用mc replicate update修改现有的复制规则。

mc replicate update ALIAS/PATH \
   --id ID                     \
   [--FLAGS]
  • 替换ALIAS随着aliasMinIO 部署的。

  • 替换PATH包含规则所在的存储桶路径或存储桶前缀。

  • 替换ID使用要修改规则的唯一标识符。mc replicate ls获取存储桶上的复制规则列表及其对应的标识符。

Note

修改复制配置规则不会影响已经复制的对象。 例如,修改--tags过滤器不会移除不符合过滤条件的复制对象。

更新现有复制规则的凭据

使用mc replicate update修改现有的复制规则。

mc replicate update ALIAS/PATH \
   --id ID                     \
   --remote-bucket https://user:secret@minio.mycloud.tld:9001/mybucket
  • 替换ALIAS随着aliasMinIO 部署的。

  • 替换PATH包含规则所在的存储桶路径或存储桶前缀。

  • 替换ID使用更新后的凭据、路径和存储桶。

禁用或启用现有复制规则

使用mc replicate update随着--state用于禁用或启用复制规则的标志。

mc replicate update ALIAS/PATH \
   --id ID \
   --state "disable"|"enable"
  • 替换ALIAS随着aliasMinIO 部署的。

  • 替换PATH包含规则所在的存储桶路径或存储桶前缀。

  • 替换ID使用要修改规则的唯一标识符。mc replicate ls获取存储桶上的复制规则列表及其对应的标识符。

  • 请指定其中一项"disable" or "enable"--state禁用或启用复制规则的标志。

Note

MinIO 需要启用现有对象复制在禁用复制规则后写入或删除的对象需要同步。

对于规则没有现有对象复制,MinIO 仅同步在复制规则生效期间发出的写入或删除操作已启用.

行为

所需权限

MinIO 强烈建议创建专门用于支持存储桶复制操作的用户。 参见mc admin usermc admin policy有关向 MinIO 部署添加用户和策略的更完整文档。

以下策略提供了在部署上配置和启用复制的权限。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "admin:SetBucketTarget",
                "admin:GetBucketTarget",
                "admin:ListBatchJobs",
                "admin:DescribeBatchJob",
                "admin:StartBatchJob",
                "admin:CancelBatchJob"
            ],
            "Effect": "Allow",
            "Sid": "EnableRemoteBucketConfiguration"
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetReplicationConfiguration",
                "s3:ListBucket",
                "s3:ListBucketMultipartUploads",
                "s3:GetBucketLocation",
                "s3:GetBucketVersioning",
                "s3:GetObjectRetention",
                "s3:GetObjectLegalHold",
                "s3:PutReplicationConfiguration"
            ],
            "Resource": [
                "arn:aws:s3:::*"
            ],
            "Sid": "EnableReplicationRuleConfiguration"
        }
    ]
}
  • The"EnableRemoteBucketConfiguration"该语句授予创建远程目标的权限,以支持复制。

  • The"EnableReplicationRuleConfiguration"statement grants permission for creating replication rules on a bucket. The"arn:aws:s3:::*resource 应用复制权限到任何源部署上的存储桶。您可以根据需要将用户策略限制为特定存储桶。

使用mc admin policy create将此策略添加到每个 作为复制源的部署中。使用mc admin user add在部署上创建一个用户并mc admin policy attach将该策略关联到该新用户。

以下策略提供了启用复制数据同步的权限进入部署。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetReplicationConfiguration",
                "s3:ListBucket",
                "s3:ListBucketMultipartUploads",
                "s3:GetBucketLocation",
                "s3:GetBucketVersioning",
                "s3:GetBucketObjectLockConfiguration",
                "s3:GetEncryptionConfiguration"
            ],
            "Resource": [
                "arn:aws:s3:::*"
            ],
            "Sid": "EnableReplicationOnBucket"
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetReplicationConfiguration",
                "s3:ReplicateTags",
                "s3:AbortMultipartUpload",
                "s3:GetObject",
                "s3:GetObjectVersion",
                "s3:GetObjectVersionTagging",
                "s3:PutObject",
                "s3:PutObjectRetention",
                "s3:PutBucketObjectLockConfiguration",
                "s3:PutObjectLegalHold",
                "s3:DeleteObject",
                "s3:ReplicateObject",
                "s3:ReplicateDelete"
            ],
            "Resource": [
                "arn:aws:s3:::*"
            ],
            "Sid": "EnableReplicatingDataIntoBucket"
        }
    ]
}
  • The"EnableReplicationOnBucket"statement grants permission for a remote target to retrieve bucket-level configuration for supporting replication operations on全部MinIO 部署中的存储桶。要将策略限制到特定存储桶,请将这些存储桶指定为Resource类似于数组"arn:aws:s3:::bucketName".

  • The"EnableReplicatingDataIntoBucket"statement grants permission for a remote target to synchronize data into任何MinIO 部署中的存储桶。要将策略限制到特定存储桶,请将这些存储桶指定为Resource类似于数组"arn:aws:s3:::bucketName/*".

使用mc admin policy create将此策略添加到每个 作为复制目标的部署中。使用mc admin user add在部署上创建一个用户并mc admin policy attach将该策略关联到该新用户。

S3 Compatibility

Themc命令行工具专为兼容 AWS S3 API 而构建,并已通过 MinIO 和 AWS S3 测试,确保功能与行为符合预期。

MinIO 不提供对其他 S3 兼容服务的保证,因为它们的 S3 API 实现方式未知,因此不受支持。尽管mc命令可能按文档所述工作,任何此类使用风险自负。