バケットのデータレプリケーションルールを構成します。Object Storage Service (OSS) は、クロスリージョンレプリケーション (CRR) と同一リージョン内レプリケーション (SRR) の 2 つのデータレプリケーション機能を提供します。
使用上の注意
権限
デフォルトでは、Alibaba Cloud アカウントは、アカウント内のリソースに対するフル権限を持っています。一方、RAM ユーザーと Alibaba Cloud アカウントに関連付けられている RAM ロールは、最初は権限を持っていません。RAM ユーザーまたはロールを使用してリソースを管理するには、「RAM ポリシー」または「バケットポリシー」を使用して必要な権限を付与する必要があります。
API | アクション | 説明 |
PutBucketReplication |
| バケットのデータレプリケーションルールを構成します。 |
| レプリケーションがアカウントをまたぐ場合、またはレプリケーションに RAM ロールが指定されている場合は、ソースバケットとターゲットバケットの両方でこの操作に必要な権限を持っている必要があります。 |
コマンド構文
ossutil api put-bucket-replication --bucket value --replication-configuration value [flags]パラメーター | タイプ | 説明 |
--bucket | string | バケットの名前。 |
--replication-configuration | string | データレプリケーションの構成。 |
put-bucket-replication コマンドは PutBucketReplication 操作に対応します。PutBucketReplication 操作のパラメーターの詳細については、「PutBucketReplication」をご参照ください。
--replication-configuration
--replication-configuration 構成オプションは、XML 形式と JSON 形式の両方をサポートしています。
XML 形式:
<ReplicationConfiguration> <Rule> <PrefixSet> <Prefix>string</Prefix> <Prefix>string</Prefix> </PrefixSet> <Action>string</Action> <Destination> <Bucket>string</Bucket> <Location>string</Location> <TransferType>string</TransferType> </Destination> <HistoricalObjectReplication>string</HistoricalObjectReplication> </Rule> </ReplicationConfiguration>JSON 形式:
{ "Rule": { "PrefixSet": { "Prefix": [ "string", "string" ] }, "Action": "string", "Destination": { "Bucket": "string", "Location": "string", "TransferType": "string" }, "HistoricalObjectReplication": "enabled" } }
詳細については、「コマンドラインオプション」をご参照ください。
例
次の例は、examplebucket という名前のバケットのデータレプリケーションルールを構成する方法を示しています。
replication-configuration.xml という名前の構成ファイルを作成し、次のコードを構成ファイルに追加します。
<?xml version="1.0" encoding="UTF-8"?> <ReplicationConfiguration> <Rule> <PrefixSet> <Prefix>prefix_1</Prefix> <Prefix>prefix_2</Prefix> </PrefixSet> <Action>PUT</Action> <Destination> <Bucket>destBucket</Bucket> <Location>oss-cn-hangzhou</Location> <TransferType>oss_acc</TransferType> </Destination> <HistoricalObjectReplication>enabled</HistoricalObjectReplication> </Rule> </ReplicationConfiguration>ossutil api put-bucket-replication --bucket examplebucket --replication-configuration file://replication-configuration.xmlreplication-configuration.json という名前の構成ファイルを作成し、次のコードを構成ファイルに追加します。
{ "Rule": { "PrefixSet": { "Prefix": [ "prefix_1", "prefix_2" ] }, "Action": "PUT", "Destination": { "Bucket": "destBucket", "Location": "oss-cn-hangzhou", "TransferType": "oss_acc" }, "HistoricalObjectReplication": "enabled" } }ossutil api put-bucket-replication --bucket examplebucket --replication-configuration file://replication-configuration.json次のコマンドのパラメーターを JSON 形式で構成します。
ossutil api put-bucket-replication --bucket examplebucket --replication-configuration "{\"Rule\":{\"PrefixSet\":{\"Prefix\":[\"prefix_1\",\"prefix_2\"]},\"Action\":\"PUT\",\"Destination\":{\"Bucket\":\"destBucket\",\"Location\":\"oss-cn-hangzhou\",\"TransferType\":\"oss_acc\"},\"HistoricalObjectReplication\":\"enabled\"}}"