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
Kien Pham et Alex Pazik, Amazon Web Services
Résumé
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 (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 et IPAM à utiliser pour allouer un bloc IPv4 CIDR à un nouveau VPC pendant le processus de vente du compte.
Conditions préalables et limitations
Conditions préalables
Un signe actif Compte AWS AWS Control Tower activé dans un support Région AWSet un AFT déployé
Un fournisseur de système de contrôle de version (VCS)
pris en charge tel que BitBucket, GitHub, et Enterprise GitHub Un environnement d'exécution dans lequel vous pouvez exécuter le module Terraform qui installe AFT
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
. Pour des points de terminaison spécifiques, consultez Points de terminaison de service et quotas, 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, antérieure à la version 4.0
AFT
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
( terraform-provider-aws) version 5.11.0 ou ultérieure, antérieure à la version 6.0.0Module Terraform pour IPAM
( aws-ia/ipam/aws) version 2.1.0 ou ultérieure
Architecture
Le schéma suivant montre le flux de travail et les composants de ce modèle.

Le flux de travail comprend les tâches principales suivantes :
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.
Automatiser la construction : plusieurs projets de CodeBuild construction se déclenchent dans le cadre de ce processus AWS Step Functions.
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
Services AWS
AWS CodeBuildest 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 CodePipelinevous 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 Towerorchestre les capacités de plusieurs autres Services AWS, 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 est un service de base de données NoSQL entièrement géré, offrant des performances rapides, prévisibles et évolutives.
AWS Lambda 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)
est un kit de développement logiciel qui vous aide à intégrer votre application, bibliothèque ou script Python à Services AWS. AWS Service Catalogvous 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 Functionsest 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) 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
est une plateforme de développement que les développeurs peuvent utiliser pour créer, stocker, gérer et partager leur code. HashiCorp Terraform
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
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 .
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
.
Bonnes pratiques
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
. 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
| 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 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 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 de la AWS Control Tower documentation. | Administrateur du cloud |
| 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 :
Vous pouvez également utiliser AWS CLI et exécuter la commande suivante :
Pour plus d'informations, consultez Intégrer l'IPAM aux comptes d'une AWS organisation dans la documentation Amazon VPC enable-ipam-organization-adminet -account dans AWS CLI le Command Reference. ImportantPour 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 AWS Procédez comme suit :
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. ImportantAssurez-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 |
| 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 :
| DevOps ingénieur |
Créez un | Ajoutez du code dynamique au Procédez comme suit :
| DevOps ingénieur |
Créez un | Ajoutez du code dynamique au Procédez comme suit :
| DevOps ingénieur |
Créez un | Créez un nouveau Procédez comme suit :
| DevOps ingénieur |
Créez un | Créez un Procédez comme suit :
| DevOps ingénieur |
Créez un | Créez un Procédez comme suit :
| DevOps ingénieur |
Créez un | Créez un nouveau Procédez comme suit :
| 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 :
| DevOps ingénieur |
Appliquez la personnalisation. | Ajoutez du code au Procédez comme suit :
| 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 :
| DevOps ingénieur |
Résolution des problèmes
| 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 dans les Références générales AWS . |
Ressources connexes
Service AWS documentation
Autres ressources