

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS CLI を使用してレプリケーターを作成する
<a name="msk-replicator-create-cli"></a>

`create-replicator` コマンドを使用して MSK レプリケーターを作成します。開始する前に、 [MSK レプリケーターの作成に必要な IAM アクセス許可](msk-replicator-create-iam-perms.md)と が完了していることを確認してください[ソースクラスターとターゲットクラスターを準備する](msk-replicator-prepare-clusters.md)。

**注記**  
以下の例は、2 つの MSK クラスター間のレプリケーションを示しています。MSK レプリケーターは、セルフマネージド Apache Kafka クラスターと Express ブローカーを使用した MSK プロビジョンドクラスター間のレプリケーションもサポートします。このシナリオをカバーする API の例については、「」を参照してください[セルフマネージド Kafka クラスターの CreateReplicator API の例](msk-replicator-external-api-examples.md)。

```
aws kafka create-replicator \
  --replicator-name "<replicator-name>" \
  --service-execution-role-arn "arn:aws:iam::<account-id>:role/<role-name>" \
  --kafka-clusters '[
    {
      "AmazonMskCluster": {"MskClusterArn": "<source-cluster-arn>"},
      "VpcConfig": {
        "SubnetIds": ["<subnet-1>", "<subnet-2>"],
        "SecurityGroupIds": ["<security-group-id>"]
      }
    },
    {
      "AmazonMskCluster": {"MskClusterArn": "<target-cluster-arn>"},
      "VpcConfig": {
        "SubnetIds": ["<subnet-1>", "<subnet-2>"],
        "SecurityGroupIds": ["<security-group-id>"]
      }
    }
  ]' \
  --replication-info-list '[
    {
      "SourceKafkaClusterArn": "<source-cluster-arn>",
      "TargetKafkaClusterArn": "<target-cluster-arn>",
      "TopicReplication": {
        "TopicsToReplicate": [".*"],
        "CopyTopicConfigurations": true,
        "CopyAccessControlListsForTopics": true,
        "DetectAndCopyNewTopics": true,
        "StartingPosition": {"Type": "LATEST"},
        "TopicNameConfiguration": {"Type": "PREFIXED"}
      },
      "ConsumerGroupReplication": {
        "ConsumerGroupsToReplicate": [".*"],
        "ConsumerGroupOffsetSyncMode": "LEGACY"
      },
      "TargetCompressionType": "NONE"
    }
  ]'
```

レプリケーターの作成時にログ配信を有効にするには、 `--log-delivery`パラメータを含めます。次の例では、Amazon CloudWatch Logs、Amazon S3、Amazon Data Firehose へのログ配信を有効にします。

```
aws kafka create-replicator \
  --replicator-name "<replicator-name>" \
  --service-execution-role-arn "arn:aws:iam::<account-id>:role/<role-name>" \
  --kafka-clusters '[
    {
      "AmazonMskCluster": {"MskClusterArn": "<source-cluster-arn>"},
      "VpcConfig": {
        "SubnetIds": ["<subnet-1>", "<subnet-2>"],
        "SecurityGroupIds": ["<security-group-id>"]
      }
    },
    {
      "AmazonMskCluster": {"MskClusterArn": "<target-cluster-arn>"},
      "VpcConfig": {
        "SubnetIds": ["<subnet-1>", "<subnet-2>"],
        "SecurityGroupIds": ["<security-group-id>"]
      }
    }
  ]' \
  --replication-info-list '[
    {
      "SourceKafkaClusterArn": "<source-cluster-arn>",
      "TargetKafkaClusterArn": "<target-cluster-arn>",
      "TopicReplication": {
        "TopicsToReplicate": [".*"],
        "CopyTopicConfigurations": true,
        "CopyAccessControlListsForTopics": true,
        "DetectAndCopyNewTopics": true,
        "StartingPosition": {"Type": "LATEST"},
        "TopicNameConfiguration": {"Type": "PREFIXED"}
      },
      "ConsumerGroupReplication": {
        "ConsumerGroupsToReplicate": [".*"]
      },
      "TargetCompressionType": "NONE"
    }
  ]' \
  --log-delivery '{
    "ReplicatorLogDelivery": {
      "CloudWatchLogs": {
        "Enabled": true,
        "LogGroup": "/mskr/logs/<log-group-name>"
      },
      "S3": {
        "Enabled": true,
        "Bucket": "<s3-bucket-name>",
        "Prefix": "<optional-prefix>"
      },
      "Firehose": {
        "Enabled": true,
        "DeliveryStream": "<delivery-stream-name>"
      }
    }
  }'
```

1 つ以上のログ配信先を有効にできます。Amazon CloudWatch Logs のみを有効にするには、 フィールド`S3`と `Firehose`フィールドを省略するか、`Enabled`値を に設定します`false`。ログ配信の詳細については、「」を参照してください[MSK レプリケーターログ](msk-replicator-logs.md)。

**注記**  
ログ配信が有効になっている場合、IAM ロールには、設定されたログ送信先に書き込むために必要な追加のアクセス許可が必要です。必要なアクセス許可については、「 [AWS サービスからのログ記録の有効化](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-vended-logs-permissions.html)」を参照してください。

API リファレンスの詳細については、「Amazon MSK API リファレンス」の「[CreateReplicator](https://docs.aws.amazon.com/msk/1.0/apireference-replicator/v1-replicators.html#CreateReplicator)」を参照してください。

## 選択的トピックレプリケーション
<a name="msk-replicator-cli-selective-topics"></a>

`topicsToReplicate` および で正規表現パターン`topicsToExclude`を使用して、レプリケートされるトピックを制御します。次の例では、 で始まるトピックをレプリケート`prod-`し、 で始まるトピックを除外します`test-`。

```
"topicReplication": {
  "topicsToReplicate": ["prod-.*"],
  "topicsToExclude": ["test-.*"],
  "detectAndCopyNewTopics": true
}
```

## レプリケーターのステータスを確認する
<a name="msk-replicator-cli-verify-status"></a>

レプリケーターを作成したら、 `describe-replicator` コマンドを使用してそのステータスを確認します。

```
aws kafka describe-replicator \
  --replicator-arn arn:aws:kafka:us-east-1:123456789012:replicator/my-replicator/xxx
```

レプリケーターは `CREATING` → `RUNNING`状態に進みます。レプリケーターが `RUNNING` ステータスになるまで約 30 分かかります。に移行する場合は`FAILED`、「」を参照してください[Amazon MSK レプリケーターのトラブルシューティング](msk-replicator-troubleshooting.md)。