Introduction

Effectué

Microsoft Azure prend en charge plusieurs méthodes à la fois pour provisionner des ressources pour une machine virtuelle Linux et pour effectuer la transition des charges de travail Linux existantes.

Exemple de scénario

Supposons que vous ayez été embauché par une société de services financiers pour effectuer la transition de ses charges de travail Linux locales existantes vers Azure. Vous avez sélectionné IaaS (Infrastructure as a Service) et PaaS (Platform as a Service) comme services dont vous aurez besoin pour le projet, et vous avez terminé la planification des ressources nécessaires pour le déploiement. Vous devez maintenant sélectionner une méthodologie de déploiement qui offre un équilibre optimal entre simplicité et efficacité lors du provisionnement des machines virtuelles Azure exécutant Linux. Vous avez le choix entre le portail Azure, Azure CLI, et les modèles Terraform et Bicep.

Passer en revue les principales méthodes de déploiement

Quand vous choisissez la méthodologie de déploiement à utiliser, vous devez considérer ce que chaque choix peut offrir.

Portail Azure

L’approche la plus facile pour provisionner des ressources Azure est d’utiliser le portail Azure. Le portail Azure est une console web unifiée qui offre une alternative pratique aux outils en ligne de commande. Son interface graphique basée sur un navigateur est conçue pour faciliter le déploiement des ressources et les tâches de gestion en invitant l’utilisateur à fournir toutes les informations nécessaires, en fournissant des conseils et en affichant des messages utiles.

Azure CLI

Azure CLI est un outil en ligne de commande multiplateforme, que vous pouvez utiliser pour accéder aux abonnements Azure et gérer leurs ressources. Vous pouvez exécuter des commandes Azure CLI de façon interactive dans une interface de console, comme une fenêtre d’invite de commandes Windows ou une session shell Linux. Vous pouvez aussi incorporer Azure CLI dans des scripts qui utilisent des commandes du shell Bash et des utilitaires GNU pour automatiser le processus.

Terraform

Terraform est un outil IaC (Infrastructure as Code) open source multiplateforme, que vous pouvez utiliser pour provisionner et configurer un large éventail d’environnements, y compris des clouds publics et privés multifournisseurs. Contrairement à Azure CLI, qui fournit une approche impérative de la gestion des ressources, Terraform suit une approche déclarative.

Une approche impérative implique l’écriture de scripts ou l’exécution d’une séquence de commandes. Vous fournissez explicitement les étapes à exécuter pour produire un résultat souhaité. Quand vous utilisez des déploiements impératifs, il vous appartient de gérer les dépendances, le traitement des erreurs et les mise à jour des ressources. Une approche déclarative implique d’écrire une définition qui décrit le résultat souhaité, au lieu des étapes à suivre pour l’implémenter : les outils déterminent alors la méthode optimale pour vous fournir ce résultat. Pour cela, ils inspectent l’état actuel de votre environnement, le comparent à votre état cible, puis implémentent les modifications nécessaires pour les rendre identiques.

Notes

Red Hat Ansible est un autre outil open source répandu, que vous pouvez utiliser pour compléter les fonctionnalités de Terraform. Cependant, Ansible facilite le provisionnement des ressources cloud et prend en charge la gestion de la configuration et les déploiements d’applications.

Bicep

Bicep offre une méthode de provisionnement déclaratif qui est une alternative à Terraform. Bien qu’il cible exclusivement les ressources Azure, vous pouvez bénéficier de plusieurs fonctionnalités d’intégration et d’utilisabilité communes aux technologies basées sur le cloud Microsoft.

Remarque

Pour une comparaison complète entre Bicep et Terraform, reportez-vous à Comparaison de Terraform et Bicep.

Azure prend en charge deux types de modèles pour le provisionnement déclaratif :

  • Modèle Azure Resource Manager : Ce modèle utilise le format de fichier du standard ouvert JSON (JavaScript Object Notation).

  • Modèle Bicep : Ce modèle s’appuie sur un langage spécifique au domaine que Microsoft a développé récemment pour simplifier l’expérience de création de modèles et améliorer les fonctionnalités résultantes.

Vous pouvez utiliser ces deux modèles pour déployer pratiquement n’importe quelle ressource Azure. Ces modèles s’intègrent également facilement dans les systèmes de gestion de versions et les pipelines de déploiement, ce qui améliore l’automatisation et la fiabilité. Cependant, par rapport aux modèles Azure Resource Manager, les modèles Bicep offrent plusieurs avantages supplémentaires, y compris une syntaxe plus concise et une gestion intégrée des dépendances.

Qu’allons-nous faire ?

Dans ce module, vous allez choisir la méthode de déploiement optimale de provisionnement des machines virtuelles Linux dans Azure. Votre choix va dépendre des critères qui ont été établis pendant la phase de planification du déploiement.

Quel est l’objectif principal ?

À la fin de ce module, vous serez en mesure de provisionner des machines virtuelles Azure exécutant Linux en utilisant la méthodologie de déploiement de votre choix. Vous aurez également une meilleure compréhension des cas d’usage les plus appropriés pour chaque méthode.