Articles Tagués ‘Azure Automation’

 

Depuis quelques jours, l’équipe Azure Corp a publié deux nouvelles Updates sur le (New) Portail Azure (https;//portal.azure.com). Une fois connecté, celles-ci sont affichées et disponibles au niveau de la Barre de « Notifications » :

La première concerne la prise en charge de SQL Ops Studio par le service Azure SQL Data Warehouse et la deuxième concerne l’interface en ligne de commande Azure (Azure CLI), c’est plutôt cette Update qui va nous intéresser :).

 

Comme indiqué dans le message, il faut bien noter qu’à partir de Décembre 2017 :

Azure CLI (en version 2.0) sera l’outil CLI (Command Line Interface) préféré/privilégié pour la gestion des ressources ARM (Azure Resource Manager)

Quant à Azure CLI (en version 1.0), il prendra uniquement en charge les ressources ASM (Azure Service Manager)

Enfin, vous pouvez imaginer le couple « d’Azure Management Tools » suivants :

ASM : CLI (Azure CLI 1.0) + Portail Web « Classic » (manage.windowsazure.com)

ARM : CLI (Azure CLI 2.0) + Portail Web « New » (portal.azure.com)

 

Useful Info : Si vous n’avez pas encore consulté les 3 premiers HowTo Azure CLI 2.0, ceux-ci sont disponibles aux URLs ci-après:

HowTo #N°1 : Connecter l’interface Azure CLI 2.0 à votre abonnement Azure

HowTo #N°2 : Créer et gérer les groupes de ressources Azure

HowTo #N°3 Créer et gérer les réseaux virtuels Azure (VNET : Virtual Network)

 

Introduction

Azure VM (Virtual Machine) est l’une des offres IaaS (Infrastructure-as-aService) proposée par Microsoft sur sa Public Cloud Platform : Microsoft Azure.

Azure VM vous permet de créer et gérer des machines virtuelles Windows ou Linux hautement disponibles, Scalables et sécurisées.

Microsoft propose son offre Azure VM pour les deux modèles de déploiement : ASM (Azure Service Manager) et ARM : Azure Resource Manager.

Note : L’interface Azure CLI 2.0 étant disponible uniquement pour l’ARM, le mode ASM ne sera pas traité dans le présent article.

La création d’une VM Azure (ARM mode) peut se faire via :

Le nouveau portail Azure : portal.azure.com

Windows PowerShell : utilisation du module PS Azure

Azure CLI 2.0 : via l’utilisation de la commande az vm

Nous allons découvrir à travers cet article la troisième méthode qu’est l’utilisation de l’interface Azure CLI 2.0

Now let’s create & manage our Azure V(irtual) M(achine) via Azure CLI 2.0__O

 

HowTo : Créer et gérer les VMs Azure via Azure CLI 2.0
  • Ouvrez une Session Windows sur votre machine d’administration sur laquelle Azure CLI 2.0 a été installée
  • Lancez l’invite de commande (CMD.exe) en tant qu’Administrateur et saisissez az pour vérifier la disponibilité de l’interface Azure CLI 2.0
  • Après avoir saisi et exécuté la commande az, le Menu suivant vous est retourné :

  • La commande qui nous intéresse est VM. En effet, l’interface az dans le contexte VM vous permet de créer et gérer les Machines Virtuelles Azure (Windows ou Linux)
  • Pour afficher toutes les commandes & sous-commandes liés à la création et gestion de VMs Azure, saisissez la commande : az vm -h

#1. Lister toutes les VMs disponibles au niveau de votre abonnement Azure

az vm list –output table

ou simplement

az vm list –out table

Note importante : si le compte connecté à l’interface Azure CLI 2.0 dispose d’un accès à plusieurs abonnements Azure, vous devez d’abord, sélectionner (définir) un abonnement avant de pouvoir lister les VMs qui y sont hébergées Pour ce faire, exécutez la commande az account list –out table comme montré ci-dessous, et définissez ensuite un abonnement Azure « comme étant ‘Actif' », via l’utilisation de la commande az account set -s ID_de_votre_abonnement

 

