Implementación del generador de cuentas para Terraform (AFT) de AWS Control Tower - AWS Control Tower

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.

Implementación del generador de cuentas para Terraform (AFT) de AWS Control Tower

Esta sección está destinada a los administradores de entornos de AWS Control Tower que deseen configurar el generador de cuentas para Terraform (AFT) en su entorno actual. Describe cómo configurar un entorno del generador de cuentas para Terraform (AFT) con una cuenta de administración de AFT nueva y dedicada.

nota

Un módulo Terraform implementa AFT. Este módulo está disponible en el repositorio AFT y todo el repositorio AFT se considera módulo. GitHub

Le recomendamos que consulte los módulos AFT en GitHub lugar de clonar el repositorio AFT. De esta forma puede controlar y consumir las actualizaciones de los módulos a medida que estén disponibles.

Para obtener más información sobre las versiones más recientes de la funcionalidad AWS Control Tower Account Factory for Terraform (AFT), consulte el archivo de versiones de este GitHub repositorio.

Requisitos previos para una implementación

Antes de configurar e iniciar su entorno AFT, debe disponer de los siguientes recursos:

  • Una región de origen para la zona de aterrizaje de AWS Control Tower. Para obtener más información, consulte How Regiones de AWS work with AWS Control Tower.

  • Una zona de aterrizaje de AWS Control Tower. Para obtener más información, consulte Plan your AWS Control Tower landing zone.

  • Una cuenta de administración de AFT, que puede aprovisionar en AWS Control Tower o aprovisionar por otros medios e inscribirla en AWS Control Tower.

  • Una versión y distribución de Terraform. Para obtener más información, consulte Terraform and AFT versions.

  • Un proveedor de VCS para rastrear y administrar cambios en el código y otros archivos. De forma predeterminada, AFT utiliza AWS CodeCommit. Para obtener más información, consulte ¿Qué es AWS CodeCommit? en la Guía AWS CodeCommit del usuario.

    Si va a implementar AFT por primera vez y no tiene un CodeCommit repositorio existente, debe elegir un proveedor de VCS externo, como GitHub o BitBucket. Para obtener más información, consulte Alternatives for version control of source code in AFT.

  • Un entorno de tiempo de ejecución en el que pueda ejecutar el módulo Terraform que instala AFT.

  • Opciones de características de AFT. Para obtener más información, consulte Enable feature options.

Configuración y lanzamiento del generador de cuentas para Terraform de AWS Control Tower

En los pasos siguientes se considera que conoce el flujo de trabajo de Terraform. También puede obtener más información sobre la implementación de AFT siguiendo el laboratorio de introducción a la AFT en el sitio web de AWS Workshop Studio.

Paso 1: lanzar la zona de aterrizaje de AWS Control Tower

Complete los pasos de Getting started with AWS Control Tower. En este paso puede crear la cuenta de administración de AWS Control Tower y configurar la zona de aterrizaje de AWS Control Tower.

nota

Asegúrese de crear un rol para la cuenta de administración de la Torre de Control de AWS que tenga AdministratorAccesscredenciales. Para obtener más información, consulte los siguientes temas:

Paso 2: Crear una nueva unidad organizativa para la AFT (se recomienda encarecidamente)

Le recomendamos que cree una unidad organizativa independiente en la zona de aterrizaje de su AWS Control Tower. En esta OU se aprovisiona la cuenta de administración de AFT. Cree la nueva OU y la cuenta de administración de AFT desde su cuenta de administración de AWS Control Tower. Para obtener más información, consulte Create a new OU.

Paso 3: aprovisionar la cuenta de administración de AFT

AFT requiere que aprovisione una AWS cuenta dedicada a las operaciones de administración de AFT. Cree la cuenta de administración de AFT al iniciar sesión en la cuenta de administración de AWS Control Tower asociada a su zona de aterrizaje de AWS Control Tower. Puede aprovisionar la cuenta de administración de AFT desde la consola de AWS Control Tower seleccionando Crear cuenta en la página de la organización o por otros medios. Para obtener más información, consulte Aprovisionar cuentas con AWS Service Catalog Account Factory.

nota

Si ha creado una OU independiente para AFT, asegúrese de seleccionar esta OU al crear la cuenta de administración de AFT.

El aprovisionamiento completo de la cuenta de administración de AFT puede tardar hasta 30 minutos.

Paso 4: verificar que el entorno de Terraform esté disponible para la implementación

En este paso se considera que tiene experiencia con Terraform y que dispone de procedimientos para su ejecución. Para obtener más información, consulte Command: init en el sitio web HashiCorp para desarrolladores.

nota

AFT es compatible con la versión de Terraform 1.6.0 o posterior.

Paso 5: llamar al módulo del generador de cuentas para Terraform para implementar AFT

Llame al módulo AFT con el rol que creó para la cuenta de administración de la Torre de Control Tower de AWS que tiene AdministratorAccesscredenciales. AWS Control Tower aprovisiona un módulo de Terraform a través de la cuenta de administración de AWS Control Tower que establece toda la infraestructura necesaria para orquestar las solicitudes del generador de cuentas de AWS Control Tower.

Puede ver el módulo AFT en el repositorio AFT de GitHub. Todo el GitHub repositorio se considera el módulo AFT. Consulta el archivo README para obtener información sobre las entradas necesarias para ejecutar el módulo de AFT e implementar AFT. Como alternativa, puede ver el módulo de AFT en el registro de Terraform.

El módulo de AFT incluye un parámetro aft_enable_vpc que especifica si AWS Control Tower aprovisiona recursos de cuenta dentro de una nube privada virtual (VPC) en la cuenta de administración central de AFT. De forma predeterminada, el parámetro está definido como true. Si establece este parámetro en false, AWS Control Tower implementa AFT sin utilizar una VPC ni recursos de red privados, como puertas de enlace NAT o puntos de conexión de VPC. La deshabilitación de aft_enable_vpc puede ayudar a reducir el costo operativo de AFT en algunos patrones de uso.

nota

Para volver a habilitar el parámetro aft_enable_vpc (cambiar el valor de false a true), es posible que tenga que ejecutar el comando terraform apply dos veces seguidas.

Si tiene canalizaciones en el entorno establecidas para administrar Terraform, puede integrar el módulo de AFT en el flujo de trabajo existente. De lo contrario, ejecute el módulo de AFT desde cualquier entorno que esté autenticado con las credenciales necesarias.

El tiempo de espera provoca un error en la implementación. Te recomendamos usar credenciales AWS Security Token Service (STS) para asegurarte de que dispones de un tiempo de espera suficiente para una implementación completa. El tiempo de espera mínimo para las AWS STS credenciales es de 60 minutos. Para obtener más información, consulte Temporary security credentials in IAM en la Guía del usuario de AWS Identity and Access Management .

nota

Puede esperar hasta 30 minutos para que AFT termine de implementarse a través del módulo Terraform.

Paso 6: administrar el archivo de estado de Terraform

Al implementar AFT, se genera un archivo de estado de Terraform. Este artefacto describe el estado de los recursos que Terraform ha creado. Si tiene previsto actualizar la versión de AFT, asegúrese de preservar el archivo de estado de Terraform o configure un backend de Terraform con Amazon S3 y DynamoDB. El módulo de AFT no administra un estado del backend de Terraform.

nota

Es responsable de proteger el archivo de estado de Terraform. Algunas variables de entrada pueden contener valores confidenciales, como una clave ssh privada o un token de Terraform. Según el método de implementación, estos valores serán visibles como texto sin formato en el archivo de estado de Terraform. Para obtener más información, consulte Datos confidenciales en el estado en el sitio HashiCorp web.