View a markdown version of this page

Création d'un réplicateur à l'aide de la CLI AWS - Amazon Managed Streaming for Apache Kafka

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'un réplicateur à l'aide de la CLI AWS

Utilisez la create-replicator commande pour créer un réplicateur MSK. Avant de commencer, assurez-vous que vous avez terminé Autorisations IAM requises pour créer un réplicateur MSK et que vous avez terminéPréparer les clusters source et cible.

Note

Les exemples ci-dessous montrent la réplication entre deux clusters MSK. MSK Replicator prend également en charge la réplication entre des clusters Apache Kafka autogérés et des clusters MSK Provisioned avec des courtiers Express. Pour des exemples d'API couvrant ce scénario, consultezCreateReplicator Exemples d'API pour les clusters Kafka autogérés.

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" } ]'

Pour activer la livraison du journal lors de la création d'un réplicateur, incluez le --log-delivery paramètre. L'exemple suivant permet de transmettre des CloudWatch journaux à Amazon Logs, Amazon S3 et 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>" } } }'

Vous pouvez activer une ou plusieurs destinations de livraison de journaux. Pour activer uniquement Amazon CloudWatch Logs, omettez les Firehose champs S3 et ou définissez leur Enabled valeur surfalse. Pour plus d'informations sur la livraison des journaux, consultezJournaux de MSK Replicator.

Note

Lorsque la livraison des journaux est activée, votre rôle IAM doit disposer des autorisations supplémentaires requises pour écrire sur la destination de journal configurée. Pour connaître les autorisations requises, consultez la section Activation de la journalisation à partir AWS des services.

Pour la référence complète de l'API, consultez CreateReplicatorle manuel Amazon MSK API Reference.

Réplication sélective de rubriques

Utilisez des modèles de regex dans topicsToReplicate et topicsToExclude pour contrôler quels sujets sont répliqués. L'exemple suivant reproduit les rubriques commençant par prod- et exclut les rubriques commençant test- par :

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

Vérifier l'état du réplicateur

Après avoir créé un réplicateur, vérifiez son état à l'aide de la describe-replicator commande suivante :

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

Le réplicateur passe par CREATINGRUNNING états. Attendez environ 30 minutes pour que le réplicateur atteigne RUNNING son statut. S'il passe àFAILED, voirRésoudre les problèmes liés à Amazon MSK Replicator.