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à.
Automatizza le allocazioni IPv4 IPAM CIDR di Amazon VPC per nuove applicazioni utilizzando AFT Account AWS
Kien Pham e Alex Pazik, Amazon Web Services
Riepilogo
Questo modello mostra come automatizzare le allocazioni CIDR di Amazon VPC IP Address Manager (IPAM IPv4 ) per i nuovi utenti Account AWS utilizzando Account AWS Control Tower Factory for Terraform (AFT). Questa operazione viene eseguita utilizzando una personalizzazione a livello di account che alloca un blocco IPv4 CIDR da IPAM a un nuovo cloud privato virtuale (VPC) utilizzando il modulo. aft-account-customizations
Con IPAM, puoi organizzare, assegnare, monitorare e controllare gli indirizzi IP su larga scala, consentendoti di pianificare, tracciare e monitorare facilmente gli indirizzi IP per i tuoi carichi di lavoro. AWS È possibile creare un pool IPAM e IPAM da utilizzare per allocare un blocco IPv4 CIDR a un nuovo VPC durante il processo di vendita dell'account.
Prerequisiti e limitazioni
Prerequisiti
Un active Account AWS with AWS Control Tower abilitato in un ambiente supportato e distribuito in AFT Regione AWS
Un provider di sistemi di controllo della versione (VCS)
supportato come BitBucket GitHub, ed Enterprise GitHub Un ambiente di runtime in cui è possibile eseguire il modulo Terraform che installa AFT
AWS Command Line Interface (AWS CLI) installato e configurato
Limitazioni
Alcuni Servizi AWS non sono disponibili in tutti Regioni AWS. Per informazioni sulla disponibilità per regione, consulta AWS Servizi per regione
. Per endpoint specifici, consulta Endpoints and quotas del servizio e scegli il link relativo al servizio.
Versioni del prodotto
AWS Control Tower landing zone versione 3.0 o successiva, precedente alla versione 4.0
AFT
versione 1.13.0 o successiva, precedente alla versione 2.0.0 Terraform OSS versione 1.2.0 o successiva, precedente alla versione 2.0.0
Terraform AWS Provider
( terraform-provider-aws) versione 5.11.0 o successiva, precedente alla versione 6.0.0Modulo Terraform per IPAM
() versione 2.1.0 o successiva aws-ia/ipam/aws
Architecture
Il diagramma seguente mostra il flusso di lavoro e i componenti di questo modello.

