

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Automatisez les allocations d'adresses IPv4 CIDR IPAM d'Amazon VPC pour les nouveaux utilisateurs en utilisant AFT Comptes AWS
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft"></a>

*Kien Pham et Alex Pazik, Amazon Web Services*

## Résumé
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-summary"></a>

Ce modèle montre comment automatiser les allocations IPv4 CIDR d'Amazon VPC IP Address Manager (IPAM) pour les nouveaux utilisateurs en utilisant Comptes AWS [AWS Control Tower Account Factory for Terraform](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) (AFT). Cela se fait à l'aide d'une personnalisation au niveau du compte qui alloue un bloc IPv4 CIDR d'IPAM à un nouveau cloud privé virtuel (VPC) à l'aide du module. `aft-account-customizations`

Avec IPAM, vous pouvez organiser, attribuer, surveiller et auditer les adresses IP à grande échelle, ce qui vous permet de planifier, de suivre et de surveiller facilement les adresses IP pour vos charges de AWS travail. Vous pouvez [créer un pool IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html) et IPAM à utiliser pour allouer un bloc IPv4 CIDR à un nouveau VPC pendant le processus de vente du compte.

## Conditions préalables et limitations
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-prereqs"></a>

**Conditions préalables**
+ Un signe actif Compte AWS AWS Control Tower activé dans un support [Région AWS](https://docs.aws.amazon.com/controltower/latest/userguide/region-how.html)et un AFT déployé
+ Un [fournisseur de système de contrôle de version (VCS)](https://github.com/aws-ia/terraform-aws-control_tower_account_factory?tab=readme-ov-file#input_vcs_provider) pris en charge tel que BitBucket, GitHub, et Enterprise GitHub 
+ [Interface de ligne de commande (CLI) Terraform installée](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli)
+ Un environnement d'exécution dans lequel vous pouvez exécuter le module Terraform qui installe AFT
+ AWS Command Line Interface (AWS CLI) [installé](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) et [configuré](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html)

**Limites**
+ Certains Services AWS ne sont pas disponibles du tout Régions AWS. Pour connaître la disponibilité par région, consultez la section [AWS Services par région](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Pour des points de terminaison spécifiques, consultez [Points de terminaison de service et quotas](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html), puis choisissez le lien correspondant au service.

**Versions du produit**
+ AWS Control Tower version 3.0 ou ultérieure de la [zone de landing zone](https://docs.aws.amazon.com/controltower/latest/userguide/2022-all.html#version-3.0), antérieure à la version 4.0
+ [AFT](https://github.com/aws-ia/terraform-aws-control_tower_account_factory) version 1.13.0 ou ultérieure, antérieure à la version 2.0.0
+ Terraform OSS version 1.2.0 ou ultérieure, antérieure à la version 2.0.0
+ [Terraform AWS Provider](https://registry.terraform.io/providers/hashicorp/aws/latest/docs) (`terraform-provider-aws`) version 5.11.0 ou ultérieure, antérieure à la version 6.0.0
+ [Module Terraform pour IPAM](https://github.com/aws-ia/terraform-aws-ipam) (`aws-ia/ipam/aws`) version 2.1.0 ou ultérieure

## Architecture
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-architecture"></a>

Le schéma suivant montre le flux de travail et les composants de ce modèle.

![\[Flux de travail pour créer une allocation d'adresse CIDR IPAM IPv4 Amazon VPC.\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/986cfc7d-058b-4490-9029-6cd1eadd1dd2/images/f90b84dd-0420-460e-ac0f-9f22b4a9fdc4.png)


Le flux de travail comprend les tâches principales suivantes :

1. **Déclencher des modifications** — Les modifications apportées à la personnalisation de Terraform et d'IPAM sont validées dans le GitHub référentiel et transmises. Cette tâche déclenche automatiquement le AWS CodeBuild pipeline.

1. **Automatiser la construction** : plusieurs projets de CodeBuild construction se déclenchent dans le cadre de ce processus AWS Step Functions.

1. **Appliquer la personnalisation** — Step Functions se coordonne CodeBuild pour planifier et appliquer les modifications apportées à Terraform. Cette tâche utilise le module AFT Terraform pour coordonner l'attribution de l'adresse IP du pool IPAM au AWS compte vendu.

## Outils
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-tools"></a>

**Services AWS**
+ [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)est un service de génération entièrement géré qui vous aide à compiler le code source, à exécuter des tests unitaires et à produire des artefacts prêts à être déployés.
+ [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)vous permet de modéliser et de configurer rapidement les différentes étapes d'une version logicielle et d'automatiser les étapes nécessaires à la publication continue des modifications logicielles.
+ [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)orchestre les capacités de plusieurs autres [Services AWS](https://docs.aws.amazon.com/controltower/latest/userguide/integrated-services.html), notamment AWS Organizations AWS Service Catalog, et AWS IAM Identity Center. Il peut vous aider à configurer et à gérer un environnement AWS multi-comptes, conformément aux meilleures pratiques prescriptives.
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) est un service de base de données NoSQL entièrement géré, offrant des performances rapides, prévisibles et évolutives.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) est un service de calcul qui vous aide à exécuter du code sans avoir à allouer ni à gérer des serveurs. Il exécute votre code uniquement lorsque cela est nécessaire et évolue automatiquement, de sorte que vous ne payez que pour le temps de calcul que vous utilisez.
+ [AWS SDK pour Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)est un kit de développement logiciel qui vous aide à intégrer votre application, bibliothèque ou script Python à Services AWS.
+ [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html)vous permet de gérer de manière centralisée les catalogues de services informatiques approuvés. AWS Les utilisateurs finaux peuvent déployer rapidement uniquement les services informatiques approuvés dont ils ont besoin, en respectant les contraintes définies par votre organisation.
+ [AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html)est un service d'orchestration sans serveur qui vous aide à combiner des AWS Lambda fonctions et d'autres fonctions Services AWS pour créer des applications critiques pour l'entreprise.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) vous aide à lancer AWS des ressources dans un réseau virtuel que vous avez défini. Ce réseau virtuel ressemble à un réseau traditionnel que vous pourriez exécuter dans votre propre centre de données et présente l'avantage d'utiliser l'infrastructure évolutive d' AWS. Amazon VPC IP Address Manager (IPAM) est une fonctionnalité VPC qui vous permet de planifier, suivre et surveiller plus facilement les adresses IP pour vos charges de travail. AWS 

**Autres outils**
+ [GitHub](https://docs.github.com/)est une plateforme de développement que les développeurs peuvent utiliser pour créer, stocker, gérer et partager leur code.
+ [HashiCorp Terraform](https://www.terraform.io/) est un outil d'infrastructure en tant que code (IaC) qui vous aide à créer et à gérer des ressources sur site et dans le cloud. Cela inclut les composants de bas niveau tels que les instances de calcul, le stockage et le réseau et les composants de haut niveau tels que les entrées DNS et les fonctionnalités du logiciel en tant que service (SaaS).
+ [Python](https://www.python.org/) est un langage de programmation informatique polyvalent. Vous pouvez l'utiliser pour créer des applications, automatiser des tâches et développer des services sur le [AWS Cloud](https://aws.amazon.com/developer/language/python/).

**Référentiel de code**
+ Le code de ce modèle est disponible dans le référentiel GitHub [AWS Control Tower Account Factory for Terraform](https://github.com/aws-ia/terraform-aws-control_tower_account_factory).

## Bonnes pratiques
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-best-practices"></a>

Lorsque vous déployez AFT, nous vous recommandons de suivre les meilleures pratiques pour garantir une mise en œuvre sûre, efficace et réussie. Les principales directives et recommandations pour la mise en œuvre et le fonctionnement de l'AFT sont les suivantes : 
+ **Examen approfondi des contributions** — Examinez attentivement et comprenez chaque [contribution](https://github.com/aws-ia/terraform-aws-control_tower_account_factory). Une configuration d'entrée correcte est cruciale pour la configuration et le fonctionnement de l'AFT.
+ **Mises à jour régulières des modèles** : maintenez les modèles à jour avec les dernières AWS fonctionnalités et versions de Terraform. Les mises à jour régulières vous aident à tirer parti des nouvelles fonctionnalités et à garantir la sécurité.
+ **Gestion des versions** : épinglez la version de votre module AFT et utilisez un déploiement AFT distinct pour les tests, si possible.
+ **Champ d'application** — Utilisez AFT uniquement pour déployer des garde-fous et des personnalisations d'infrastructure. Ne l'utilisez pas pour déployer votre application.
+ **Linting et validation** — Le pipeline AFT nécessite une configuration Terraform linted et validée. Exécutez lint, validez et testez avant de transférer la configuration vers les référentiels AFT.
+ **Modules Terraform** — Créez du code Terraform réutilisable sous forme de modules et spécifiez toujours les versions de Terraform et du AWS fournisseur correspondant aux exigences de votre organisation.

## Épopées
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-epics"></a>

### Configurez et configurez votre AWS environnement
<a name="set-up-and-configure-your-aws-environment"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Déployez AWS Control Tower. | Configurez et configurez AWS Control Tower dans votre AWS environnement pour garantir une gestion et une gouvernance centralisées de votre Comptes AWS. Pour plus d'informations, consultez la section [Mise en route AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-with-control-tower.html) dans la AWS Control Tower documentation. | Administrateur du cloud | 
| Déployez AWS Control Tower Account Factory pour Terraform (AFT). | Configurez AFT dans un nouveau compte de gestion AFT dédié. Pour plus d'informations, consultez Configuration [et lancement de votre AWS Control Tower Account Factory pour Terraform](https://docs.aws.amazon.com/controltower/latest/userguide/aft-getting-started.html#aft-configure-and-launch) dans la documentation. AWS Control Tower  | Administrateur du cloud | 
| Terminez l'AFT après le déploiement. | Une fois le déploiement de l'infrastructure AFT terminé, suivez les étapes décrites dans la section [Étapes post-déploiement](https://docs.aws.amazon.com/controltower/latest/userguide/aft-post-deployment.html) de la AWS Control Tower documentation. | Administrateur du cloud | 

### Créez IPAM
<a name="create-ipam"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Déléguez un administrateur IPAM. | Pour déléguer un compte administrateur IPAM dans votre AWS organisation, procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html)Vous pouvez également utiliser AWS CLI et exécuter la commande suivante :<pre>aws ec2 enable-ipam-organization-admin-account \<br />    --delegated-admin-account-id 012345678901</pre>Pour plus d'informations, consultez [Intégrer l'IPAM aux comptes d'une AWS organisation](https://docs.aws.amazon.com/vpc/latest/ipam/enable-integ-ipam.html) dans la documentation Amazon VPC [enable-ipam-organization-adminet -account dans AWS CLI le Command](https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-ipam-organization-admin-account.html) Reference. Pour continuer à utiliser IPAM, vous devez vous connecter au compte d'administrateur délégué. Le profil SSO ou les variables d' AWS environnement spécifiés à l'étape suivante doivent vous permettre de vous connecter à ce compte et d'accorder des autorisations pour créer un pool régional et de haut niveau IPAM. | Administrateur AWS | 
| Créez un pool IPAM régional et de haut niveau. | Le GitHub référentiel de ce modèle contient un modèle Terraform que vous pouvez utiliser pour créer votre pool IPAM de haut niveau et votre pool régional. Vous pouvez ensuite partager les pools avec une organisation, une unité organisationnelle (UO) ou une autre ressource en utilisant AWS Resource Access Manager (AWS RAM). Compte AWSProcédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html)Notez l'ID du pool de ressources qui est affiché après la création. Vous aurez besoin de l'identifiant pour soumettre la demande de compte. Si vous oubliez l'ID du pool de ressources, vous pourrez l'obtenir ultérieurement auprès du AWS Management Console. Assurez-vous que les piscines créées ne se chevauchent CIDRs pas avec les autres piscines de votre région de travail. Vous pouvez créer un groupe sans CIDR, mais vous ne pourrez pas utiliser le groupe pour les allocations tant que vous n'aurez pas provisionné un CIDR pour celui-ci. Vous pouvez ajouter CIDRs des éléments à un pool à tout moment en le modifiant. | Administrateur AWS | 

### Intégrer IPAM à AFT
<a name="integrate-ipam-with-aft"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Commencez à personnaliser votre compte. | Pour commencer à personnaliser un nouveau compte, exécutez les commandes suivantes depuis votre terminal :<pre># Default name for customization repo<br />cd aft-account-customizations # Replace with your actual repo name if different than the default<br />mkdir -p APG-AFT-IPAM/terraform # Replace APG-AFT-IPAM with your desired customization name<br />cd APG-AFT-IPAM/terraform</pre> | DevOps ingénieur | 
| Créez un `aft-providers.jinja` fichier. | Ajoutez du code dynamique au `aft-providers.jinja` fichier qui spécifie le backend et le fournisseur Terraform à utiliser.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingénieur | 
| Créez un `backend.jinja` fichier. | Ajoutez du code dynamique au `backend.jinja` fichier qui spécifie le backend et le fournisseur Terraform à utiliser.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingénieur | 
| Créez un `main.tf` fichier. | Créez un nouveau `main.tf` fichier et ajoutez du code qui définit deux sources de données qui extraient deux valeurs de AWS Systems Manager (`aws_ssm`) et créent le VPC.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingénieur | 
| Créez un `variables.tf` fichier. | Créez un `variables.tf` fichier qui déclare les variables utilisées par le module Terraform.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingénieur | 
| Créez un `terraform.tfvars` fichier. | Créez un `terraform.tfvars` fichier qui définit les valeurs des variables transmises au `main.tf` fichier.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingénieur | 
| Créez un `outputs.tf` fichier. | Créez un nouveau `outputs.tf` fichier qui expose certaines valeurs dans CodeBuild.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingénieur | 
| Validez la personnalisation. | Pour valider la nouvelle personnalisation dans le référentiel de personnalisations de compte, exécutez les commandes suivantes :<pre># Assumes you are still in the /terraform directory<br />cd .. # Skip if you are in the account customization root directory (APG-AFT-IPAM)<br />git add .<br />git commit -m "APG customization"<br />git push origin</pre> | DevOps ingénieur | 
| Appliquez la personnalisation. | Ajoutez du code au `account-requests.tf` fichier qui demande un nouveau compte grâce à la personnalisation du compte nouvellement créé. Les champs personnalisés créent les paramètres Systems Manager dans le compte vendeur qui sont nécessaires pour créer le VPC avec le bon CIDR alloué par l' IPv4 IPAM.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | AWS DevOps | 
| Validez la personnalisation. | Connectez-vous au nouveau compte et vérifiez que la personnalisation a été correctement appliquée.Procédez comme suit :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingénieur | 

## Résolution des problèmes
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-troubleshooting"></a>


| Problème | Solution | 
| --- | --- | 
|  Vous rencontrez des échecs lors de la création ou de la gestion des ressources en raison d'autorisations inadéquates. |  Passez en revue les rôles et les politiques Gestion des identités et des accès AWS (IAM) attachés à Step Functions et aux autres services impliqués dans le déploiement. CodeBuild Vérifiez qu'ils disposent des autorisations nécessaires. En cas de problème d'autorisation, ajustez les politiques IAM pour accorder l'accès requis. | 
|  Vous atteignez Service AWS les quotas lors du déploiement. |  Avant de déployer le pipeline, vérifiez les Service AWS quotas pour les ressources telles que les compartiments Amazon Simple Storage Service (Amazon S3), les rôles IAM et les fonctions. AWS Lambda Si nécessaire, demandez une augmentation des quotas. Pour plus d’informations, consultez [Service AWS Quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) dans les *Références générales AWS *. | 

## Ressources connexes
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-resources"></a>

**Service AWS documentation**
+ [AWS Control Tower Guide de l'utilisateur](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)
+ [Comment fonctionne l'IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/how-it-works-ipam.html)
+ [Bonnes pratiques de sécurité dans IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)
+ [Service AWS quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)

**Autres ressources**
+ [Documentation du fournisseur Terraform AWS](https://registry.terraform.io/providers/hashicorp/aws/latest/docs)