Tutoriel : Créer et déployer votre premier modèle ARM

Ce tutoriel vous présente les modèles Azure Resource Manager (ARM). Il vous montre comment créer un modèle de démarrage et le déployer sur Azure. Il vous apprend à connaître la structure de modèle et les outils dont vous avez besoin pour travailler avec des modèles. Cette instruction prend 12 minutes, mais le temps réel varie en fonction du nombre d’outils que vous avez besoin d’installer.

Ce tutoriel est le premier d’une série. Au fur et à mesure que vous progressez dans la série, vous modifiez petit à petit le modèle de départ jusqu’à ce que vous exploriez toutes les parties vitales qui composent un modèle ARM. Il s’agit des éléments constitutifs de modèles plus complexes. Nous espérons qu’à la fin de la série, vous vous lancerez dans la création de vos propres modèles et que vous serez prêt à automatiser vos déploiements à l’aide de modèles.

Si vous souhaitez découvrir les avantages qu’offre l’utilisation de modèles et les raisons pour lesquelles vous devriez automatiser le déploiement avec des modèles, consultez la vue d’ensemble des modèles ARM. Pour découvrir les modèles ARM via un ensemble guidé de modules Learn, consultez Déployer et gérer des ressources dans Azure à l’aide de modèles ARM JSON.

Si vous n’avez pas d’abonnement Microsoft Azure, créez un compte gratuit avant de commencer.

Conseil

Si vous débutez avec les modèles ARM, envisagez plutôt d’apprendre Bicep. Bicep est un nouveau langage qui offre les mêmes fonctionnalités que les modèles ARM, mais avec une syntaxe plus facile à utiliser. Pour commencer à apprendre le langage Bicep, consultez Démarrage rapide : Créer des fichiers Bicep avec Visual Studio Code.

Obtenir les outils

Commençons par nous assurer que vous disposez des outils indispensables pour créer et déployer des modèles. Installez ces outils sur votre machine locale.

Éditeur

Les modèles sont des fichiers JSON (JavaScript Object Notation). Pour créer des modèles, vous avez besoin d’un bon éditeur JSON. Nous conseillons Visual Studio Code avec l’extension Outils Azure Resource Manager. Si vous devez installer ces outils, consultez Démarrage rapide : Créer des modèles ARM avec Visual Studio Code.

Déploiement en ligne de commande

Vous avez également besoin d’Azure PowerShell ou d’Azure Command-Line Interface (CLI) pour déployer le modèle. Si vous utilisez Azure CLI, vous devez disposer de la version 2.37.0 ou ultérieure. Pour les instructions d’installation, consultez :

Après avoir installé Azure PowerShell ou Azure CLI, prenez soin de vous connecter une première fois. Pour obtenir de l’aide, consultez Se connecter - PowerShell ou Se connecter - Azure CLI.

Important

Si vous utilisez Azure CLI, veillez à disposer de la version 2.37.0 ou ultérieure. Si vous utilisez Azure PowerShell, veillez à disposer de la version 7.2.4 ou ultérieure. Les commandes présentées dans ce didacticiel ne fonctionneront pas si vous utilisez une version antérieure. Pour vérifier la version installée, utilisez : az --version.

Bien, vous êtes prêt à découvrir les modèles.

Créer votre premier modèle

  1. Ouvrez Visual Studio Code avec l’extension Outils Processeur ARM installée.

  2. À partir du menu Fichier, sélectionnez Nouveau fichier pour créer un fichier.

  3. Dans le menu Fichier, sélectionnez Enregistrer sous.

  4. Nommez le fichier azuredeploy et sélectionnez l’extension de fichier json. Le nom complet du fichier est azuredeploy.json.

  5. Enregistrez le fichier sur votre station de travail. Sélectionnez un chemin facile à mémoriser, car vous devrez fournir ce chemin plus tard, lors du déploiement du modèle.

  6. Copiez et collez le code JSON suivant dans le fichier :

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
      "contentVersion": "1.0.0.0",
      "resources": []
    }
    

    Voici à quoi ressemble votre environnement Visual Studio Code :

    Capture d'écran de Visual Studio Code affichant un modèle ARM vide avec une structure JSON dans l'éditeur.

    Ce modèle ne déploie aucune ressource. Nous commençons avec un modèle vide, ce qui vous permet de vous familiariser avec les étapes de déploiement d’un modèle tout en réduisant au minimum le risque de problème.

    Le fichier JSON contient les éléments suivants :

    • $schema : précise l’emplacement du fichier de schéma JSON. Le fichier de schéma décrit les propriétés qui sont disponibles dans un modèle. Le schéma, par exemple, définit resources comme faisant partie des propriétés valides d’un modèle. Ne vous inquiétez pas de voir 2019-04-01 comme date du schéma. Cette version de schéma est à jour et comprend toutes les fonctionnalités les plus récentes. La date du schéma n’a pas été modifiée, car il n’y a eu aucun changement cassant depuis sa création.
    • contentVersion : spécifie la version du modèle (par exemple, 1.0.0.0). Vous pouvez fournir n’importe quelle valeur pour cet élément. Utilisez cette valeur pour documenter les modifications importantes dans votre modèle. Lorsque vous déployez des ressources à l’aide du modèle, vous pouvez utiliser cette valeur pour vous assurer que vous utilisez le modèle approprié.
    • resources : contient les ressources que vous souhaitez déployer ou mettre à jour. Actuellement, il est vide, mais vous pouvez ajouter des ressources ultérieurement.
  7. Enregistrez le fichier .

