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.
Primeros pasos: crea una EventBridge pipa de Amazon
Para familiarizarnos con las tuberías y sus capacidades, utilizaremos una AWS CloudFormation plantilla para configurar una EventBridge tubería y los componentes asociados. Luego, podemos explorar varias características de la tubería.
La plantilla crea una EventBridge tubería que conecta una transmisión de una tabla de DynamoDB a una cola de Amazon SQS. Cada vez que se crea o modifica un registro en la tabla de la base de datos, la canalización envía el evento resultante a la cola.
La tubería desplegada se compone de:
Una tabla (y una transmisión) de DynamoDB que actúe como fuente de canalización y una cola de Amazon SQS como destino.
Una función de ejecución que concede EventBridge los permisos necesarios para acceder a la tabla de DynamoDB y a la cola de Amazon SQS.
La propia canalización, que contiene un filtro de eventos que selecciona únicamente los eventos generados al crear (insertar) o modificar un elemento de la tabla.
Para obtener detalles técnicos específicos de la plantilla, consultedetalles de la plantilla.
Crear la tubería mediante AWS CloudFormation
Para crear la tubería y sus recursos asociados, crearemos una CloudFormation plantilla y la usaremos para crear una pila que contenga una tubería de muestra, completa con el origen y el destino.
importante
Se te facturarán los recursos de Amazon utilizados si creas una pila a partir de esta plantilla.
Crear la plantilla
En primer lugar, crea la CloudFormation plantilla.
En la Plantilla sección, haz clic en el icono de copia de la pestaña JSON o YAML para copiar el contenido de la plantilla.
Pegue el contenido de la plantilla en un archivo nuevo.
Guarde el archivo localmente.
Creación de la pila de
A continuación, usa la plantilla que has guardado para aprovisionar una CloudFormation pila.
Abre la AWS CloudFormation consola.
En la página Stacks, en el menú Crear pila, elige entre los nuevos recursos (estándar).
Especifica la plantilla:
En Requisito previo, elija Elegir una plantilla existente.
En Especificar plantilla, elija Cargar un archivo de plantilla.
Elija Elegir archivo, navegue hasta el archivo de plantilla y elíjalo.
Elija Siguiente.
Especifique los detalles de la pila:
Introduzca un nombre de pila.
Para los parámetros, acepte los valores predeterminados o introduzca los suyos propios.
Elija Siguiente.
Configure las opciones de apilado:
En las opciones de error de pila, selecciona Eliminar todos los recursos recién creados.
nota
Al elegir esta opción, se evita que se le facturen los recursos cuya política de eliminación especifique que se conservarán incluso si se produce un error al crear la pila. Para obtener más información, consulte el
DeletionPolicy
atributo en la Guía del AWS CloudFormation usuario.Acepte todos los demás valores predeterminados.
En Capacidades, active la casilla para confirmar que se CloudFormation podrían crear recursos de IAM en su cuenta.
Elija Siguiente.
Revisa los detalles de la pila y selecciona Enviar.
AWS CloudFormation crea la pila. Una vez finalizada la creación de la pila, los recursos de la pila están listos para usarse. Puedes usar la pestaña Recursos de la página de detalles de la pila para ver los recursos que se aprovisionaron en tu cuenta.
Explorando las capacidades de Pipe
Una vez creada la tubería, puede usar la EventBridge consola para observar el funcionamiento de la tubería y probar la emisión de eventos.
¿Abrir la EventBridge consola en https://console.aws.amazon.com/events/casa? #/tubos
. -
Elija la tubería que ha creado.
En la página de detalles de la tubería, la sección Componentes de la tubería muestra los recursos que componen la tubería y contiene pestañas que proporcionan más detalles sobre cada componente.
Puedes encontrar el rol de ejecución que creamos para la tubería en la pestaña Configuración, en la sección Permisos.
Examinando el filtro de tubería
Antes de probar el funcionamiento de la tubería, examinemos el filtro que hemos especificado para controlar qué eventos se envían al objetivo. La canalización solo enviará al objetivo los eventos que coincidan con los criterios del filtro; todos los demás se descartarán. En este caso, solo queremos que los eventos generados cuando se crean o modifican las entradas de la tabla se envíen a la cola de Amazon SQS.
En la página de detalles de la tubería, en Componentes de tubería, seleccione la pestaña Filtrado.
Hemos incluido un filtro que selecciona solo los eventos en los que
eventName
está establecido enINSERT
oMODIFY
.{ "eventName": ["INSERT", "MODIFY"] }
Envío de eventos a través de la canalización
A continuación, generaremos eventos en la fuente de la tubería para comprobar que el filtrado y la entrega de la tubería funcionan correctamente. Para ello, crearemos y editaremos un elemento en la tabla de DynamoDB que especificamos como fuente de canalización.
En la página de detalles de la tubería, en Componentes de tubería, seleccione la pestaña Fuente.
En Fuente, elija el nombre de la transmisión de DynamoDB.
Esto abre la consola de DynamoDB en una ventana independiente, en la que se muestran los detalles de la tabla de origen.
Elija Explorar elementos de la tabla.
-
Genere un
INSERT
evento creando un elemento en la tabla:Seleccione Crear elemento.
Añade valores para los atributos del álbum y del artista.
Seleccione Crear elemento.
Genera un evento
DELETE
y unINSERT
evento editando el elemento:Elija el elemento de la lista y, en el menú Acciones, elija Editar elemento.
Introduzca un nuevo valor para el atributo Álbum o Artista.
Marque la casilla que confirma que está cambiando el valor de las claves del elemento y, a continuación, seleccione Recrear elemento.
Esto hace que el elemento se elimine y, a continuación, se vuelva a crear, lo que generará un
DELETE
evento y, a continuación, un evento nuevoINSERT
.
Genera un
MODIFY
evento añadiendo un atributo al elemento:Elija el elemento de la lista y, en el menú Acciones, elija Editar elemento.
En el menú Añadir nuevo atributo, seleccione Número.
Para el nombre del atributo, introduzca Año y, a continuación, introduzca un valor para el atributo. Elija Save and close.
Confirmar la entrega del evento a través de la tubería
Por último, confirmaremos que la tubería filtró y entregó correctamente los eventos que generamos al crear y editar el elemento de la tabla en DynamoDB.
En la página de detalles de la tubería, en Componentes de tubería, seleccione la pestaña Destino.
En Target, elija el nombre de la cola de Amazon SQS.
Esto abre la consola Amazon SQS en una ventana independiente, en la que se muestran los detalles de la cola de destino.
Seleccione Enviar y recibir mensajes.
En Recibir mensajes, seleccione Sondear los mensajes.
Amazon SQS carga los mensajes recibidos en la cola. Haga clic en un mensaje individual para ver sus detalles.
Debería haber tres mensajes de eventos en la cola:
Dos de este tipo
INSERT
, uno generado cuando se creó el elemento de la tabla por primera vez y el otro se generó al volver a crear el elemento cambiando un valor clave.Uno de tipo
MODIFY
, generado al añadir un atributo al elemento de la tabla.
Tenga en cuenta que no hay ningún mensaje de evento de este tipo
DELETE
en la cola, aunque se generó uno al eliminar y volver a crear el elemento de la tabla cambiando un valor clave. El filtro de tubo que especificamos solo seleccionaINSERT
yMODIFY
, por lo tanto, filtra elDELETE
evento en lugar de enviarlo a la cola.
Limpiar: eliminar recursos
Como último paso, eliminaremos la pila y los recursos que contiene.
importante
Se te facturarán los recursos de Amazon contenidos en la pila mientras exista.
Abre la AWS CloudFormation consola.
-
En la página Stacks, selecciona la pila creada a partir de la plantilla, selecciona Eliminar y, a continuación, confirma Eliminar.
CloudFormation inicia la eliminación de la pila y de todos los recursos que incluye.
CloudFormation detalles de la plantilla
Esta plantilla crea recursos y concede permisos en tu cuenta.
Recursos
La AWS CloudFormation plantilla de este tutorial creará los siguientes recursos en su cuenta:
importante
Se te facturarán los recursos de Amazon utilizados si creas una pila a partir de esta plantilla.
AWS::DynamoDB::Table
: una tabla de DynamoDB que actúa como fuente de eventos para la tubería.AWS::SQS::Queue
: una cola de Amazon SQS que actúa como objetivo de los eventos que se producen por la tubería.AWS::IAM::Role
: Una función de ejecución de IAM que otorga permisos al servicio EventBridge Pipes de su cuenta.AWS::Pipes::Pipe
: la tubería que conecta la tabla de DynamoDB con la cola de Amazon SQS.
Permisos
La plantilla incluye un AWS::IAM::Role
recurso que representa una función de ejecución. Este rol otorga al servicio EventBridge Pipes (pipes.amazonaws.com
) los siguientes permisos en su cuenta.
Los siguientes permisos se refieren a la tabla y transmisión de DynamoDB que la plantilla crea como origen de eventos para la canalización:
dynamodb:DescribeStream
dynamodb:GetRecords
dynamodb:GetShardIterator
dynamodb:ListStreams
El siguiente permiso se aplica a la cola de Amazon SQS que la pila crea como destino de la canalización:
sqs:SendMessage
CloudFormation plantilla
Guarda el siguiente código JSON o YAML como un archivo independiente para usarlo como CloudFormation plantilla en este tutorial.