Gestione una tarea de contenedor con Amazon ECS y Amazon SNS - AWS Step Functions

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.

Gestione una tarea de contenedor con Amazon ECS y Amazon SNS

En este proyecto de ejemplo se muestra cómo ejecutar un AWS Fargate tarea y, a continuación, enviar un Amazon SNS notificación basada en si el trabajo se realiza correctamente o no. Al implementar este proyecto de ejemplo, se creará un AWS Step Functions máquina de estados, una Fargate clúster y un Amazon SNS tema.

En este proyecto, Step Functions utiliza una máquina de estados para llamar al Fargate tarea de forma sincrónica. A continuación, espera a que la tarea se realice correctamente o no y envía un Amazon SNS tema con un mensaje sobre si el trabajo se realizó correctamente o no.

En este proyecto de muestra se implementan los siguientes recursos:

  • Un registro AWS Fargate Clúster

  • Un SNS tema de Amazon

  • Un registro AWS Step Functions máquina de estado

  • ¿Relacionado AWS Identity and Access Management (IAM) roles

Paso 1: Crear la máquina de estado

  1. Abra la consola de Step Functions y seleccione Crear máquina de estado.

  2. Busque y elija Administrar una tarea de contenedor. Elija Siguiente para continuar.

  3. Elija Ejecutar una demostración para crear un ready-to-deploy flujo de trabajo y de solo lectura, o elija Construir a partir de ella para crear una definición de máquina de estados editable sobre la que pueda crear e implementar posteriormente.

    En el siguiente diagrama se muestra el gráfico del flujo de trabajo del proyecto de ejemplo:

    Diagrama ilustrativo del ejemplo de máquina de estados del proyecto.
  4. Elija Utilizar plantilla para continuar con la selección.

Los siguientes pasos dependen de la elección anterior:

  1. Realice una demostración: puede revisar la máquina de estados antes de crear un proyecto de solo lectura con los recursos desplegados por AWS CloudFormation a tu Cuenta de AWS.

    Puede ver la definición de la máquina de estados y, cuando esté listo, elija Implementar y ejecutar para implementar el proyecto y crear los recursos.

    La creación de recursos y permisos puede tardar hasta 10 minutos en implementarse. Puede utilizar el enlace Stack ID para supervisar el progreso en AWS CloudFormation.

    Una vez completada la implementación, deberías ver tu nueva máquina de estados en la consola.

  2. Aproveche esta información: puede revisar y editar la definición del flujo de trabajo. Es posible que tengas que establecer valores para los marcadores de posición en el proyecto de ejemplo antes de intentar ejecutar tu flujo de trabajo personalizado.

nota

Es posible que se apliquen cargos estándar por los servicios implementados en tu cuenta.

Paso 2: Ejecutar la máquina de estado

  1. En la página Máquina de estado, elija su proyecto de muestra.

  2. En la página del proyecto de muestra, seleccione Iniciar ejecución.

  3. En el cuadro de diálogo Iniciar ejecución, haga lo siguiente:

    1. (Opcional) Introduce un nombre de ejecución personalizado para anular el valor predeterminado generado.

      ASCIINombres no identificables y registro

      Step Functions acepta nombres para máquinas de estados, ejecuciones, actividades y etiquetas que no contengan ASCII caracteres. Como estos personajes no funcionan con Amazon CloudWatch, te recomendamos que utilices solo ASCII caracteres para poder hacer un seguimiento de las métricas CloudWatch.

    2. (Opcional) En el cuadro de entrada, introduce los valores de entrada comoJSON. Puede omitir este paso si está realizando una demostración.

    3. Seleccione Iniciar ejecución.

    La consola Step Functions lo dirigirá a una página de detalles de ejecución en la que puede elegir estados en la vista de gráficos para explorar la información relacionada en el Detalles del paso panel.

¡Enhorabuena!

Ahora debería disponer de una demostración en ejecución o de una definición de máquina de estados que pueda personalizar.