View a markdown version of this page

Configure un nombre de dominio personalizado de principio a fin - 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.

Configure un nombre de dominio personalizado de principio a fin

En este tema se explica la configuración del clúster para los nombres de dominio personalizados. La capa de red (balanceador de carga de red, DNS y certificado TLS) es un requisito previo que debes poseer, y se explica en detalle en Cómo configurar un nombre de dominio personalizado para tu clúster de Amazon MSK en el blog de Big Data. AWS Con la red instalada, los pasos siguientes abarcan la configuración del clúster.

Verifique la red antes de aplicar la configuración

Al presentar la solicitudcustom.advertised.listeners, el nombre de dominio personalizado reemplaza las direcciones predeterminadas del listener anulado. La capa de red debe estar instalada y verificada antes de aplicar la configuración. Si los clientes no pueden resolver el dominio personalizado, pierden la conectividad.

Paso 1: Añada el dominio personalizado a su configuración de Amazon MSK

Cree o actualice una configuración de Amazon MSK que incluya la custom.advertised.listeners propiedad y que coincida con los nombres de host y los puertos que ha aprovisionado en el balanceador de carga de red. En el caso de un clúster de IAM de tres agentes dirigido por un balanceador de carga de red con los puertos 9001—9003, coloque la propiedad en un archivo.

custom.advertised.listeners=CLIENT_IAM://b-{broker_id}.example.com:9000+{broker_id}

A continuación, cree la configuración y pase el archivo como propiedades del servidor.

aws kafka create-configuration \ --name "custom-domain-iam" \ --description "Custom advertised listeners for CLIENT_IAM" \ --server-properties fileb://custom-domain-config.txt

fileb://Utilícelo (nofile://) para AWS CLI leer el archivo como bytes y codificarlo en base64. Pasar el valor entre líneas es frágil debido a los corchetes. {broker_id} Deje el {broker_id} texto literal en el archivo, ya que Amazon MSK lo resuelve por agente en el momento de la solicitud. La respuesta devuelve la configuración Arn yLatestRevision.Revision, que utilizará en el siguiente paso.

Paso 2: aplicar la configuración

Aplica la configuración a tu clúster con UpdateClusterConfiguration la consola AWS CLI AWS CloudFormation, el AWS CDK o Terraform. Este es el mismo flujo de trabajo que ya utiliza para los cambios en la configuración del broker.

aws kafka update-cluster-configuration \ --cluster-arn your-cluster-arn \ --configuration-info arn=configuration-arn,revision=revision \ --current-version current-cluster-version

Usa la DescribeCluster operación para buscar la versión actual de tu clúster. Las versiones de clúster no son enteros simples.

Amazon MSK valida la configuración de forma sincrónica antes de aplicar nada, por lo que un valor con formato incorrecto nunca llega a sus agentes. Amazon MSK rechaza una configuración no válida con un error HTTP 400. Para ver ejemplos de errores, consulteErrores de configuración de nombres de dominio personalizados. Solucione el problema notificado y vuelva a realizar la solicitud.

Paso 3: Haz un seguimiento de la implementación

aws kafka describe-cluster-operation-v2 \ --cluster-operation-arn operation-arn

Una vez aceptada la configuración, Amazon MSK la aplica mediante un reinicio continuo. Espere hasta que se informe UPDATE_COMPLETE de la operación. Si informaUPDATE_FAILED, un corredor no podría aplicar el cambio. La implementación se detiene en ese bróker, el resto de los brókers mantienen su configuración anterior y usted puede corregir la configuración y volver a aplicarla para recuperarla.

Paso 4: Verificar

Confirma que los clientes pueden conectarse a través del dominio personalizado. Para ello, haz una lista de los temas de un cliente que utilice la configuración de autenticación de tu oyente.

Si puedes enumerar los temas a través del punto final del dominio personalizado, los clientes se conectarán correctamente a través de tu dominio personalizado. Si se notificó la operación, UPDATE_COMPLETE pero los clientes no pueden conectarse, la configuración del clúster es correcta, pero es probable que la capa de red necesite atención. Comprueba lo siguiente:

  • Ruta de red: confirma que la regla de escucha, grupo objetivo y grupo de seguridad del balanceador de carga de red existe para el intermediario y el puerto que usa el cliente, y que se puede acceder al balanceador de carga de red desde la red del cliente.

  • Resolución de DNS: confirma que el dominio personalizado se envía a tu balanceador de carga de red desde todas las redes en las que se ejecuten tus clientes de Apache Kafka.

  • Certificado: confirma que el certificado TLS del balanceador de carga de red incluye el nombre de host del broker resuelto (mediante el nombre común o un nombre alternativo del sujeto) y que el cliente confía en la CA (raíz e intermediaria en el caso de una CA privada).

Escalado y reemplazo del intermediario

Cuando se escala el clúster o se sustituye un agente durante la recuperación automática, Amazon MSK aplica automáticamente la configuración al nuevo agente. Amazon MSK {broker_id} busca el ID del intermediario, sin necesidad de realizar ningún paso manual por parte del clúster.

nota

Añada el identificador, el grupo objetivo y el registro DNS correspondientes de Network Load Balancer para cualquier agente nuevo. La capa de red no se escala automáticamente.

Eliminar un dominio personalizado

Para volver a las MSK-generated direcciones de Amazon predeterminadas, elimina la custom.advertised.listeners propiedad de tu configuración de Amazon MSK y aplica la configuración actualizada usando. UpdateClusterConfiguration Amazon MSK realiza un reinicio continuo y los agentes vuelven a anunciar sus direcciones originales. Asegúrese de que sus clientes puedan acceder a las MSK-generated direcciones originales de Amazon antes de eliminar la configuración de dominio personalizada.