Infrastructure Manager (Infra Manager) automatise le déploiement et la gestion des ressources d'infrastructure Google Cloud à l'aide de Terraform.
Infra Manager vous permet de déployer de manière programmatique sur Google Cloud, ce qui vous permet d'utiliser ce service plutôt que de gérer une chaîne d'outils différente pour travailler avec Terraform sur Google Cloud.
Une configuration Terraform définit l'infrastructure. La configuration est déployée sur Google Cloud par Infra Manager, ce qui vous permet de gérer les ressources à l'aide de l'Infrastructure as Code (IaC).
Infra Manager ne gère pas le déploiement d'applications sur vos ressources. Pour gérer le déploiement d'applications, vous pouvez utiliser des produits Google Cloudtels que Cloud Build et Cloud Deploy. Vous pouvez également utiliser des outils tiers ou votre propre chaîne d'outils.
Pour utiliser Infra Manager, vous devez connaître Terraform. Pour en savoir plus sur Terraform, consultez la page Qu'est-ce que Terraform ? de HashiCorp.
Pour en savoir plus sur Terraform avec Google Cloud, consultez Terraform sur Google Cloud.
Infra Manager et Infrastructure as Code
Infra Manager vous permet d'utiliser l'IaC pour gérer le cycle de vie des ressourcesGoogle Cloud :
- Terraform est défini de manière déclarative dans une configuration Terraform. Cela signifie que la configuration décrit l'état final de votre infrastructure.
- Vous pouvez gérer la version de la configuration Terraform dans un dépôt Git ou dans un bucket Cloud Storage. Utilisez la gestion des versions d'objets pour gérer les versions des configurations dans un bucket de stockage.
- Utilisez Infra Manager pour mettre à jour le déploiement de votre infrastructure avec des revisions. Pour chaque révision, Infra Manager stocke les éléments suivants :
- Journaux
- Configuration utilisée pour effectuer la révision
- La liste des ressources Google Cloud créées par la révision
- Fichier d'état créé lors de chaque déploiement et de chaque révision
Pour en savoir plus sur l'IaC, consultez Infrastructure as Code sur Google Cloud.
Fonctionnement d'Infra Manager
Vous trouverez ci-dessous une description de ce qui se passe dans un scénario simple lorsque vous utilisez Infra Manager pour déployer une infrastructure.
- Les ressources d'infrastructure à déployer sur Google Cloud sont définies dans une configuration Terraform.
- Vous pouvez créer ce fichier vous-même ou utiliser une configuration déjà écrite pour Google Cloud. Pour en savoir plus, consultez la page Terraform et Infrastructure Manager.
- Vous pouvez stocker la configuration Terraform dans un bucket Cloud Storage, un dépôt Git ou sur votre ordinateur local.
- Lorsque vous utilisez Infra Manager pour déployer des ressources à partir d'une configuration Terraform, vous créez un déploiement. Pour créer un déploiement, Infra Manager :
- Valide la requête. Par exemple, il s'assure que vous avez spécifié l'emplacement de la configuration Terraform dans votre commande.
- Crée une tâche Cloud Build à l'aide d'une image de conteneur. Cette image est détenue et gérée par Google Cloud. Pour en savoir plus sur l'environnement Cloud Build, consultez la section Environnement d'exécution. La tâche Cloud Build automatise les tâches suivantes :
- Télécharge le module Terraform à partir du bucket de stockage ou du dépôt Git.
- Initialise Terraform (
terraform init
) - Valide la configuration Terraform (
terraform validate
) - Active la configuration (
terraform apply
outerraform destroy
si vous supprimez un déploiement) - Affiche les journaux Cloud Build dans un bucket de stockage créé par Infra Manager.
- Si le déploiement échoue, Infra Manager réessaie automatiquement les opérations
terraform init
outerraform apply
dans certains scénarios, par exemple en cas d'échec en raison d'interruptions intermittentes du réseau. Ces tentatives sont effectuées un nombre limité de fois.
- Crée un bucket Cloud Storage et stocke des métadonnées sur le déploiement. Pour en savoir plus sur le déploiement et les métadonnées, consultez la section Présentation du déploiement et des révisions.
Une fois le déploiement terminé, les ressources Google Cloud sont provisionnées comme décrit dans la configuration.
Vous pouvez interroger le déploiement d'Infra Manager pour:
- État du déploiement.
- Liste des ressources déployées dans le cadre du déploiement.
- Informations sur les ressources individuelles qui font partie d'un déploiement.
Environnement d'exécution
L'environnement d'exécution d'Infra Manager est un environnement Cloud Build éphémère. Infra Manager exécute les commandes Terraform dans cet environnement Cloud Build, puis l'environnement est supprimé.
Le système d'exploitation spécifique, les logiciels disponibles et d'autres détails de configuration de l'environnement Cloud Build sont des détails d'implémentation internes d'Infra Manager et peuvent changer à tout moment.
Vous pouvez spécifier la version de Terraform compatible à utiliser pour chaque déploiement.
N'incluez aucune information personnelle ou sensible
N'incluez pas d'informations personnelles ou sensibles dans les valeurs de configuration Terraform.
Pour en savoir plus sur les configurations Terraform et les données sensibles, consultez la section Valeurs de configuration Terraform et données sensibles.
Étape suivante
- En savoir plus sur Terraform avec Google Cloud
- Créer un déploiement
- Mettre à jour un déploiement
- Automatisez les déploiements.
- Supprimez un déploiement.