Terraform et Infrastructure Manager

Pour utiliser Infrastructure Manager (Infra Manager), vous devez connaître Terraform. Pour en savoir plus sur Terraform, commencez par consulter Qu'est-ce que Terraform ?.

Infra Manager déploie les ressources et les configurations d'infrastructure définies dans une configuration Terraform. Ces configurations peuvent comporter plusieurs fichiers et répertoires, mais leur point d'entrée doit être un module racine Terraform.

Infra Manager utilise le terme plan pour désigner une configuration Terraform.

Pour en savoir plus sur Terraform avec Google Cloud, consultez Terraform sur Google Cloud.

Modules Terraform pour Google Cloud

Pour obtenir un ensemble de modules permettant de provisionner des ressources Google Cloud , consultez Plans et modules Terraform pour Google Cloud.

Vous pouvez également créer vos propres modules Terraform pour Google Cloud. Pour en savoir plus, consultez Créer des modules.

Versions de Terraform compatibles

Infra Manager est compatible avec les versions de Terraform suivantes :

Version Terraform Niveau de tarification Date de disponibilité Début de la période d'abandon Date de fin d'assistance Migrer automatiquement vers la version
1.2.3 Niveau sans frais 21/08/2023 08/01/2026 08/02/2026 1.5.7
1.3.10 Niveau sans frais 14/03/2024 À déterminer TBD À déterminer
1.4.7 Niveau sans frais 14/03/2024 À déterminer TBD À déterminer
1.5.7 Niveau sans frais 14/03/2024 À déterminer TBD À déterminer
1.16.5 Payant 11/2/2026 À déterminer TBD À déterminer

Pour en savoir plus sur les fonctionnalités introduites dans chaque version de Terraform, consultez la documentation HashiCorp Terraform et les versions de Terraform.

Vous pouvez spécifier la version de Terraform utilisée par Infra Manager lorsque vous créez un déploiement, mettez à jour un déploiement ou prévisualisez un déploiement dans la consoleGoogle Cloud ou à l'aide de l'option --tf-version-constraint dans la gcloud CLI.

Si vous ne spécifiez pas de version de Terraform lors de la création d'un déploiement ou d'un aperçu, Infra Manager utilise par défaut la dernière version compatible du niveau sans frais (1.5.7). Pour utiliser une version payante (telle que 1.16.5), vous devez spécifier explicitement la contrainte de version.

Lorsque vous mettez à jour un déploiement, vous pouvez passer à une version ultérieure de Terraform, mais vous ne pouvez pas revenir à une version compatible antérieure. Pour en savoir plus sur l'abandon des versions de Terraform, consultez la documentation sur la règle de gestion des versions de Terraform.

Pour afficher la version de Terraform utilisée pour créer un déploiement ou une révision spécifique, consultez Afficher les détails d'un déploiement et Afficher les détails d'une révision.

Licences et tarifs des versions de Terraform

Les versions 1.5.7 et antérieures de Terraform sont distribuées en Open Source sous la licence publique Mozilla (MPL 2.0) et sont disponibles dans le niveau sans frais sans frais de gestion Infra Manager.

La version 1.16.5 de Terraform est distribuée sous la licence Business Source (BUSL) et est proposée en version payante dans Infra Manager. L'utilisation d'une version payante de Terraform entraîne des frais de déploiement et de gestion en fonction du nombre de ressources gérées par Infra Manager :

  • Quota du niveau sans frais : chaque compte de facturation reçoit un quota du niveau sans frais pouvant atteindre 500 ressources par mois sans frais.

  • Frais d'utilisation : au-delà de la limite mensuelle de 500 ressources du niveau sans frais, les ressources gérées par des déploiements qui utilisent une version payante de Terraform entraînent des frais de gestion des ressources, qui sont calculés par heure et par ressource.

  • Les aperçus ne sont pas facturés : les versions payantes de Terraform (telles que 1.16.5) n'entraînent des frais que pour les déploiements Infra Manager, et non pour les aperçus de déploiement.

Pour en savoir plus sur la tarification, consultez la page Tarifs d'Infrastructure Manager.

Contraintes sur les configurations Terraform

Pour utiliser Infrastructure Manager afin de déployer une configuration Terraform, celle-ci doit respecter les contraintes suivantes :

Valeurs de configuration Terraform et données sensibles

N'incluez pas d'informations personnelles ou sensibles dans les valeurs de configuration Terraform.

La documentation du fournisseur Google Cloud indique les valeurs de configuration qui peuvent potentiellement inclure des informations sensibles.

Par exemple, la ressource google_storage_bucket_object permet de créer un objet Cloud Storage à l'aide de l'argument content. Cet argument est marqué comme sensible sur la page google_storage_bucket_object de la documentation du fournisseur Google Cloud .

Vous pouvez utiliser ces étiquettes pour vous guider lors de la création de configurations Terraform ou lors de l'examen d'une configuration Terraform existante avant utilisation.

Consultez l'Avis de confidentialité deGoogle Cloud pour savoir comment Google Cloud traite les informations personnelles qu'il collecte ou génère lors de la fourniture et de l'administration des services cloud.

Utiliser le fournisseur Terraform pour Google Cloud

Vous pouvez éventuellement utiliser gcloud CLI pour configurer les déploiements et les aperçus afin d'utiliser les fournisseurs Terraform gérés par Infra Manager pourGoogle Cloud.

Infra Manager est compatible avec les fournisseurs Terraform pour Google Cloud :

  • google
  • google-beta

Omettez ce champ pour utiliser le fournisseur Terraform géré par HashiCorp pour Google Cloud.

Pour savoir comment spécifier l'utilisation d'un fournisseur Terraform géré par Infra Manager, consultez Déployer une infrastructure à l'aide d'Infrastructure Manager, Mettre à jour un déploiement ou Prévisualiser un déploiement.

Vérifier les versions compatibles du fournisseur

Pour vérifier les versions d'un fournisseur Terraform pour Google Cloud compatibles avec Infra Manager, consultez le manifest.json dans le bucket Cloud Storage géré par Infra Manager associé à la région de votre déploiement au format suivant :

https://storage.googleapis.com/LOCATION-im-providers/hashicorp/PROVIDER_VERSION/manifest.json

Vous trouverez la liste complète des versions compatibles dans le champ versions du fichier manifest.json.

Par exemple, si votre déploiement se trouve dans la région africa-south1 et que vous utilisez le fournisseur google-beta, accédez à https://storage.googleapis.com/africa-south1-im-providers/hashicorp/google-beta/manifest.json pour afficher les régions disponibles.

Étapes suivantes