Connectors - Transmisión gestionadada 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.

Connectors

Un conector integra sistemas externos y servicios de Amazon con Apache Kafka copiando continuamente los datos de streaming de un origen de datos a su clúster de Apache Kafka o copiando continuamente los datos de su clúster a un receptor de datos. Un conector también puede realizar una lógica ligera, como la transformación, la conversión de formato o el filtrado de datos antes de entregarlos a un destino. Los conectores de origen extraen datos de un origen de datos y los envían al clúster, mientras que los conectores de destino extraen datos del clúster y los envían a un receptor de datos.

En el siguiente diagrama, se ilustra la arquitectura de un conector. Un proceso de trabajo es un proceso de máquina virtual Java (JVM) que ejecuta la lógica del conector. Cada proceso de trabajo crea un conjunto de tareas que se ejecutan en subprocesos paralelos y realizan el trabajo de copiar los datos. Las tareas no almacenan el estado y, por lo tanto, se pueden iniciar, detener o reiniciar en cualquier momento para proporcionar una canalización de datos flexible y escalable.

Diagrama que muestra la arquitectura de un clúster de conectores.

Capacidad de conector

La capacidad total de un conector depende del número de procesos de trabajo que tenga el conector, así como del número de unidades de MSK Connect (MCU) por proceso de trabajo. Cada MCU representa 1 vCPU de computación y 4 GiB de memoria. La memoria de la MCU corresponde a la memoria total de una instancia de proceso de trabajo y no a la memoria en montón que está en uso.

Los trabajadores de MSK Connect consumen direcciones IP en las subredes proporcionadas por el cliente. Cada trabajador usa una dirección IP de una de las subredes proporcionadas por el cliente. Debe asegurarse de tener suficientes direcciones IP disponibles en las subredes proporcionadas en respuesta a una CreateConnector solicitud para tener en cuenta la capacidad especificada, especialmente cuando se escalan automáticamente los conectores, donde la cantidad de trabajadores puede fluctuar.

Para crear un conector, debe elegir uno de los dos modos de capacidad siguientes.

  • Aprovisionado: elija este modo si conoce los requisitos de capacidad del conector. Debe especificar dos valores:

    • El número de procesos de trabajo.

    • El número de MCU por proceso de trabajo.

  • Escalado automático: elija este modo si los requisitos de capacidad del conector son variables o si no los conoce de antemano. Cuando utiliza el modo de escalado automático, Amazon MSK Connect anula la propiedad tasks.max del conector con un valor que es proporcional al número de procesos de trabajo que se ejecutan en el conector y al número de MCU por proceso de trabajo.

    Debe especificar tres conjuntos de valores:

    • El número mínimo y máximo de procesos de trabajo.

    • Los porcentajes de reducción vertical y escalado horizontal para el uso de la CPU, que se determinan mediante la métrica CpuUtilization. Cuando la métrica CpuUtilization del conector supera el porcentaje de escalado horizontal, MSK Connect aumenta la cantidad de procesos de trabajo que trabajan en el conector. Cuando la métrica CpuUtilization cae por debajo del porcentaje de reducción horizontal, MSK Connect reduce la cantidad de procesos de trabajo. El número de procesos de trabajo siempre se mantiene dentro de los números mínimo y máximo que se especificaron al crear el conector.

    • El número de MCU por proceso de trabajo.

Para obtener más información acerca de los procesos de trabajo, consulte Procesos de trabajo. Para obtener más información sobre las métricas de MSK Connect, consulte Supervisión de MSK Connect.

Creación de un conector

Crear un conector mediante AWS Management Console
  1. Abra la consola de Amazon MSK en https://console.aws.amazon.com/msk/.

  2. En el panel izquierdo, en MSK Connect, seleccione Conectores.

  3. Elija Crear conector.

  4. Puede elegir entre usar un complemento personalizado existente para crear el conector o crear primero un complemento personalizado nuevo. Para obtener información acerca de los complementos personalizados y cómo crearlos, consulte Complementos. En este procedimiento, supongamos que tiene un complemento personalizado que desea usar. En la lista de complementos personalizados, busque el que desee usar, seleccione la casilla situada a la izquierda y, a continuación, elija Siguiente.

  5. Escriba un nombre y, opcionalmente, una descripción.

  6. Haga clic en el clúster al que desea conectarse.

  7. Especifique la configuración del conector. Los parámetros de configuración que debe especificar dependen del tipo de conector que desee crear. Sin embargo, algunos parámetros son comunes a todos los conectores, por ejemplo, los parámetros connector.class y tasks.max. A continuación, se muestra un ejemplo de configuración para el conector de recepción de Amazon S3 de Confluent.

    connector.class=io.confluent.connect.s3.S3SinkConnector tasks.max=2 topics=my-example-topic s3.region=us-east-1 s3.bucket.name=my-destination-bucket flush.size=1 storage.class=io.confluent.connect.s3.storage.S3Storage format.class=io.confluent.connect.s3.format.json.JsonFormat partitioner.class=io.confluent.connect.storage.partitioner.DefaultPartitioner key.converter=org.apache.kafka.connect.storage.StringConverter value.converter=org.apache.kafka.connect.storage.StringConverter schema.compatibility=NONE
  8. A continuación, debe configurar la capacidad del conector. Puede elegir entre dos modos de capacidad: aprovisionada y con escalado automático. Para obtener información sobre estas dos opciones, consulte Capacidad de conector.

  9. Elija la configuración de proceso de trabajo predeterminada o una configuración de proceso de trabajo personalizada. Para obtener información sobre la creación de configuraciones de procesos de trabajo personalizadas, consulte Procesos de trabajo.

  10. A continuación, especifique el rol de ejecución del servicio. Debe ser una función de IAM que MSK Connect pueda asumir y que conceda al conector todos los permisos que necesita para acceder a los recursos necesarios AWS . Estos permisos dependen de la lógica del conector. Para obtener información acerca de cómo crear este rol, consulte Rol de ejecución del servicio.

  11. Seleccione Siguiente, revise la información de seguridad y, a continuación, vuelva a seleccionar Siguiente.

  12. Especifique las opciones de registro que desee y elija Enviar. Para obtener más información acerca del registro, consulte Registro de MSK Connect.

  13. Elija Crear conector.

Para usar la API MSK Connect para crear un conector, consulte CreateConnector.