Exercice : créer et déployer un modèle Azure Resource Manager
Notes
La première fois que vous activez un bac à sable et que vous acceptez les conditions d’utilisation, votre compte Microsoft est associé à un nouvel annuaire Azure appelé Microsoft Learn Sandbox (Bac à sable Microsoft Learn). Vous êtes également ajouté à un abonnement spécial nommé Abonnement Concierge.
Dans cet exercice, vous allez créer un modèle Azure Resource Manager (ARM), le déployer sur Azure, puis le mettre à jour en y ajoutant des paramètres et des sorties.
Cet exercice utilise les Outils Azure Resource Manager pour Visual Studio Code. Veillez à installer cette extension dans Visual Studio Code avant de commencer l’exercice.
Créer un modèle ARM
Ouvrez Visual Studio Code et créez un nouveau fichier appelé azuredeploy.json.
L’extension Modèle ARM de Visual Studio Code est préconfigurée avec de nombreux extraits de code pour vous aider à développer des modèles. Commençons par ajouter un modèle vide. Sur la première ligne du fichier, entrez arm.
Visual Studio Code affiche automatiquement plusieurs choix potentiels qui commencent par arm!. Sélectionnez le Modèle Azure Resource Manager (ARM). Visual Studio Code traite automatiquement les schémas et les langages pour votre modèle.
Votre fichier ressemble maintenant à ceci :
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": {}, "functions": [], "variables": {}, "resources": [], "outputs": {} }
Notez que ce fichier contient toutes les sections d’un modèle ARM que nous avons décrites à l’unité précédente.
Enregistrez les changements effectués dans le fichier en appuyant sur CTRL+S.
Déployer le modèle ARM sur Azure
Pour déployer ce modèle dans Azure, vous devez vous connecter à votre compte Azure à partir du terminal Visual Studio Code. Vérifiez que les outils Azure CLI sont installés et que vous vous connectez au même compte que celui utilisé pour activer le bac à sable.
Sélectionnez Terminal > Nouveau terminal pour ouvrir une fenêtre de terminal.
Si la barre de commandes de la fenêtre du terminal indique bash, vous avez le bon interpréteur de commandes et pouvez passer à la section suivante.
Sinon, sélectionnez la liste déroulante et choisissez Sélectionner le profil par défaut.
Sélectionnez Git Bash.
Sélectionnez Terminal > Nouveau terminal pour ouvrir une fenêtre de terminal de l’interpréteur de commandes bash.
Connexion à Azure
Dans la fenêtre de terminal, exécutez cette commande pour vous connecter à Azure.
az login
Un navigateur s’ouvre pour vous permettre de vous connecter à votre compte. Une fois que vous êtes connecté, une liste des abonnements associés à ce compte s’affiche dans le terminal. Si vous avez activé le bac à sable, vous devez voir un abonnement appelé Abonnement Concierge. Utilisez celui-ci pour le reste de l’exercice.
Dans l’interpréteur de commandes bash, exécutez la commande suivante pour définir l’abonnement par défaut pour toutes les commandes Azure CLI que vous exécutez dans cette session.
az account set --subscription "Concierge Subscription"
Si vous avez utilisé récemment plusieurs bacs à sable, plusieurs abonnements Concierge peuvent figurer dans la liste. Si c’est le cas, utilisez les deux étapes suivantes pour identifier et définir l’abonnement par défaut.
- Exécutez la commande suivante pour obtenir les ID d’abonnement Concierge.
az account list \ --refresh \ --query "[?contains(name, 'Concierge Subscription')].id" \ --output table
- Définissez l’abonnement par défaut en exécutant la commande suivante, et remplacez {votre ID d’abonnement} par le dernier ID d’abonnement Concierge.
az account set --subscription {your subscription ID}
Définir votre groupe de ressources par défaut
Si vous définissez le groupe de ressources par défaut sur celui que vous avez créé pendant l’activation du bac à sable, vous pouvez omettre ce paramètre dans les commandes Azure CLI de cet exercice. Pour définir le groupe de ressources, exécutez la commande suivante.
az configure --defaults group=<rgn>[sandbox resource group name]</rgn>
Déployer le modèle sur Azure
Exécutez les commandes suivantes pour déployer le modèle ARM sur Azure. Le modèle ARM n’a pas encore de ressources, vous ne voyez donc pas de ressources créées. Vous devez obtenir un déploiement réussi.
templateFile="azuredeploy.json"
today=$(date +"%d-%b-%Y")
DeploymentName="blanktemplate-"$today
az deployment group create \
--name $DeploymentName \
--template-file $templateFile
La section du haut de ce code définit les variables Azure CLI, qui incluent le chemin du fichier de modèle à déployer et le nom du déploiement. La section du bas, az deployment group create
, déploie le modèle sur Azure. Notez que le nom du déploiement est blanktemplate
avec la date comme suffixe.
Vous devez aussi voir Running...
dans le terminal.
Pour déployer ce modèle sur Azure, vous devez vous connecter à votre compte Azure à partir du terminal Visual Studio Code. Vous devez avoir installé Azure PowerShell Tools à partir des extensions Visual Studio Code et vous connecter au même compte que celui qui a activé le bac à sable.
Dans la barre de commandes, sélectionnez Terminal > Nouveau terminal pour ouvrir une fenêtre PowerShell.
Si la barre de commandes de la fenêtre du terminal indique PowerShell, vous avez le bon interpréteur de commandes dans lequel travailler et vous pouvez passer à la section suivante.
Si ce n’est pas le cas, cliquez sur la flèche vers le bas et sélectionnez PowerShell dans la liste déroulante. Si cette option est manquante, choisissez Sélectionner le profil par défaut.
Dans le champ d’entrée, faites défiler la liste et sélectionnez PowerShell.
Sélectionnez Terminal > Nouveau terminal pour ouvrir une fenêtre de terminal PowerShell.
Connectez-vous à Azure en utilisant Azure PowerShell
À partir du terminal dans Visual Studio Code, exécutez la commande suivante pour vous connecter à Azure. Un navigateur s’ouvre pour vous permettre de vous connecter à votre compte.
Connect-AzAccount
Conseil
Le module Az PowerShell remplace AzureRM et est la version recommandée à utiliser pour interagir avec Azure.
Connectez-vous avec le compte que vous avez utilisé pour activer le bac à sable. Une fois que vous êtes connecté, Visual Studio Code liste les abonnements associés à votre compte dans la fenêtre de terminal. Si vous avez activé le bac à sable, vous voyez un bloc de code qui contient
"name": "Concierge Subscription"
. Il s’agit de l’abonnement à utiliser pour le reste de l’exercice.
Définir l’abonnement par défaut pour toutes les commandes PowerShell dans cette session
Exécutez la commande suivante pour obtenir votre ou vos abonnements et leurs ID. L’ID d’abonnement est la deuxième colonne. Recherchez Abonnement Concierge et copiez la valeur de la deuxième colonne. Elle se présente sous la forme cf49fbbc-217c-4eb6-9eb5-a6a6c68295a0 :
Get-AzSubscription
Exécutez la commande suivante, en remplaçant {Votre ID d’abonnement} par celui que vous avez copié à l’étape précédente pour définir votre abonnement actif sur l’abonnement Concierge.
$context = Get-AzSubscription -SubscriptionId {Your subscription ID} Set-AzContext $context
Exécutez la commande suivante pour que le groupe de ressources par défaut soit le groupe de ressources créé pour vous dans l’environnement de bac à sable. Cette action vous permet d’omettre ce paramètre du reste des commandes Azure PowerShell dans cet exercice.
Set-AzDefault -ResourceGroupName <rgn>[sandbox resource group name]</rgn>
Déployer le modèle sur Azure
Déployez le modèle sur Azure en exécutant les commandes suivantes. Le modèle ARM n’a pas encore de ressources : vous ne verrez donc pas de ressources créées.
$templateFile="azuredeploy.json"
$today=Get-Date -Format "MM-dd-yyyy"
$deploymentName="blanktemplate-"+"$today"
New-AzResourceGroupDeployment `
-Name $deploymentName `
-TemplateFile $templateFile
La section supérieure du code précédent définit des variables Azure PowerShell, qui comprennent le chemin du fichier de déploiement et le nom du déploiement. Ensuite, la commande New-AzResourceGroupDeployment
déploie le modèle sur Azure. Notez que le nom du déploiement est blanktemplate
avec la date comme suffixe.
Une fois que vous avez déployé votre modèle ARM sur Azure, accédez au portail Azure et vérifiez que vous êtes dans l’abonnement du bac à sable. Pour cela, sélectionnez votre avatar dans le coin supérieur droit de la page. Sélectionnez Changer de répertoire. Dans la liste, choisissez le répertoire Bac à sable Microsoft Learn.
Dans le menu de ressources, sélectionnez Groupes de ressources.
Sélectionnez le groupe de ressources
[nom du groupe de ressources de bac à sable] .Dans le volet Vue d’ensemble, vous voyez qu’un déploiement a réussi.
Sélectionnez 1 réussi pour afficher les détails du déploiement.
Sélectionnez
blanktemplate
pour voir les ressources qui ont été déployées. Dans ce cas, il est vide, car vous n’avez pas encore spécifié de ressources dans le modèle.Laissez la page ouverte dans votre navigateur. Vous allez à nouveau vérifier les déploiements.
Ajouter une ressource au modèle ARM
Dans la tâche précédente, vous avez appris à créer un modèle vide et à le déployer. Vous êtes maintenant prêt à déployer une ressource réelle. Dans cette tâche, vous allez ajouter une ressource de compte de stockage Azure au modèle ARM en utilisant un extrait de code provenant de l’extension Outils Azure Resource Manager pour Visual Studio Code.
Dans le fichier azuredeploy.json dans Visual Studio Code, placez votre curseur entre les crochets dans le bloc des ressources
"resources":[],
.Entrez storage à l’intérieur des crochets. Une liste d’extraits de code associés apparaît. Sélectionnez arm-storage.
Votre fichier se présentera comme ceci :
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": {}, "functions": [], "variables": {}, "resources": [ { "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2023-05-01", "name": "storageaccount1", "tags": { "displayName": "storageaccount1" }, "location": "[resourceGroup().location]", "kind": "StorageV2", "sku": { "name": "Premium_LRS" } } ], "outputs": {} }
Les valeurs que vous devez modifier sont mises en surbrillance dans la nouvelle section de votre fichier. Vous pouvez parcourir ces valeurs en appuyant sur la touche Tab.
Notez que les attributs
tags
etlocation
sont renseignés. L’attributlocation
utilise une fonction pour définir l’emplacement de la ressource sur l’emplacement du groupe de ressources. Vous découvrirez plus d’informations sur les balises et les fonctions dans le module suivant.Remplacez les valeurs name et displayName de la ressource par une valeur unique (par exemple, learnexercise12321). Ce nom doit être unique sur l’ensemble d’Azure. par conséquent, choisissez un nom qui vous est propre.
Remplacez la valeur du nom de la référence SKU Premium_LRS par Standard_LRS. Modifiez la valeur du niveau par Standard. Notez que Visual Studio Code vous propose les choix appropriés pour les valeurs de vos attributs dans IntelliSense. Supprimez la valeur par défaut, y compris les guillemets, et entrez des guillemets pour tester la valeur.
L’emplacement de la ressource est défini sur l’emplacement du groupe de ressources dans où il sera déployé. Conservez la valeur par défaut ici.
Enregistrez le fichier.
Déployer le modèle ARM mis à jour
Ici, vous allez modifier le nom du déploiement pour mieux refléter ce que fait ce déploiement.
Exécutez les commandes Azure CLI suivantes dans le terminal. Cet extrait de code contient le même code que celui utilisé précédemment, mais le nom du déploiement est changé.
templateFile="azuredeploy.json"
today=$(date +"%d-%b-%Y")
DeploymentName="addstorage-"$today
az deployment group create \
--name $DeploymentName \
--template-file $templateFile
Exécutez les commandes Azure PowerShell suivantes dans le terminal. Cet extrait de code contient le même code que celui utilisé précédemment, mais le nom du déploiement est changé.
$templateFile="azuredeploy.json"
$today=Get-Date -Format "MM-dd-yyyy"
$deploymentName="addstorage-"+"$today"
New-AzResourceGroupDeployment `
-Name $deploymentName `
-TemplateFile $templateFile
Vérifier votre déploiement
Une fois le déploiement terminé, revenez au portail Azure dans votre navigateur. Accédez à votre groupe de ressources : vous voyez qu’il y a maintenant 2 déploiements réussis. Sélectionnez ce lien.
Notez que les deux déploiements se trouvent dans la liste.
Sélectionnez addstorage.
Notez que le compte de stockage a été déployé.