View a markdown version of this page

Crie um replicador usando a CLI AWS - Amazon Managed Streaming for Apache Kafka

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Crie um replicador usando a CLI AWS

Use o create-replicator comando para criar um replicador MSK. Antes de começar, verifique se você tem Permissões necessárias do IAM para criar um Replicador do MSK e concluiuPrepare clusters de origem e destino.

nota

Os exemplos abaixo mostram a replicação entre dois clusters MSK. O MSK Replicator também oferece suporte à replicação entre clusters Apache Kafka autogerenciados e clusters provisionados MSK com corretores Express. Para exemplos de API que abrangem esse cenário, consulteCreateReplicator Exemplos de API para clusters autogerenciados do Kafka.

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

Para habilitar a entrega de registros ao criar um replicador, inclua o --log-delivery parâmetro. O exemplo a seguir permite a entrega de CloudWatch registros para Amazon Logs, Amazon S3 e 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>" } } }'

Você pode habilitar um ou mais destinos de entrega de registros. Para ativar somente o Amazon CloudWatch Logs, omita os Firehose campos S3 e ou defina false seu Enabled valor como. Para obter mais informações sobre a entrega de registros, consulteRegistros do MSK Replicator.

nota

Quando a entrega de registros está ativada, sua função do IAM deve ter as permissões adicionais necessárias para gravar no destino do registro configurado. Para obter as permissões necessárias, consulte Habilitar o registro de AWS serviços.

Para obter a referência completa da API, consulte CreateReplicatora Referência de API do Amazon MSK.

Replicação seletiva de tópicos

Use padrões regex em topicsToReplicate e topicsToExclude para controlar quais tópicos são replicados. O exemplo a seguir replica tópicos que começam com prod- e exclui tópicos que começam com: test-

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

Verifique o status do replicador

Depois de criar um replicador, verifique seu status usando o describe-replicator comando:

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

O Replicador avança em CREATINGRUNNING estados. Aguarde aproximadamente 30 minutos para que o replicador alcance o RUNNING status. Se fizer a transição paraFAILED, consulteSolucionar problemas do Amazon MSK Replicator.