Skip to main content
Nota: La política que se muestra en el video es permisiva y está pensada solo para una puesta en marcha rápida. Consulte la guía de IAM de mínimo privilegio más abajo.

Requisitos previos

Suponemos que:

El conector oficial de Kafka de ClickHouse para Amazon MSK

Reúne los datos de conexión

Para conectarse a ClickHouse con HTTP(S), necesita esta información: Los detalles de su servicio de ClickHouse Cloud están disponibles en la consola de ClickHouse Cloud. Seleccione un servicio y haga clic en Connect: Elija HTTPS. Los detalles de conexión se muestran en un comando curl de ejemplo. Si usa ClickHouse autogestionado, los detalles de conexión los establece su administrador de ClickHouse.

Pasos

  1. Asegúrese de conocer ClickHouse Connector Sink
  2. Cree una instancia de MSK.
  3. Cree y asigne un rol de IAM.
  4. Descargue un archivo jar desde la página de versiones de ClickHouse Connect Sink.
  5. Instale el archivo jar descargado en la página de plugins personalizados de la consola de Amazon MSK.
  6. Si el conector se comunica con una instancia pública de ClickHouse, habilite el acceso a Internet.
  7. Proporcione un nombre de topic, el hostname de la instancia de ClickHouse y la contraseña en la configuración.

Permisos de IAM recomendados (mínimo privilegio)

Use el conjunto mínimo de permisos necesario para su configuración. Comience con la configuración básica que se indica a continuación y agregue servicios opcionales solo si los utiliza.
  • Use el bloque de Glue solo si usa AWS Glue Schema Registry.
  • Use el bloque de Secrets Manager solo si obtiene credenciales/truststores desde Secrets Manager. Limite el alcance del ARN.
  • Use el bloque de S3 solo si carga artefactos (p. ej., truststore) desde S3. Limítelo al bucket/prefijo.
Véase también: Prácticas recomendadas de Kafka – IAM.

Optimización del rendimiento

Una forma de aumentar el rendimiento es ajustar el tamaño del lote y el número de registros que se recuperan de Kafka añadiendo lo siguiente a la configuración del worker:
Los valores específicos que utilice variarán en función de la cantidad de registros deseada y del tamaño de cada registro. Por ejemplo, los valores predeterminados son:
Puede consultar más detalles (tanto sobre la implementación como sobre otras consideraciones) en la documentación oficial de Kafka y Amazon MSK.

Notas sobre redes para MSK Connect

Para que MSK Connect pueda conectarse a ClickHouse, recomendamos que su clúster de MSK esté en una subred privada con un NAT privado conectado para el acceso a Internet. A continuación se indican las instrucciones para configurarlo. Tenga en cuenta que las subredes públicas son compatibles, pero no se recomiendan debido a la necesidad de asignar continuamente una dirección IP elástica a su ENI; AWS proporciona más detalles aquí
  1. Crear una subred privada: Cree una nueva subred dentro de su VPC y desígnela como subred privada. Esta subred no debe tener acceso directo a Internet.
  2. Crear una puerta de enlace NAT: Cree una puerta de enlace NAT en una subred pública de su VPC. La puerta de enlace NAT permite que las instancias de su subred privada se conecten a Internet o a otros servicios de AWS, pero impide que Internet inicie una conexión con esas instancias.
  3. Actualizar la tabla de rutas: Agregue una ruta que dirija el tráfico destinado a Internet a la puerta de enlace NAT
  4. Asegurar la configuración de los grupos de seguridad y las ACL de red: Configure sus grupos de seguridad y sus ACL de red (listas de control de acceso) para permitir el tráfico correspondiente.
    1. Desde las ENI de los workers de MSK Connect hacia los brokers de MSK en el puerto TLS (normalmente 9094).
    2. Desde las ENI de los workers de MSK Connect hacia el endpoint de ClickHouse: 9440 (TLS nativo) o 8443 (HTTPS).
    3. Permita tráfico entrante en el SG del broker desde el SG de los workers de MSK Connect.
    4. Para ClickHouse self-hosted, abra el puerto configurado en su server (8123 para HTTP de forma predeterminada).
  5. Adjuntar grupos de seguridad a MSK: Asegúrese de que estos grupos de seguridad estén asociados a su clúster de MSK y a los workers de MSK Connect.
  6. Conectividad con ClickHouse Cloud:
    1. Endpoint público + lista de IP permitidas: requiere salida NAT desde subredes privadas.
    2. Conectividad privada donde esté disponible (por ejemplo, peering de VPC/PrivateLink/VPN). Asegúrese de que los nombres de host DNS y la resolución DNS de la VPC estén habilitados, y de que DNS pueda resolver el endpoint privado.
  7. Validar la conectividad (lista de comprobación rápida):
    1. Desde el entorno del connector, resuelva el DNS bootstrap de MSK y conéctese mediante TLS al puerto del broker.
    2. Establezca una conexión TLS con ClickHouse en el puerto 9440 (o 8443 para HTTPS).
    3. Si utiliza servicios de AWS (Glue/Secrets Manager), permita la salida hacia esos endpoints.
Última modificación el 3 de julio de 2026