Tutoriel : Créer et gérer des machines virtuelles Windows avec Azure PowerShell
S’applique à : ✔️ Machine virtuelles Windows
Les machines virtuelles fournissent un environnement informatique entièrement configurable et flexible. Ce tutoriel traite de tâches de déploiement de machines virtuelles Azure, telles que la sélection d’une taille de machine virtuelle, la sélection d’une image de machine virtuelle et le déploiement d’une machine virtuelle. Vous allez apprendre à effectuer les actions suivantes :
- Créer une machine virtuelle et vous y connecter
- Sélectionner et utiliser des images de machine virtuelle
- Afficher et utiliser des tailles de machine virtuelle spécifiques
- Redimensionner une machine virtuelle
- Consulter et comprendre l’état d’une machine virtuelle
Lancement d’Azure Cloud Shell
Azure Cloud Shell est un interpréteur de commandes interactif et gratuit que vous pouvez utiliser pour exécuter les étapes de cet article. Il contient des outils Azure courants préinstallés et configurés pour être utilisés avec votre compte.
Pour ouvrir Cloud Shell, sélectionnez simplement Essayer en haut à droite d’un bloc de code. Vous pouvez aussi lancer Cloud Shell dans un onglet distinct du navigateur en accédant à https://shell.azure.com/powershell. Sélectionnez Copier pour copier les blocs de code, collez-les dans Cloud Shell, puis appuyez sur Entrée pour les exécuter.
Créer un groupe de ressources
Créez un groupe de ressources avec la commande New-AzResourceGroup.
Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Un groupe de ressources doit être créé avant les machines virtuelles. Dans l’exemple suivant, un groupe de ressources nommé myResourceGroupVM est créé dans la région EastUS :
New-AzResourceGroup `
-ResourceGroupName "myResourceGroupVM" `
-Location "EastUS"
Le groupe de ressources est spécifié lors de la création ou de la modification d’une machine virtuelle, qui peut être vue dans ce didacticiel.
Créer une machine virtuelle
Lorsque vous créez une machine virtuelle, plusieurs options sont disponibles, comme l’image du système d’exploitation, la configuration réseau et les informations d’identification d’administration. Cet exemple crée une machine virtuelle nommée myVM, qui exécute la version par défaut de Windows Server 2016 Datacenter.
Définissez le nom d’utilisateur et le mot de passe pour le compte Administrateur sur la machine virtuelle avec Get-Credential :
$cred = Get-Credential
Créez la machine virtuelle avec New-AzVM.
New-AzVm `
-ResourceGroupName "myResourceGroupVM" `
-Name "myVM" `
-Location "EastUS" `
-VirtualNetworkName "myVnet" `
-SubnetName "mySubnet" `
-SecurityGroupName "myNetworkSecurityGroup" `
-PublicIpAddressName "myPublicIpAddress" `
-Credential $cred
Se connecter à une machine virtuelle
Une fois le déploiement terminé, créez une connexion Bureau à distance avec la machine virtuelle.
Exécutez les commandes suivantes pour renvoyer l’adresse IP publique de la machine virtuelle. Prenez note de cette adresse IP, afin de pouvoir vous y connecter ultérieurement avec votre navigateur de manière à tester la connectivité web.
Get-AzPublicIpAddress `
-ResourceGroupName "myResourceGroupVM" | Select IpAddress
Exécutez la commande suivante sur votre machine locale pour créer une session Bureau à distance avec la machine virtuelle. Remplacez l’adresse IP par l’adresse publicIPAddress de votre machine virtuelle. À l'invite, saisissez les informations d’identification que vous avez utilisées lors de la création de la machine virtuelle.
mstsc /v:<publicIpAddress>
Dans la fenêtre Sécurité Windows, sélectionnez Plus de choix, puis Utiliser un autre compte. Entrez le nom d’utilisateur et le mot de passe créés pour la machine virtuelle, puis cliquez sur OK.
Comprendre les images de la Place de marché
La Place de marché Azure comprend de nombreuses images qui permettent de créer une nouvelle machine virtuelle. Dans les étapes précédentes, une machine virtuelle a été créée à l’aide de l’image Windows Server 2016 Datacenter. Dans cette étape, le module PowerShell est utilisé pour rechercher d’autres images Windows dans la place de marché, qui peuvent également servir de base pour les nouvelles machines virtuelles. Ce processus consiste à trouver le serveur de publication, l’offre, la référence SKU et éventuellement un numéro de version pour identifier l’image.
Utilisez la commande Get-AzVMImagePublisher pour retourner la liste des éditeurs d’images :
Get-AzVMImagePublisher -Location "EastUS"
Utilisez la commande Get-AzVMImageOffer pour retourner la liste des offres d’images. Cette commande permet de filtrer la liste retournée en fonction de l’éditeur spécifié nommé MicrosoftWindowsServer
:
Get-AzVMImageOffer `
-Location "EastUS" `
-PublisherName "MicrosoftWindowsServer"
Le résultat doit ressembler à l’exemple suivant :
Offer PublisherName Location
----- ------------- --------
Windows-HUB MicrosoftWindowsServer EastUS
WindowsServer MicrosoftWindowsServer EastUS
WindowsServer-HUB MicrosoftWindowsServer EastUS
La commande Get-AzVMImageSku filtre ensuite les résultats en fonction du nom de l’éditeur et de l’offre pour retourner la liste des noms d’images.
Get-AzVMImageSku `
-Location "EastUS" `
-PublisherName "MicrosoftWindowsServer" `
-Offer "WindowsServer"
Le résultat doit ressembler à l’exemple suivant :
Skus Offer PublisherName Location
---- ----- ------------- --------
2008-R2-SP1 WindowsServer MicrosoftWindowsServer EastUS
2008-R2-SP1-smalldisk WindowsServer MicrosoftWindowsServer EastUS
2012-Datacenter WindowsServer MicrosoftWindowsServer EastUS
2012-Datacenter-smalldisk WindowsServer MicrosoftWindowsServer EastUS
2012-R2-Datacenter WindowsServer MicrosoftWindowsServer EastUS
2012-R2-Datacenter-smalldisk WindowsServer MicrosoftWindowsServer EastUS
2016-Datacenter WindowsServer MicrosoftWindowsServer EastUS
2016-Datacenter-Server-Core WindowsServer MicrosoftWindowsServer EastUS
2016-Datacenter-Server-Core-smalldisk WindowsServer MicrosoftWindowsServer EastUS
2016-Datacenter-smalldisk WindowsServer MicrosoftWindowsServer EastUS
2016-Datacenter-with-Containers WindowsServer MicrosoftWindowsServer EastUS
2016-Datacenter-with-Containers-smalldisk WindowsServer MicrosoftWindowsServer EastUS
2016-Datacenter-with-RDSH WindowsServer MicrosoftWindowsServer EastUS
2016-Nano-Server WindowsServer MicrosoftWindowsServer EastUS
Ces informations peuvent être utilisées pour déployer une machine virtuelle avec une image spécifique. Dans cet exemple, une machine virtuelle est déployée à l’aide de la dernière version d’une image Windows Server 2016 avec conteneurs.
New-AzVm `
-ResourceGroupName "myResourceGroupVM" `
-Name "myVM2" `
-Location "EastUS" `
-VirtualNetworkName "myVnet" `
-SubnetName "mySubnet" `
-SecurityGroupName "myNetworkSecurityGroup" `
-PublicIpAddressName "myPublicIpAddress2" `
-ImageName "MicrosoftWindowsServer:WindowsServer:2016-Datacenter-with-Containers:latest" `
-Credential $cred
Comprendre les tailles de machine virtuelle
La taille de machine virtuelle détermine la quantité de ressources de calcul, comme le processeur, le processeur graphique (GPU) et la mémoire, qui sont mises à la disposition de la machine virtuelle. Les machines virtuelles doivent être créées avec une taille adaptée à la charge de travail. Si une charge de travail augmente, une machine virtuelle existante peut également être redimensionnée.
Tailles de machine virtuelle
Le tableau suivant classe les tailles en fonction des cas d’utilisation.
Type | Tailles courantes | Description |
---|---|---|
Usage général | B, Dsv3, Dv3, DSv2, Dv2, Av2, DC | Ratio processeur/mémoire équilibré. Idéale pour le développement/test et pour les petites et moyennes applications et solutions de données. |
Optimisé pour le calcul | Fsv2 | Ratio processeur/mémoire élevé. Convient pour les applications au trafic moyen, les appliances réseau et les processus de traitement par lots. |
Mémoire optimisée | Esv3, Ev3, M, DSv2, Dv2 | Ratio mémoire/cœur élevé. Idéale pour les bases de données relationnelles, les caches moyens à grands et l’analytique en mémoire. |
Optimisé pour le stockage | Lsv2, Ls | Débit de disque et E/S élevés. Idéale pour les bases de données NoSQL, SQL et Big Data. |
GPU | NV, NVv2, NC, NCv2, NCv3, ND | Machines virtuelles spécialisées conçues pour les opérations graphiques lourdes et la retouche vidéo. |
Hautes performances | H | Nos machines virtuelles dotées des processeurs les plus puissants avec interfaces réseau haut débit en option (RDMA). |
Rechercher les tailles de machines virtuelles disponibles
Pour afficher la liste des tailles de machine virtuelle disponibles dans une région particulière, utilisez la commande Get-AzVMSize.
Get-AzVMSize -Location "EastUS"
Redimensionner une machine virtuelle
Après avoir déployé une machine virtuelle, vous pouvez la redimensionner pour augmenter ou diminuer l’allocation des ressources.
Avant de redimensionner une machine virtuelle, vérifiez si la taille souhaitée est disponible dans le cluster de machines virtuelles actuel. La commande Get-AzVMSize retourne la liste des tailles.
Get-AzVMSize -ResourceGroupName "myResourceGroupVM" -VMName "myVM"
Si la taille est disponible, la machine virtuelle peut être redimensionnée à partir d’un état sous tension, mais elle est redémarrée au cours de l’opération.
$vm = Get-AzVM `
-ResourceGroupName "myResourceGroupVM" `
-VMName "myVM"
$vm.HardwareProfile.VmSize = "Standard_DS3_v2"
Update-AzVM `
-VM $vm `
-ResourceGroupName "myResourceGroupVM"
Si la taille souhaitée n’est pas disponible dans le cluster actuel, la machine virtuelle doit être libérée avant de procéder au redimensionnement. La libération d’une machine virtuelle supprime toutes les données du disque temporaire, et l’adresse IP publique est modifiée, sauf si une adresse IP statique est utilisée.
Stop-AzVM `
-ResourceGroupName "myResourceGroupVM" `
-Name "myVM" -Force
$vm = Get-AzVM `
-ResourceGroupName "myResourceGroupVM" `
-VMName "myVM"
$vm.HardwareProfile.VmSize = "Standard_E2s_v3"
Update-AzVM -VM $vm `
-ResourceGroupName "myResourceGroupVM"
Start-AzVM `
-ResourceGroupName "myResourceGroupVM" `
-Name $vm.name
États d’alimentation de la machine virtuelle
Une machine virtuelle Azure peut présenter différents états d’alimentation.
État d’alimentation | Description |
---|---|
Démarrage en cours | La machine virtuelle est en cours de démarrage. |
Exécution en cours | La machine virtuelle est en cours d’exécution. |
En cours d’arrêt | La machine virtuelle est en cours d’arrêt. |
Arrêté | La machine virtuelle est arrêtée. Les machines virtuelles à l’état arrêté entraînent toujours des frais de calcul. |
Libération | La machine virtuelle est libérée. |
Libéré | Indique que la machine virtuelle est supprimée de l’hyperviseur, mais reste disponible dans le plan de contrôle. Les machines virtuelles à l’état Deallocated n’entraînent pas de frais de calcul. |
- | L’état d’alimentation de la machine virtuelle est inconnu. |
Pour obtenir l’état d’une machine virtuelle spécifique, utilisez la commande Get-AzVM. Veillez à spécifier un nom valide de machine virtuelle et de groupe de ressources.
Get-AzVM `
-ResourceGroupName "myResourceGroupVM" `
-Name "myVM" `
-Status | Select @{n="Status"; e={$_.Statuses[1].Code}}
Vous obtenez un résultat semblable à l’exemple suivant :
Status
------
PowerState/running
Pour récupérer l’état d’alimentation de toutes les machines virtuelles de votre abonnement, utilisez l’API Machines virtuelles - Répertorier tout avec le paramètre statusOnly défini sur true.
Tâches de gestion
Pendant le cycle de vie d’une machine virtuelle, vous aurez peut-être besoin d’exécuter des tâches de gestion comme le démarrage, l’arrêt ou la suppression d’une machine virtuelle. En outre, vous souhaiterez peut-être créer des scripts pour automatiser les tâches répétitives ou complexes. À l’aide d’Azure PowerShell, de nombreuses tâches courantes de gestion peuvent être exécutées à partir de la ligne de commande ou dans des scripts.
Arrêter une machine virtuelle
Arrêtez et libérez une machine virtuelle avec Stop-AzVM :
Stop-AzVM `
-ResourceGroupName "myResourceGroupVM" `
-Name "myVM" -Force
Si vous souhaitez conserver la machine virtuelle dans un état approvisionné, utilisez le paramètre -StayProvisioned.
Démarrer une machine virtuelle
Start-AzVM `
-ResourceGroupName "myResourceGroupVM" `
-Name "myVM"
Suppression des ressources de machine virtuelle
Vous pouvez supprimer une machine virtuelle, mais par défaut, seule la ressource de machine virtuelle est supprimée, pas les disques et les ressources de mise en réseau que la machine virtuelle utilise. Vous pouvez modifier le comportement par défaut pour supprimer d’autres ressources lorsque vous supprimez la machine virtuelle. Pour plus d’informations, consultez Supprimer une machine virtuelle et les ressources associées.
Étapes suivantes
Ce didacticiel vous a montré les tâches de base de création et de gestion de machines virtuelles, notamment :
- Créer une machine virtuelle et vous y connecter
- Sélectionner et utiliser des images de machine virtuelle
- Afficher et utiliser des tailles de machine virtuelle spécifiques
- Redimensionner une machine virtuelle
- Consulter et comprendre l’état d’une machine virtuelle
Passez au didacticiel suivant pour en savoir plus sur les disques de machine virtuelle.