¿Cómo puedo solucionar los problemas de un trabajo de AWS Glue entre cuentas para un clúster de Amazon MSK?

4 minutos de lectura
0

Quiero solucionar un error en un trabajo de AWS Glue que se conecta a un clúster de Amazon Managed Streaming para Apache Kafka (MSK) en todas las cuentas de AWS.

Resolución

Compruebe que el trabajo de AWS Glue pueda conectarse al clúster de Amazon MSK y, a continuación, solucione los problemas relacionados con el método de autenticación del trabajo de AWS Glue.

Comprobar la conectividad del trabajo de AWS Glue entre cuentas

Para comprobar que el trabajo de AWS Glue se puede conectar al clúster de Amazon MSK, siga estos pasos:

  1. Compruebe que la lista de control de acceso de la red (ACL de la red) de la conexión de AWS Glue permita el tráfico al clúster de Amazon MSK en Amazon Virtual Private Cloud (Amazon VPC) entre cuentas.
  2. Confirme que el grupo de seguridad del clúster de Amazon MSK permita el CIDR de subred de la conexión de AWS Glue en los puertos del servidor de arranque del clúster de Amazon MSK.
    Nota: Los grupos de seguridad de la conexión de AWS Glue deben contener una regla de entrada que haga referencia a sí misma para los puertos TCP necesarios.
  3. Compruebe que ha configurado correctamente las conexiones de emparejamiento de VPC entre el clúster de Amazon MSK y las VPC o subredes de la conexión de AWS Glue.
  4. Utilice el Analizador de accesibilidad para comprobar si un componente interfiere con la conectividad entre las VPC.
  5. Inicie una instancia de Amazon Elastic Compute Cloud (Amazon EC2) en la misma subred y grupo de seguridad que utiliza la conexión de AWS Glue.

Utilice Session Manager, una función de AWS Systems Manager o un cliente SSH para iniciar sesión en su instancia de EC2. A continuación, ejecute las siguientes pruebas:

telnet example-bootstrap-server-hostname example-bootstrap-server-port  
nc -zv example-bootstrap-server-hostname example-bootstrap-server-port   
dig example-bootstrap-server-hostname

Nota: En los comandos anteriores, sustituya los valores de ejemplo por sus valores. Si telnet no está instalado, ejecute sudo yum install telnet -y para instalarlo.

Si la salida incluye conexiones conectadas o establecidas, se verifica la conectividad del trabajo de AWS Glue.

Solución de problemas de autenticación

Para verificar la URL del servidor de arranque en la conexión de AWS Glue, complete los pasos siguientes:

  1. Obtenga los agentes de arranque de Amazon MSK.
  2. Abra la consola de AWS Glue.
  3. En el panel de navegación, en Catálogo de datos, seleccione Conexiones. También puede elegir Conexiones de datos en el panel de navegación.
  4. En Conexiones, seleccione la conexión y, a continuación, elija Acciones.
  5. En la lista desplegable, seleccione Editar.
  6. En Acceso a la conexión, compruebe que las URL del servidor de arranque de Kafka coincidan con las URL de la consola de Amazon MSK.
  7. Si las URL no coinciden, actualícelas de acuerdo con el método de autenticación que utilice el clúster de Amazon MSK. Utilice los números de puerto que coincidan con la configuración del agente:
    Para TLS/SSL, utilice el puerto 9094 para el acceso dentro de AWS y el puerto 9194 para el acceso público.
    Para SASL/SCRAM, utilice el puerto 9096 para el acceso dentro de AWS y el puerto 9196 para el acceso público.
  8. Seleccione Guardar cambios.

A continuación, realice las siguientes acciones en función del método de autenticación del clúster de Amazon MSK.

SASL/SCRAM-SHA-512

Utilice AWS Secrets Manager para verificar su nombre de usuario y contraseña. Si usa Secrets Manager para almacenar sus credenciales, compruebe que la subred de la conexión de AWS Glue pueda llegar al punto de enlace de Secret Manager.

Autenticación de cliente TLS/SSL

Para validar el certificado del almacén de claves y la contraseña del almacén de claves o la contraseña clave del cliente de Kafka, ejecute el siguiente comando:

keytool -list -v -keystore /pathtocert/kafka.client.keystore.jks -storepass 123456

Compruebe que el resultado contenga AWS Private Certificate Authority (AWS Private CA) que utiliza el clúster de Amazon MSK.

Si la salida no contiene el certificado, complete los pasos 5 a 11 de Configuración de un cliente para que use la autenticación para crear nuevos almacenes de claves.

Importante: Cree nuevos almacenes de claves para cada cliente con el mismo certificado privado que usa el clúster de Amazon MSK.

Cargue el certificado kafka.client.keystore.jks en Amazon Simple Storage Service (Amazon S3). A continuación, configure la conexión de AWS Glue Kafka con la ruta de S3 del certificado.

Autenticación de IAM

Compruebe que el rol de AWS Identity and Access Management (IAM) del trabajo de AWS Glue tenga la política de autorización correcta para el clúster de Amazon MSK.

Información relacionada

Creación de una conexión con Kafka

Transmisión de trabajos de ETL en AWS Glue

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un mes