Exportación de su flujo de trabajo a plantillas de IaC - AWS Step Functions

Exportación de su flujo de trabajo a plantillas de IaC

La consola de AWS Step Functions ofrece la posibilidad de exportar y descargar los flujos de trabajo guardados como plantillas de AWS CloudFormation o AWS SAM (SAM). Para las Regiones de AWS que admiten AWS Infrastructure Composer, también se ofrece la posibilidad de exportar los flujos de trabajo a Infrastructure Composer y navegar a la consola de Infrastructure Composer, donde puede seguir trabajando con la plantilla recién generada.

Opciones de configuración de plantillas

Esta característica está disponible para las siguientes opciones. Si exporta y descarga un archivo de plantilla de IaC, la consola mostrará las opciones que se aplican a la máquina de estado guardada para su selección. Si exporta a Infrastructure Composer, la consola de Step Functions implementa automáticamente las configuraciones que se aplican a su máquina de estado.

  • Incluir el rol de IAM creado por la consola en su nombre: esta opción exporta las políticas de los roles de ejecución. Construye un rol de IAM en la plantilla y lo asocia al recurso de la máquina de estado. Esta opción solo es aplicable si la máquina de estado tiene un rol de ejecución creado por la consola.

  • Incluir un grupo de registros de CloudWatch: construye un grupo de registros de CloudWatch en la plantilla y lo asocia al recurso de la máquina de estado. Esta opción solo se aplica si la máquina de estado tiene un grupo de registros de CloudWatch asociado y el nivel de registro no está establecido en OFF.

  • Sustituir las referencias de recursos con DefinitionSubstitutions: esta opción genera DefinitionSubstitutions para los siguientes componentes:

    • Campos S3 de Distributed Map.

    • Recursos Activity. La exportación incluye recursos Activity en la plantilla de CloudFormation para cualquier tarea Run Activity. La exportación también proporciona DefinitionSubstitutions que hacen referencia a los recursos Activity creados.

    • Cualquier ARN o S3URI en el campo Carga útil para todas las integraciones de servicios.

    • Además de los campos ARN y S3URI, la exportación genera DefinitionSubstitutions para otros campos de carga útil de la integración de servicios que se utilizan con frecuencia. Las integraciones de servicios específicas son las siguientes:

      • athena:startQueryExecution

      • batch:submitJob

      • dynamodb:getItem, dynamodb:updateItem, dynamodb:updateItem, dynamodb:deleteItem

      • ecs:runTask

      • glue:startJobRun

      • http:invoke

      • lambda:invoke

      • sns:publish

      • sqs:sendMessage

      • states:startExecution

Exportación y descarga de la plantilla IaC del flujo de trabajo

Cómo exportar su flujo de trabajo a un archivo de plantilla de IaC
  1. Abra la consola de Step Functions y seleccione la máquina de estado con la que desea trabajar. Asegúrese de guardar los cambios en la máquina de estado antes de continuar con el siguiente paso.

  2. Seleccione Exportar a una plantilla de CloudFormation o SAM en el menú Acciones.

  3. Seleccione Tipo como SAM o CloudFormation en el cuadro de diálogo que aparece.

    • Si ha seleccionado la plantilla de CloudFormation, a continuación, elija el formato de archivo JSON o YAML.

    • Si ha seleccionado la plantilla de SAM, no se mostrará ninguna opción de formato. La plantilla de SAM tiene el formato de archivo YAML de forma predeterminada.

  4. Expanda Configuraciones adicionales. Todas las opciones están seleccionadas de forma predeterminada. Revise y actualice la selección de opciones de su plantilla de IaC. Las opciones se describen con detalle en la sección anterior titulada Opciones de configuración de plantillas.

    Si una opción no se aplica a su flujo de trabajo específico, no aparecerá en el cuadro de diálogo.

  5. Seleccione Descargar para exportar y descargar el archivo de plantilla de IaC generado.

Exportación del flujo de trabajo directamente a AWS Infrastructure Composer

Cómo exportar su flujo de trabajo a Infrastructure Composer
  1. Abra la consola de Step Functions y seleccione la máquina de estado con la que desea trabajar. Asegúrese de guardar los cambios en la máquina de estado antes de continuar con el siguiente paso.

  2. Seleccione Exportar a Infrastructure Composer en el menú Acciones.

  3. Aparece el cuadro de diálogo Exportar a Infrastructure Composer. Puede utilizar el nombre predeterminado que aparece en el campo Nombre del bucket de transferencia o introducir un nombre nuevo. Los nombres de los buckets de Amazon S3 no pueden repetirse en ningún lado y deben seguir las reglas de nomenclatura de buckets.

  4. Seleccione Confirmar y crear el proyecto para exportar el flujo de trabajo a Infrastructure Composer.

  5. Para guardar su proyecto y la definición del flujo de trabajo en Infrastructure Composer, active el modo de sincronización local.

nota

Si ya ha utilizado la característica Exportar a Infrastructure Composer y ha creado un bucket de Amazon S3 con el nombre predeterminado, Step Functions puede volver a utilizar este bucket si aún existe. Acepte el nombre del bucket predeterminado en el cuadro de diálogo para volver a utilizar el bucket existente.

Configuración del bucket de transferencia de Amazon S3

El bucket de Amazon S3 que Step Functions crea para transferir su flujo de trabajo cifra automáticamente los objetos mediante el estándar de cifrado AES 256. Step Functions también configura el bucket para que utilice la condición de propietario del bucket para garantizar que solo su Cuenta de AWS pueda agregar objetos al bucket.

El nombre predeterminado del bucket usa el prefijo states-templates, una cadena alfanumérica de 10 dígitos y la Región de AWS en la que creó el flujo de trabajo: states-templates-amzn-s3-demo-bucket-us-east-1. Para evitar que se le agreguen cargos adicionales a su Cuenta de AWS, le recomendamos que elimine el bucket de Amazon S3 en cuanto termine de exportar su flujo de trabajo a Infrastructure Composer.

Se aplican los precios estándar de Amazon S3.

Permisos necesarios

Para usar la característica de exportación de Step Functions con Infrastructure Composer, necesita ciertos permisos para descargar una plantilla de AWS SAM y escribir la configuración de la plantilla en Amazon S3.

Si quiere descargar una plantilla AWS SAM, debe tener permiso para utilizar las siguientes acciones de la API:

Para que Step Functions escriba la configuración de su función en Amazon S3, debe tener permiso para usar las siguientes acciones de la API:

Si no puede exportar su configuración de la función a Infrastructure Composer, compruebe que su cuenta tenga los permisos necesarios para estas operaciones.