Astuce : si vous souhaitez lister que les VMs membres d’un groupe de ressources spécifique, exécutez la même commande utilisée précédemment suivie du paramètre -g « Nom_Groupe_de_Ressource » > e.g : az vm list -g hk-dev-rg –out table

 

#2. Démarrer une VM Azure

Dans l’exemple suivant, la VM « hk-dev-dc1 » faisant parti du groupe de ressources « hk-dev-rg » sera démarré :

az vm start -n hk-dev-dc1 -g hk-dev-rg

Astuce : vous pouvez utiliser le paramètre –no-wait pour lancer l’opération en « Background » et ne pas attendre la fin de celle-ci pour récupérer la main sur l’interface CLI, voir Screenshot ci-dessous :

 

#3. Obtenir des informations sur une VM Azure spécifique

Dans l’exemple suivant, nous allons collecter et afficher des informations sur la VM démarrée précédemment (hk-dev-dc1) :

az vm show –show-details -n hk-dev-dc1 -g hk-dev-rg –out table

 

#4. Arrêter une VM Azure 

Dans l’exemple suivant, nous allons arrêter la VM « hk-dev-dc1 »

az vm stop -n hk-dev-dc1 -g hk-dev-rg

Comme pour la commande az vm start, vous n’êtes pas obligé d’attendre la fin de l’opération, vous pouvez utiliser le paramètre –no-wait à la fin de la commande :

 

#5. Redémarrer une VM Azure 

Dans l’exemple suivant, la VM « hk-dev-tfs1 » sera redémarrée :

az vm restart -n hk-dev-tfs1 -g hk-dev-rg –no-wait

 

#6. Désallouer une VM Azure

Pour libérer les ressources consommées par une VM, la commande az vm deallocate est utilisée.

Dans l’exemple suivant, nous allons désallouer la VM hk-dev-sql1 faisant parti du groupe de ressources « hk-dev-rg »

az vm deallocate -n hk-dev-sql1 -g hk-dev-rg

La VM est désormais « Deallocated », ses ressources sont donc libérées et ne sont plus facturées :

 

#7. Lister toutes les tailles de VMs disponibles sur une région Azure spécifique

Dans l’exemple suivant, nous allons lister tous les Size de VM disponible au niveau de la région Azure « Europe de l’Ouest » > « WestEurope ».

az vm list-sizes –location WestEurope –output table

ou simplement

az vm list-sizes -l WestEurope -o table

 

#8. Lister toutes les tailles de VMs vers lesquelles une VM spécifique peut être Upgradée 

Dans l’exemple suivant, nous allons lister toutes les tailles de VMs vers lesquelles la VM « hk-dev-dc1 » pour être Resizée :

az vm list-vm-resize-options -n hk-dev-dc1 -g hk-dev-rg –out table

 

#9. Changer la taille (capacité) d’une VM Azure

Nous avons listé précédemment toutes les VMs vers lesquelles la VM « hk-dev-dc1 » peut être upgradée.

Nous allons maintenant utilisée la commande az vm resize pour upgrader les capacités de cette VM vers la VM size « Standard_A3 ». Pour ce faire, la commande suivante est utilisée :

az vm resize –size Standard_A3 -n hk-dev-dc1 -g hk-dev-rg 

Si vous vous rendez sur le (New) Portail Azure, et cliquez sur la VM en question, vous pouvez déjà constater que la taille (le Flag au niveau Propriétés de la VM) est déjà changé, et que la VM a été rebootée pour que l’augmentation des capacités soit prise en compte :

Une fois l’upgrade effectué, le message suivant vous est retourné :

 

#10. Mettre à jour (Updater) les propriétés d’une VM Azure