Félicitations, vous avez créé votre premier modèle.

Connexion à Azure

Pour commencer à utiliser Azure PowerShell ou Azure CLI, connectez-vous à l’aide de vos informations d’identification Azure.

Sélectionnez les onglets dans les sections de code suivantes pour choisir entre Azure PowerShell et Azure CLI. Les exemples CLI de cet article sont écrits pour l’interpréteur de commandes Bash.

Connect-AzAccount

Si vous avez plusieurs abonnements Azure, choisissez celui que vous souhaitez utiliser. Remplacez SubscriptionName par votre nom d’abonnement. Vous pouvez également utiliser votre ID d’abonnement au lieu du nom de votre abonnement.

Set-AzContext SubscriptionName

Créer un groupe de ressources

Lorsque vous déployez un modèle, vous pouvez indiquer un groupe de ressources pour contenir les ressources. Avant d’exécuter la commande de déploiement, créez le groupe de ressources avec Azure CLI Bash ou Azure PowerShell.

Notes

Des exemples pour l’interface CLI sont écrits pour l’interpréteur de commandes bash. Pour exécuter cet exemple dans Windows PowerShell ou l’invite de commandes, vous devrez peut-être supprimer les barres obliques inverses et écrire la commande comme une ligne telle que :

az group create --name myResourceGroup --location "Central US"

New-AzResourceGroup `
  -Name myResourceGroup `
  -Location "Central US"

Déployer un modèle

Pour déployer le modèle, utilisez au choix Azure CLI ou Azure PowerShell. Utilisez le groupe de ressources que vous avez créé. Donnez un nom au déploiement pour pouvoir l’identifier facilement dans l’historique des déploiements. Par souci pratique, créez également une variable qui stocke le chemin du fichier de modèle. Cette variable vous permet d’exécuter plus facilement les commandes de déploiement, car vous n’êtes pas obligé de retaper le chemin chaque fois que vous déployez. Remplacez {provide-the-path-to-the-template-file} et les accolades {} par le chemin à votre fichier de modèle.

$templateFile = "{provide-the-path-to-the-template-file}"
New-AzResourceGroupDeployment `
  -Name blanktemplate `
  -ResourceGroupName myResourceGroup `
  -TemplateFile $templateFile

La commande de déploiement retourne des résultats. Recherchez ProvisioningState pour voir si le déploiement s’est déroulé correctement.

Notes

En cas d’échec du déploiement, utilisez le commutateur verbose pour obtenir des informations sur les ressources créées. Utilisez le commutateur debug pour obtenir des informations supplémentaires sur le débogage.

Vérifier le déploiement

Vous pouvez vérifier le déploiement en explorant le groupe de ressources à partir du portail Azure.

  1. Connectez-vous au portail Azure.

  2. Dans le menu de gauche, sélectionnez Groupes de ressources.

  3. Cochez la case à gauche de myResourceGroup et sélectionnez myResourceGroup.

  4. Sélectionnez le groupe de ressources que vous avez créé lors de la procédure précédente. Le nom par défaut est myResourceGroup. Le groupe de ressources n’a pas encore de ressources, car vous avez déployé un modèle vide.

  5. Notez au milieu de la vue d’ensemble, dans la section Essentials, la page affiche l’état du déploiement en regard de Déploiements. Sélectionnez 1 Réussite.

    Capture d'écran du portail Azure montrant l'état du déploiement dans la section Essentials du groupe de ressources.

  6. Vous voyez un historique du déploiement du groupe de ressources. Cochez la case à gauche de blanktemplate et sélectionnez blanktemplate.

    Capture d'écran du portail Azure affichant l'historique des déploiements avec le déploiement blanktemplate sélectionné.

  7. Vous affichez un résumé du déploiement. Dans ce cas, il n’y a pas grand-chose à voir parce qu’aucune ressource n’a été déployée. Plus loin dans cette série, vous trouverez peut-être utile de consulter le résumé de l’historique de déploiement. Notez à gauche que vous pouvez voir les entrées, les sorties et le modèle utilisé par le déploiement.

    Capture d'écran du portail Azure montrant le résumé du déploiement du blanktemplate.

Nettoyer les ressources

Si vous passez au tutoriel suivant, vous n’avez pas besoin de supprimer le groupe de ressources.

Si vous arrêtez maintenant, vous pouvez supprimer le groupe de ressources.

  1. Dans le portail Azure, sélectionnez Groupes de ressources dans le menu de gauche.

  2. Tapez le nom du groupe de ressources dans la zone de texte Filtre pour n’importe quel champ...

  3. Cochez la case en regard de myResourceGroup et sélectionnez myResourceGroup ou le nom de votre groupe de ressources.

  4. Sélectionnez Supprimer le groupe de ressources dans le menu supérieur.

    Capture d'écran du portail Azure avec l'option Supprimer le groupe de ressources en surbrillance dans l’affichage du groupe de ressources.

Étapes suivantes

Vous avez créé un modèle simple à déployer sur Azure. Dans le tutoriel suivant, vous pouvez apprendre à ajouter un compte de stockage au modèle et à le déployer dans votre groupe de ressources.