Versioni Terraform e AFT - AWS Control Tower

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Versioni Terraform e AFT

Account Factory for Terraform (AFT) supporta la versione Terraform 1.6.0 o successiva. È necessario fornire una versione Terraform come parametro di input per il processo di distribuzione AFT, come mostrato nell'esempio che segue.

terraform_version = "1.6.0"

Distribuzioni Terraform

AFT supporta tre distribuzioni Terraform:

  • Terraform Community Edition

  • Terraform Cloud

  • Terraform Enterprise

Queste distribuzioni sono spiegate nelle sezioni che seguono. Fornisci la distribuzione Terraform di tua scelta come parametro di input durante il processo di bootstrap AFT. Per ulteriori informazioni sulla distribuzione di AFT e sui parametri di input, vedere. Implementa AWS Control Tower Account Factory per Terraform () AFT

Se scegli le distribuzioni Terraform Cloud o Terraform Enterprise, il token API che specifichi terraform_token deve essere un token API User o Team. Un token Organization non è supportato per tutte le API richieste. Per motivi di sicurezza, è necessario evitare di registrare il valore di questo token nel sistema di controllo della versione (VCS) assegnando una variabile terraform, come mostrato nell'esempio che segue.

# Sensitive variable managed in Terraform Cloud: terraform_token = var.terraform_cloud_token

Terraform Community Edition

Quando selezioni Terraform Community Edition come distribuzione, AFT gestisce il backend Terraform per te nell'account di gestione AFT. AFT scarica la versione terraform-cli di Terraform specificata per eseguirla durante le fasi di implementazione di AFT e la pipeline AFT. La configurazione dello stato Terraform risultante viene archiviata in un bucket Amazon S3, denominato con il seguente modulo:

aft-backend-[account_id]-primary-region

AFT crea anche un bucket Amazon S3 che replica la configurazione dello stato di Terraform in un altro Regione AWS, per scopi di disaster recovery, denominato con il seguente modulo:

aft-backend-[account_id]-secondary-region

Ti consigliamo di abilitare l'autenticazione a più fattori (MFA) per le funzioni di eliminazione su questi bucket Amazon S3 dello stato Terraform. Per saperne di più su Terraform Community Edition, consulta la documentazione di Terraform.

Per selezionare Terraform OSS come distribuzione, fornisci il seguente parametro di input:

terraform_distribution = "oss"

Terraform Cloud

Quando selezionate Terraform Cloud come distribuzione, AFT crea spazi di lavoro per i seguenti componenti nella vostra organizzazione Terraform Cloud, che avvia un flusso di lavoro basato sulle API.

  • Richiesta di account

  • Personalizzazioni AFT per gli account forniti da AFT

  • Personalizzazioni degli account per gli account che prevedono AFT

  • Personalizzazioni globali per gli account forniti da AFT

Terraform Cloud gestisce la configurazione dello stato Terraform risultante.

Quando selezioni Terraform Cloud come distribuzione, fornisci i seguenti parametri di input:

  • terraform_distribution = "tfc"

  • terraform_token— Questo parametro contiene il valore del token Terraform Cloud. AFT lo contrassegna come sensibile e memorizza il valore come stringa sicura nell'archivio dei parametri SSM nell'account di gestione AFT. Ti consigliamo di ruotare periodicamente il valore del token Terraform in base alle politiche di sicurezza e alle linee guida di conformità della tua azienda. Il token Terraform deve essere un token API a livello di utente o team. I token organizzativi non sono supportati.

  • terraform_org_name— Questo parametro contiene il nome della tua organizzazione Terraform Cloud.

Nota

Non sono supportate più implementazioni AFT in una singola organizzazione Terraform Cloud.

Per informazioni su come configurare Terraform Cloud, consulta la documentazione di Terraform.

Terraform Enterprise

Quando selezioni Terraform Enterprise come distribuzione, AFT crea spazi di lavoro per i seguenti componenti nella tua organizzazione Terraform Enterprise e attiva un flusso di lavoro basato sull'API per le esecuzioni Terraform risultanti.

  • Richiesta di account

  • Personalizzazioni del provisioning degli account AFT per gli account forniti da AFT

  • Personalizzazioni degli account per gli account forniti da AFT

  • Personalizzazioni globali per gli account forniti da AFT

La configurazione dello stato Terraform risultante è gestita dalla configurazione di Terraform Enterprise.

Per selezionare Terraform Enterprise come distribuzione, fornisci i seguenti parametri di input:

  • terraform_distribution = "tfe"

  • terraform_token— Questo parametro contiene il valore del token Terraform Enterprise. AFT contrassegna il suo valore come sensibile e lo memorizza come stringa sicura nell'archivio dei parametri SSM, nell'account di gestione AFT. Ti consigliamo di ruotare periodicamente il valore del token Terraform, in base alle politiche di sicurezza e alle linee guida di conformità della tua azienda.

  • terraform_org_name— Questo parametro contiene il nome della tua organizzazione Terraform Enterprise.

  • terraform_api_endpoint— Questo parametro contiene l'URL del tuo ambiente Terraform Enterprise. Il valore di questo parametro deve essere nel formato:

    https://{fqdn}/api/v2/

Consulta la documentazione di Terraform per saperne di più su come configurare Terraform Enterprise.