Dans l’exemple suivant, les propriétés de la VM « hk-dev-dc1 » seront updatées :

az vm update -n hk-dev-dc1 -g hk-dev-rg 

Cette commande est à exécuter après chaque changement /modification des propriétés et objets associés à une VM Azure.

 

#11. Supprimer une VM Azure

Dans l’exemple suivant, la VM « hk-dev-dc2 » sera supprimé : az vm delete -n hk-dev-dc2 -g hk-dev-rg –no-wait

Un message de confirmation vous est retourné, saisissez « Y » comme « Yes » pour confirmer la suppression :

Astuce  : vous pouvez bypasser cette option de confirmation en utilisant le paramètre –yes ou -y. La commande devient donc : az vm delete -n hk-dev-dc2 -g hk-dev-rg -y –no-wait

 

#12. Créer une VM Azure (Windows ou autre)

Dans l’exemple suivant, une VM Azure exécutant Windows Server 2016 (Edition Datacenter) sera provisionnée:

az vm create -n hk-dev-ws2016 -g hk-dev-rg –image Win2016Datacenter

Note : vous êtes invité à saisir le mot de passe du compte Administrateur

Pour provisionner une VM Azure CentOS, la commande suivante est utilisée :

az vm create -n hk-dev-cos -g hk-dev-rg –image CentOS

Si vous voulez provisionner une nouvelle VM Windows Server 2012 R2 Edition Datacenter de taille « Standard_A3 » et lui attacher un nouveau vDisk (Virtual Hard Drive) de données de 50GB, exécutez la commande ci-dessous :

az vm create -n hk-dev-ws2012R2 -g hk-dev-rg –image Win2012R2Datacenter –data-disk-sizes-gb 50 –size Standard_A3

Plusieurs dizaines de paramètres sont fournis avec la commande az vm create, n’hésitez pas à consulter le « Help » pour en savoir plus sur les autres sous-commandes /paramètres : az vm create -h

 

#13. Redéployer une VM Azure

Dans l’exemple suivant, la VM « hk-dev-dc1 » sera redéployé : az vm redeploy -n hk-dev-dc1 -g hk-dev-rg

Note importante : Une VM en cours d’exécution (mode Running) ne peut être redéployée, en effet, si vous essayez de redéployer une VM « Running », le message d’erreur suivant vous est retourné :

 

#14. Générer un Template d’une VM Azure

Si vous voulez créer un VM Template à partir d’une VM Azure spécifique, eh bien vous devez utiliser la commande az vm capture.

La capture de la VM se fait en trois étapes :

  • Désallouer la VM
  • Généraliser la VM
  • Capturer la VM

Dans l’exemple suivant, nous allons générer une VM Template à partir de la VM « hk-dev-dc1 », les commandes à exécuter sont donc :

az vm deallocate -n hk-dev-dc1 -g hk-dev-rg

az vm generalize -n hk-dev-dc1 -g hk-dev-rg

az vm capture -n hk-dev-dc1 -g hk-dev-rg –vhd-name-prefix dc-template

Si vous parcourez le compte de stockage hébergeant les fichiers (VHDs) de votre VM « Source », vous constaterez l’apparition de deux nouveaux fichiers : fichier .vhd et son fichier .json associé. Ces deux fichiers se trouvent dans : Compte de stockage > Conteneurs > System > Microsoft.Compute > Images > vhds 

Le fichier dc-template-vmTemplate.XXXXXXXX peut désormais être utilisé pour provisionner de nouvelles VMs Azure.

 

#15. Ouvrir un port spécifique sur une VM azure

Si votre VM fera (par exemple) office de Serveur Web, et que vous avez besoin d’ouvrir le port 80 (HTTP), la commande suivante est à exécuter : az vm open-port -n hk-dev-iis1 -g hk-dev-rg –port 80

 

Plusieurs HowTo Azure CLI 2.0 sont en cours de finalisation, so stay connected dear friends :).