Présentation d'Azure Export for Terraform

Azure Export for Terraform est un outil conçu pour réduire les difficultés de traduction entre les concepts Azure et Terraform.

Avantages

Azure Export for Terraform vous permet de :

  • Simplifier la migration vers Terraform on Azure. Azure Export for Terraform vous permet de migrer des ressources Azure vers Terraform à l'aide d'une seule commande.
  • Exporter des ensembles de ressources spécifiés par l'utilisateur vers le code et l'état HCL de Terraform à l'aide d'une seule commande. Azure Export for Terraform vous permet de spécifier un périmètre d'exportation prédéterminé. Le périmètre peut être aussi granulaire qu'une seule ressource. Vous pouvez également exporter un groupe de ressources et ses ressources imbriquées. Enfin, vous pouvez exporter un abonnement entier.
  • Inspectez l'infrastructure préexistante avec toutes les propriétés exposées. Qu'il s'agisse d'apprendre une ressource récemment publiée ou d'enquêter sur un problème en production, Azure Export for Terraform prend en charge une exportation en lecture seule avec l'option d'exposer toutes les propriétés configurables de la ressource.
  • Suivez le workflow de planification/application pour intégrer une infrastructure non Terraform dans Terraform. Exportez le code HCL, inspectez les ressources non Terraform et intégrez-les facilement dans votre infrastructure de production et vos backends distants.

Installation

La page GitHub Azure Export for Terraform répertorie les versions de l'outil avec des liens vers l'installation pour différentes plateformes (Windows MSIs, Homebrew, et installations Linux) et le code source.

Utilisation

Dans sa forme la plus abstraite, Azure Export s'appelle comme suit :

aztfexport [command] [option] <scope>

La portée change en fonction de la commande exécutée, tout comme l'ensemble des indicateurs d'option disponibles. Trois commandes doivent être utilisées en fonction de ce que vous essayez d'exporter :

Tâche Description Exemple
Exporter une seule ressource. Pour exporter une seule ressource, indiquez l'identifiant de ressource Azure associé à la ressource. aztfexport resource [option] <resource id.>
Exporter un groupe de ressources. Pour exporter un groupe de ressources (et ses ressources imbriquées), indiquez le nom du groupe de ressources ; pas l'ID. aztfexport resource-group [option] <resource group name>
Exporter à l'aide d'une requête. L'outil prend en charge l'exportation avec une requête Azure Resource Graph. aztfexport query [option] <ARG where predicate>

Fournisseurs

Bien qu'Azure Export utilise par défaut le fournisseur azurerm, vous pouvez également exporter le AzAPI fournisseur :

aztfexport [command] --provider-name=azapi [further options] <scope>

Divulgation de la collection de données

Par défaut, Azure Export for Terraform collecte des données de télémétrie. Toutefois, vous pouvez facilement désactiver ce processus.

Microsoft agrège les données collectées pour identifier les schémas d'utilisation afin d'identifier les problèmes communs et d'améliorer l'expérience d'Azure Export for Terraform. Par exemple, les données d’utilisation permettent d’identifier des problèmes, tels que des commandes dont le niveau de réussite est faible, et nous aident à définir les priorités dans notre travail. Azure Export for Terraform ne collecte aucune donnée privée ou personnelle.

Si vous souhaitez désactiver la collecte de données, exécutez la commande suivante après avoir installé l'outil :

aztfexport config set telemetry_enabled false

Étapes suivantes

Concepts :

Concepts d'Azure Export for Terraform : Découvrez les workflows d'Azure Export for Terraform ainsi que ses meilleures pratiques et les limites actuelles de sa conception.

Articles de démarrage rapide :

Articles pratiques :

Les articles pratiques expliquent des scénarios plus complexes avec des explications et des options :