mc replicate update
版本變更 RELEASE.2022-12-24T15-21-38Z:mc replicate update
取代了 mc admin bucket remote update
命令。
版本變更 RELEASE.2022-11-07T23-47-39Z:mc replicate update
取代了 mc replicate edit
命令。
語法
mc replicate update
命令會修改現有的儲存貯體複寫規則。
mc [GLOBALFLAGS] replicate update FLAGS [FLAGS] ARGUMENTS [ARGUMENTS]
以下命令會修改 myminio
MinIO 部署上 mydata
儲存貯體現有的複寫規則
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
方括號
[]
表示選用參數。同一行中的參數是互相依存的。
使用管線
|
運算子分隔的參數是互斥的。
請將範例複製到文字編輯器,並在終端機/Shell 中執行命令之前視需要修改。
參數
- 別名
- 必要
要修改複寫規則的 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 不會限制頻寬速率。
- --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
值。
- --proxy
- 選用
在儲存貯體之間定義主動-主動複寫時,請勿使用 Proxy。
有效值包括
enable
- 在主動-主動複寫中啟用 Proxy。disable
- 在主動-主動複寫中停用 Proxy。
預設情況下,MinIO 預設為
enable
。
- --remote-bucket
- 選用
指定遠端位置的認證、目的地部署和儲存貯體。值可以是別名和儲存貯體、基於位置 (IP 或 URL) 或基於路徑。
例如,基於 URL 的目標可能如下所示
--remote-bucket https://user:secret@myminio.cloudprovider.tld:9001/bucket
基於別名的目標可能如下所示
--remote-bucket minio-target/my-bucket
- --state
- 選用
啟用或停用複寫規則。指定下列其中一個值
"enable"
- 啟用複寫規則。"disable"
- 停用複寫規則。
停用複寫時建立的物件在啟用規則後不會立即符合複寫資格。您必須明確啟用現有物件的複寫,方法是將
"existing-objects"
加入指定給mc replicate update --replicate
的複寫功能清單。如需詳細資訊,請參閱現有物件的複寫。
- --storage-class
- 選用
指定要應用於複製物件的 MinIO 儲存類別。
全域標誌
此命令支援任何全域標誌。
範例
修改現有的複製規則
使用 mc replicate update
來修改現有的複製規則。
mc replicate update ALIAS/PATH \
--id ID \
[--FLAGS]
將
PATH
替換為規則存在的儲存桶或儲存桶前綴路徑。將
ID
替換為要修改規則的唯一識別碼。 使用mc replicate ls
來檢索儲存桶上的複製規則及其對應識別碼的清單。
注意
修改複製設定規則不會影響已複製的物件。例如,修改 --tags
篩選器不會導致刪除不符合篩選條件的複製物件。
更新現有複製規則的憑證
使用 mc replicate update
來修改現有的複製規則。
mc replicate update ALIAS/PATH \
--id ID \
--remote-bucket https://user:secret@minio.mycloud.tld:9001/mybucket
停用或啟用現有的複製規則
使用 mc replicate update
和 --state
標誌來停用或啟用複製規則。
mc replicate update ALIAS/PATH \
--id ID \
--state "disable"|"enable"
行為
所需權限
MinIO 強烈建議建立專門用於支援儲存桶複製操作的使用者。 有關向 MinIO 部署新增使用者和原則的更完整說明,請參閱 mc admin user
和 mc admin policy
。
以下原則提供在部署上設定和啟用複製的權限。
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"admin:SetBucketTarget",
"admin:GetBucketTarget"
],
"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"
}
]
}
"EnableRemoteBucketConfiguration"
陳述式授予建立遠端目標以支援複製的權限。"EnableReplicationRuleConfiguration"
陳述式授予在儲存桶上建立複製規則的權限。"arn:aws:s3:::*"
資源將複製權限應用於來源部署上的任何儲存桶。您可以根據需要將使用者原則限制為特定的儲存桶。
使用 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"
}
]
}
"EnableReplicationOnBucket"
陳述式授予遠端目標檢索儲存桶層級組態以支援 MinIO 部署中所有儲存桶的複製操作的權限。若要將原則限制為特定的儲存桶,請在Resource
陣列中將這些儲存桶指定為元素,類似於"arn:aws:s3:::bucketName"
。"EnableReplicatingDataIntoBucket"
陳述式授予遠端目標將資料同步到 MinIO 部署中任何儲存桶的權限。若要將原則限制為特定的儲存桶,請在Resource
陣列中將這些儲存桶指定為元素,類似於"arn:aws:s3:::bucketName/*"
。
使用 mc admin policy create
將此原則新增到充當複製目標的每個部署。使用 mc admin user add
在部署上建立使用者,並使用 mc admin policy attach
將原則與該新使用者關聯。
S3 相容性
mc 命令列工具是為與 AWS S3 API 相容而建置的,並已使用 MinIO 和 AWS S3 測試,以確保其預期的功能和行為。
MinIO 不保證其他與 S3 相容的服務,因為它們的 S3 API 實作是未知的,因此不受支援。 雖然 mc 命令可能會按照文件所述運作,但任何此類使用均由您自行承擔風險。