Creación de una asignación de orígenes de eventos de Lambda para un origen de eventos de Amazon MSK - AWS Lambda

Creación de una asignación de orígenes de eventos de Lambda para un origen de eventos de Amazon MSK

Para crear una asignación de orígenes de eventos, puede usar la consola de Lambda, la AWS Command Line Interface (CLI) o un AWS SDK.

nota

Al crear la asignación de orígenes de eventos, Lambda crea una ENI de hiperplano en la subred privada que contiene su clúster de MSK, lo que permite a Lambda establecer una conexión segura. Esta ENI de hiperplano utiliza la configuración de subredes y grupos de seguridad del clúster de MSK, no la de su función de Lambda.

Los siguientes pasos de la consola agregan un clúster de Amazon MSK como desencadenador para su función de Lambda. Internamente, esto crea un recurso de asignación de orígenes de eventos.

Cómo agregar un desencadenador Amazon MSK a su función de Lambda (consola)
  1. Abra la Página de función en la consola de Lambda.

  2. Elija el nombre de la función de Lambda a la que desea agregar el desencadenador de Amazon MSK.

  3. En Descripción general de la función, elija Agregar desencadenador.

  4. En Configuración del desencadenador, elija MSK.

  5. Para especificar los detalles de su clúster de Kafka, haga lo siguiente:

    1. Para clúster de MSK, seleccione su clúster.

    2. En Nombre del tema, ingrese el nombre del tema de Kafka del que se consumirán los mensajes.

    3. En ID de grupo de consumidores, ingrese el ID de un grupo de consumidores de Kafka al que unirse, si corresponde. Para obtener más información, consulte ID del grupo de consumidores personalizable en Lambda.

  6. En Autenticación del clúster, lleve a cabo las configuraciones necesarias. Para obtener más información acerca de la autenticación del clúster, consulte Configuración de métodos de autenticación de clústeres en Lambda.

    • Active Usar autenticación si desea que Lambda lleve a cabo la autenticación con su clúster de MSK al establecer una conexión. Se recomienda la autenticación.

    • Si usa la autenticación, en Método de autenticación, elija el método de autenticación que desee utilizar.

    • Si utiliza autenticación, en Clave de Secrets Manager, elija la clave de Secrets Manager que contiene las credenciales de autenticación necesarias para acceder al clúster.

  7. En Configuración del sondeador de eventos, lleve a cabo las configuraciones necesarias.

    • Elija Activar desencadenador para activar el desencadenador inmediatamente después de crearlo.

    • Elija si desea configurar el modo aprovisionado para su asignación de orígenes de eventos. Para obtener más información, consulte Modos de escalado del sondeo de eventos en Lambda.

      • Si configura el modo aprovisionado, ingrese un valor para Sondeos de eventos mínimos, un valor para Sondeos de eventos máximos, o ambos valores.

    • En Posición inicial, elija cómo quiere que Lambda comience a leer desde su flujo. Para obtener más información, consulte Posiciones iniciales de flujos y sondeo en Lambda.

  8. En Procesamiento en lotes, lleve a cabo las configuraciones necesarias. Para obtener más información acerca del procesamiento en lotes, consulte Comportamiento de procesamiento por lotes.

    1. Para el Tamaño del lote, establezca el número máximo de mensajes para recibir un solo lote.

    2. En Periodo del lote, ingrese el número máximo de segundos que Lambda emplea a fin de recopilar registros antes de invocar la función.

  9. En Filtrado, lleve a cabo las configuraciones necesarias. Para obtener más información sobre cómo filtrar, consulte Filtrado de eventos con un origen de eventos de Amazon MSK.

    • En Criterios de filtro, agregue definiciones de criterios de filtro para determinar si se debe procesar o no un evento.

  10. En Gestión de fallos, lleve a cabo las configuraciones necesarias. Para obtener más información sobre la gestión de fallos, consulte Capturar lotes descartados para un origen de eventos de Amazon MSK.

    • En Destino en caso de error, especifique el ARN de su destino en caso de error.

  11. En Etiquetas, ingrese las etiquetas que desee asociar a esta asignación de orígenes de eventos.

  12. Para crear el desencadenador, elija Add (Añadir).

También puede crear la asignación de orígenes de eventos mediante la AWS CLI con el comando create-event-source-mapping. El siguiente ejemplo crea una asignación de orígenes de eventos para asignar la función de Lambda my-msk-function al tema AWSKafkaTopic, empezando por el mensaje LATEST. Este comando también usa el objeto SourceAccessConfiguration para indicar a Lambda que utilice la autenticación SASL/SCRAM al conectarse al clúster.

aws lambda create-event-source-mapping \ --event-source-arn arn:aws:kafka:us-east-1:111122223333:cluster/my-cluster/fc2f5bdf-fd1b-45ad-85dd-15b4a5a6247e-2 \ --topics AWSKafkaTopic \ --starting-position LATEST \ --function-name my-kafka-function --source-access-configurations '[{"Type": "SASL_SCRAM_512_AUTH","URI": "arn:aws:secretsmanager:us-east-1:111122223333:secret:my-secret"}]'

Si el clúster usa la autenticación mTLS, incluya un objeto SourceAccessConfiguration que especifique CLIENT_CERTIFICATE_TLS_AUTH y un ARN de clave de Secrets Manager. Esto se muestra en el siguiente comando:

aws lambda create-event-source-mapping \ --event-source-arn arn:aws:kafka:us-east-1:111122223333:cluster/my-cluster/fc2f5bdf-fd1b-45ad-85dd-15b4a5a6247e-2 \ --topics AWSKafkaTopic \ --starting-position LATEST \ --function-name my-kafka-function --source-access-configurations '[{"Type": "CLIENT_CERTIFICATE_TLS_AUTH","URI": "arn:aws:secretsmanager:us-east-1:111122223333:secret:my-secret"}]'

Cuando el clúster utiliza la autenticación de IAM, no necesita un objeto SourceAccessConfiguration. Esto se muestra en el siguiente comando:

aws lambda create-event-source-mapping \ --event-source-arn arn:aws:kafka:us-east-1:111122223333:cluster/my-cluster/fc2f5bdf-fd1b-45ad-85dd-15b4a5a6247e-2 \ --topics AWSKafkaTopic \ --starting-position LATEST \ --function-name my-kafka-function