View a markdown version of this page

Migre de clústeres Apache Kafka que no sean de MSK a Amazon MSK Provisioned - Transmisión administrada de Amazon para Apache Kafka

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Migre de clústeres Apache Kafka que no sean de MSK a Amazon MSK Provisioned

Puede usar MSK Replicator para migrar las cargas de trabajo de Apache Kafka de entornos autogestionados a clústeres aprovisionados de Amazon MSK. MSK Replicator admite la migración de datos desde las implementaciones de Kafka (versión 2.8.1 o posterior de Kafka) que tengan SASL/SCRAM habilitada la autenticación TLS (mTLS) u OAuth mutua. SASL/OAUTHBEARER

nota

SASL/SCRAM, los mTLS o la SASL/OAUTHBEARER autenticación solo son necesarios para que MSK Replicator se conecte a su clúster autogestionado de Kafka. Sus aplicaciones cliente pueden seguir utilizando sus mecanismos de autenticación existentes.

Requisitos previos

Antes de comenzar, asegúrese de que dispone de lo siguiente:

  1. Clúster Apache Kafka de origen con la versión 2.8.1 o posterior

  2. SASL/SCRAM, mTLS o SASL/OAUTHBEARER autenticación habilitada en el clúster de origen

  3. El cifrado SSL está configurado en el clúster de origen

  4. Conectividad de red mediante AWS Site-to-Site VPN o AWS Direct Connect

  5. Subredes de VPC configuradas para acceder a Secrets Manager

Para obtener instrucciones detalladas, consulte Configure los requisitos previos para MSK Replicator con clústeres autogestionados de Apache Kafka.

Paso 1: Crear un clúster aprovisionado de Amazon MSK

Cree un clúster aprovisionado por MSK con la autenticación de IAM habilitada. Un mínimo de tres agentes en tres zonas de disponibilidad. Consulte Prepare el clúster de destino.

Paso 2: Cree un rol de ejecución de IAM

Adjunte la política AWSMSKReplicatorExecutionRole gestionada y configure la política de confianza parakafka.amazonaws.com. Agregue permisos en línea para AWS Secrets Manager (y AWS KMS si sus secretos lo son CMK-encrypted) por. Permisos de SER adicionales para las claves administradas por el cliente SASL/SCRAM SASL/OAUTHBEARER, las MTLs y las claves administradas por el cliente Consulte Configure los requisitos previos para MSK Replicator con clústeres autogestionados de Apache Kafka.

Paso 3: Configurar SASL/SCRAM, usar mTLS o SASL/OAUTHBEARER SSL en un clúster autogestionado

Configure la autenticación en su clúster autogestionado. Para SASL/SCRAM, cree un usuario de SCRAM dedicado con los permisos de ACL necesarios. En el caso de los mTLS, configure un receptor SSL con autenticación mediante certificado de cliente. SASL/OAUTHBEAREREn caso contrario, configure sus corredores para OAUTHBEARER y registre el proveedor de identidad (IDP) que vende los tokens de acceso. Configure los certificados SSL. Consulte Configure los requisitos previos para MSK Replicator con clústeres autogestionados de Apache Kafka.

Paso 4: Almacene las credenciales en AWS Secrets Manager 

Cree un secreto con los pares clave-valor apropiados para su tipo de autenticación. Para SASL/SCRAMusername, incluir y password certificate campos. En el caso de los MTLs, incluya privateKey los campos certificate y (si lo desea, en privateKeyPassword el caso de las claves privadas cifradas). Para SASL/OAUTHBEARER usar el mecanismo de credenciales del cliente, incluya los client_secret campos «client_idy». Consulte Configure los requisitos previos para MSK Replicator con clústeres autogestionados de Apache Kafka.

Paso 5: Crear el replicador

Utilice la CreateReplicator API con la posición EARLIEST inicial, la replicación con el mismo nombre de tema y synchroniseConsumerGroupOffsets configúrela true en. El director de IAM que llama CreateReplicator debe tener los permisos de llamada a la API que se describen en. Permisos de IAM obligatorios para crear un Replicador MSK Si planea configurar la replicación bidireccional para que tenga capacidad de reversión (paso 6), configúrela también ENHANCED en consumerGroupOffsetSyncMode los replicadores directos e inversos. Espere aproximadamente 30 minutos para que el replicador alcance el estado de ejecución. Consulte CreateReplicator Ejemplos de API para clústeres autogestionados de Kafka.

Paso 6: (opcional) Configurar la replicación bidireccional

Cree un replicador inverso desde el clúster aprovisionado por MSK hasta el clúster autogestionado para obtener capacidades de reversión. Identifique ambos clústeres en el replicador inverso exactamente como los identificó en el replicador directo. Consulte Ejemplo de replicación bidireccional.

Paso 7: Supervisar el progreso de la replicación

Supervise las siguientes métricas:

  • MessageLag(debería llegar a 0)

  • ReplicationLatency

  • ConsumerGroupOffsetSyncFailure(debe ser 0)

  • ConsumerGroupCount

  • OffsetLag (MSK Cluster) y OffsetLag (Non-MSK Cluster)

Para obtener más información, consulte Supervisar la replicación.

Paso 8: migrar las aplicaciones

Siga estos pasos para migrar sus aplicaciones:

  1. Impida que los productores escriban a clústeres autogestionados

  2. Reconfigure a los productores para que se conviertan en un clúster aprovisionado por MSK con la autenticación de IAM

  3. MessageLagSupervise hasta que llegue a 0

  4. Detenga a los consumidores en un clúster autogestionado

  5. Reconfigure a los consumidores en el clúster aprovisionado por MSK

Paso 9: (opcional) Volver al clúster autogestionado

Si se configuró la replicación bidireccional, puede invertir los pasos de migración para volver al clúster autogestionado. El replicador inverso (aprovisionado por MSK → Externo) habrá mantenido sincronizado el clúster autogestionado, de modo que los consumidores puedan ser redirigidos de nuevo sin perder datos.