Il flusso di lavoro è costituito dalle seguenti attività principali:
Attiva modifiche: le modifiche a Terraform e alla personalizzazione IPAM vengono salvate nel GitHub repository e inviate. Questa attività attiva automaticamente la pipeline. AWS CodeBuild
Automatizza la compilazione: all'interno CodeBuild, vengono attivati più progetti di compilazione. AWS Step Functions
Applica personalizzazione: Step Functions si coordina con CodeBuild per pianificare e applicare le modifiche Terraform. Questa attività utilizza il modulo AFT Terraform per coordinare l'assegnazione dell'IP del pool IPAM all'account fornito. AWS
Tools (Strumenti)
Servizi AWS
AWS CodeBuildè un servizio di compilazione completamente gestito che consente di compilare il codice sorgente, eseguire test unitari e produrre artefatti pronti per la distribuzione.
AWS CodePipelineti aiuta a modellare e configurare rapidamente le diverse fasi di una versione del software e ad automatizzare i passaggi necessari per rilasciare continuamente le modifiche al software.
AWS Control Towerorchestra le funzionalità di molti altri Servizi AWS, tra cui AWS Organizations, AWS Service Catalog e. AWS IAM Identity Center Può aiutarti a configurare e gestire un ambiente con AWS più account, seguendo le migliori pratiche prescrittive.
Amazon DynamoDB è un servizio di database NoSQL interamente gestito che offre prestazioni elevate, prevedibili e scalabili.
AWS Lambda è un servizio di calcolo che consente di eseguire il codice senza gestire i server o effettuarne il provisioning. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di elaborazione che utilizzi.
AWS SDK per Python (Boto3)
è un kit di sviluppo software che ti aiuta a integrare la tua applicazione, libreria o script Python con. Servizi AWS AWS Service Catalogconsente di gestire centralmente i cataloghi dei servizi IT approvati. AWS Gli utenti finali possono distribuire rapidamente soltanto i servizi IT approvati di cui hanno bisogno, in accordo con i vincoli stabiliti dall'organizzazione.
AWS Step Functionsè un servizio di orchestrazione senza server che consente di combinare AWS Lambda funzioni e altro Servizi AWS per creare applicazioni aziendali critiche.
Amazon Virtual Private Cloud (Amazon VPC) ti aiuta a lanciare AWS risorse in una rete virtuale che hai definito. Questa rete virtuale è simile a una comune rete da gestire all'interno del proprio data center, ma con i vantaggi dell'infrastruttura scalabile di AWS. Amazon VPC IP Address Manager (IPAM) è una funzionalità VPC che semplifica la pianificazione, il monitoraggio e il monitoraggio degli indirizzi IP per i carichi di lavoro. AWS
Altri strumenti
GitHub
è una piattaforma di sviluppo che gli sviluppatori possono utilizzare per creare, archiviare, gestire e condividere il proprio codice. HashiCorp Terraform
è uno strumento Infrastructure as Code (IaC) che ti aiuta a creare e gestire risorse cloud e locali. Ciò include componenti di basso livello come istanze di calcolo, storage e rete e componenti di alto livello come voci DNS e funzionalità software a service (SaaS). Python
è un linguaggio di programmazione per computer generico. È possibile utilizzarlo per creare applicazioni, automatizzare attività e sviluppare servizi su. Cloud AWS
Archivio di codici
Il codice per questo pattern è disponibile nel repository GitHub AWS Control Tower Account Factory for Terraform
.
Best practice
Quando si implementa AFT, si consiglia di seguire le migliori pratiche per garantire un'implementazione sicura, efficiente e di successo. Le linee guida e le raccomandazioni chiave per l'implementazione e il funzionamento di AFT includono quanto segue:
Revisione approfondita degli input: esamina e comprendi attentamente ogni input
. La corretta configurazione degli input è fondamentale per la configurazione e il funzionamento di AFT. Aggiornamenti regolari dei modelli: mantieni i modelli aggiornati con le ultime AWS funzionalità e le versioni di Terraform. Gli aggiornamenti regolari ti aiutano a sfruttare le nuove funzionalità e a mantenere la sicurezza.
Controllo delle versioni: aggiungi la versione del modulo AFT e, se possibile, utilizza una distribuzione AFT separata per i test.
Ambito: utilizzate AFT solo per implementare protezioni e personalizzazioni dell'infrastruttura. Non utilizzarlo per distribuire l'applicazione.
Linting e convalida: la pipeline AFT richiede una configurazione Terraform linkata e convalidata. Esegui lint, convalida e testa prima di inviare la configurazione ai repository AFT.
Moduli Terraform: crea codice Terraform riutilizzabile come moduli e specifica sempre le versioni di Terraform e del AWS provider in base ai requisiti della tua organizzazione.
Epiche
| Operazione | Description | Competenze richieste |
|---|---|---|
Implementazione. AWS Control Tower | Imposta e configura AWS Control Tower nel tuo AWS ambiente per garantire la gestione e la governance centralizzate del tuo. Account AWS Per ulteriori informazioni, consulta la sezione Guida introduttiva AWS Control Tower nella AWS Control Tower documentazione. | Amministratore cloud |
Implementa AWS Control Tower Account Factory for Terraform (AFT). | Configura AFT in un nuovo account di gestione AFT dedicato. Per ulteriori informazioni, vedi Configurare e avviare AWS Control Tower Account Factory for Terraform nella AWS Control Tower documentazione. | Amministratore cloud |
AFT completo dopo l'implementazione. | Una volta completata la distribuzione dell'infrastruttura AFT, completa i passaggi indicati nelle fasi successive alla distribuzione nella AWS Control Tower documentazione. | Amministratore cloud |
| Operazione | Description | Competenze richieste |
|---|---|---|
Delegare un amministratore IPAM. | Per delegare un account amministratore IPAM nella tua AWS organizzazione, utilizza i seguenti passaggi:
In alternativa, è possibile utilizzare AWS CLI ed eseguire il seguente comando:
Per ulteriori informazioni, consulta Integrare IPAM con gli account di un' AWS organizzazione nella documentazione di Amazon VPC enable-ipam-organization-admine -account nel AWS CLI Command Reference. ImportantePer continuare a utilizzare IPAM, devi accedere all'account amministratore delegato. Il profilo SSO o le variabili di AWS ambiente specificate nel passaggio successivo devono consentire all'utente di accedere a tale account e concedere le autorizzazioni per creare un pool IPAM di primo livello e regionale. | Amministratore AWS |
Crea un pool IPAM di primo livello e regionale. | Il GitHub repository di questo pattern contiene un modello Terraform che puoi utilizzare per creare il tuo pool IPAM di primo livello e il pool regionale. Quindi puoi condividere i pool con un'organizzazione, un'unità organizzativa (OU) o un'altra risorsa utilizzando (). Account AWS AWS Resource Access Manager AWS RAM Utilizza le fasi seguenti:
Prendi nota dell'ID del pool di risorse che viene emesso dopo la creazione. L'ID ti servirà al momento dell'invio della richiesta di account. Se si dimentica l'ID del pool di risorse, è possibile recuperarlo in un secondo momento da. Console di gestione AWS ImportanteAssicurati che i pool creati CIDRs non si sovrappongano a nessun altro pool nella tua regione di lavoro. Puoi creare un pool senza CIDR, ma non sarai in grado di utilizzare il pool per le assegnazioni fino a quando non avrai eseguito il provisioning di un CIDR. Puoi aggiungere qualcosa CIDRs a un pool in qualsiasi momento modificando il pool. | Amministratore AWS |
| Operazione | Description | Competenze richieste |
|---|---|---|
Inizia a creare la personalizzazione dell'account. | Per iniziare una nuova personalizzazione dell'account, esegui i seguenti comandi dal tuo terminale:
| DevOps ingegnere |
Crea | Aggiungi codice dinamico al Utilizza le fasi seguenti:
| DevOps ingegnere |
Crea | Aggiungi codice dinamico al Utilizza le fasi seguenti:
| DevOps ingegnere |
Crea | Crea un nuovo Utilizza le fasi seguenti:
| DevOps ingegnere |
Crea | Crea un Utilizza le fasi seguenti:
| DevOps ingegnere |
Crea | Crea un Utilizza le fasi seguenti:
| DevOps ingegnere |
Crea | Crea un nuovo Utilizza le fasi seguenti:
| DevOps ingegnere |
Effettua la personalizzazione. | Per salvare la nuova personalizzazione nell'archivio delle personalizzazioni dell'account, esegui i seguenti comandi:
| DevOps ingegnere |
Applica la personalizzazione. | Aggiungi il codice al Utilizza le fasi seguenti:
| AWS DevOps |
Convalida la personalizzazione. | Accedi all'account appena venduto e verifica che la personalizzazione sia stata applicata correttamente. Utilizza le fasi seguenti:
| DevOps ingegnere |
risoluzione dei problemi
| Problema | Soluzione |
|---|---|
Si verificano errori nella creazione o nella gestione delle risorse causati da autorizzazioni inadeguate. | Esamina i ruoli e le policy AWS Identity and Access Management (IAM) associati a Step Functions e agli altri servizi coinvolti nella distribuzione. CodeBuild Verifica che dispongano delle autorizzazioni necessarie. In caso di problemi di autorizzazione, modifica le politiche IAM per concedere l'accesso richiesto. |
Le Servizio AWS quote vengono raggiunte durante la distribuzione. | Prima di distribuire la pipeline, controlla le Servizio AWS quote per risorse come i bucket Amazon Simple Storage Service (Amazon S3), i ruoli e le funzioni IAM. AWS Lambda Se necessario, richiedi un aumento delle quote. Per ulteriori informazioni, consulta Servizio AWS Quotas nella documentazione generale di riferimento di AWS . |
Risorse correlate
Servizio AWS documentazione
Altre risorse