Exercice : Créer une machine virtuelle
Commençons par la tâche la plus évidente : créer une machine virtuelle Azure.
Remarque
Cet exercice est facultatif. Si vous souhaitez effectuer cet exercice, vous devez créer un abonnement Azure avant de commencer. Si vous n’avez pas de compte Azure ou si vous ne souhaitez pas en créer un à ce stade, vous pouvez lire les instructions pour comprendre les informations qui sont présentées.
Remarque
Vous devez utiliser un groupe de ressources pour effectuer les étapes de cet exercice. Vous pouvez utiliser un groupe de ressources que vous avez déjà créé, ou vous pouvez créer un groupe de ressources spécifiquement pour cet exercice. Si vous choisissez de créer un groupe de ressources, cela facilite le nettoyage des ressources que vous créez lorsque vous effectuez l’exercice. Si vous n’avez pas de groupe de ressources existant ou si vous souhaitez en créer un spécifiquement pour cet exercice, vous pouvez suivre les étapes décrites dans Utiliser le portail Azure et Azure Resource Manager pour gérer les groupes de ressources pour créer un groupe de ressources à l’aide du portail Azure, ou vous pouvez suivre les étapes décrites dans Gérer les groupes de ressources Azure à l’aide d’Azure CLI pour créer un groupe de ressources à l’aide de l’interface Azure CLI.
Remarque
Dans cette unité, vous utilisez Azure Cloud Shell comme terminal. Vous pouvez accéder à Cloud Shell via le portail Azure ou la connexion Cloud Shell. Vous n’avez pas besoin d’installer quoi que ce soit sur votre PC ou ordinateur portable pour l’utiliser.
Remarque
Tout au long de cet exercice, remplacez myResourceGroupName dans les exemples par le nom d’un groupe de ressources existant ou le nom du groupe de ressources que vous avez créé pour cet exercice.
Créer une machine virtuelle Linux avec Azure CLI
Azure CLI inclut la commande vm, qui vous permet d’utiliser des machines virtuelles dans Azure. Nous pouvons fournir plusieurs sous-commandes pour effectuer des tâches spécifiques. Les plus courantes sont les suivantes :
| Sous-commande | Description |
|---|---|
create |
Créer une machine virtuelle |
deallocate |
Libérer une machine virtuelle |
delete |
Supprimer une machine virtuelle |
list |
Lister les machines virtuelles créées dans votre abonnement |
open-port |
Ouvrir un port réseau spécifique pour le trafic entrant |
restart |
Redémarrer une machine virtuelle |
show |
Obtenir les détails d’une machine virtuelle |
start |
Démarrer une machine virtuelle arrêtée |
stop |
Arrêter une machine virtuelle en cours d’exécution |
update |
Mettre à jour une propriété d’une machine virtuelle |
Remarque
Pour obtenir la liste complète des commandes, voir la Documentation de référence sur Azure CLI.
Commençons par la première : az vm create. Vous pouvez utiliser cette commande pour créer une machine virtuelle dans un groupe de ressources. Vous pouvez transmettre plusieurs paramètres pour configurer tous les aspects de la nouvelle machine virtuelle. Les quatre paramètres que vous devez fournir sont les suivants :
| Paramètre | Description |
|---|---|
--resource-group |
Groupe de ressources propriétaire de la machine virtuelle ; utilisez myResourceGroupName. |
--name |
Nom de la machine virtuelle. Il doit être unique au sein du groupe de ressources. |
--image |
Image du système d’exploitation à utiliser pour créer la machine virtuelle. |
--location |
Région dans laquelle placer la machine virtuelle. En général, il s’agit d’une région proche du consommateur de la machine virtuelle. |
De plus, il est utile d’ajouter l’indicateur --verbose pour voir la progression du processus de création de la machine virtuelle.
Créer une machine virtuelle Linux
Nous allons créer une machine virtuelle Linux. Exécutez la commande suivante dans Azure Cloud Shell pour créer une machine virtuelle Ubuntu dans l’emplacement géographique USA Ouest.
az vm create \
--resource-group "myResourceGroupName" \
--location westus \
--name SampleVM \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys \
--verbose
Conseil
Vous pouvez utiliser le bouton Copier pour copier des commandes dans le Presse-papiers. Pour coller, cliquez avec le bouton droit sur une nouvelle ligne dans le terminal Cloud Shell et sélectionnez Coller ou utilisez le raccourci clavier Maj+Inser (⌘+V sur macOS).
Cette commande crée une machine virtuelle Linux Ubuntu nommée SampleVM. Remarquez que l'outil Azure CLI attend pendant la création de la machine virtuelle. Vous pouvez ajouter l’option --no-wait pour indiquer à l’outil Azure CLI de reprendre immédiatement afin qu’Azure poursuive la création de la machine virtuelle en arrière-plan. C’est utile si vous exécutez la commande dans un script.
Avec l’indicateur --admin-username, nous spécifions le nom de compte administrateur azureuser. Si vous omettez de le spécifier, la commande az vm create utilise votre nom d’utilisateur actuel. Dans la mesure où les règles relatives aux noms de comptes sont différentes pour chaque OS (système d’exploitation), il est plus sûr d’utiliser un nom spécifique.
Remarque
Les noms courants tels que « root » et « admin » ne sont pas autorisés pour la plupart des images.
Nous utilisons également l’indicateur generate-ssh-keys. Ce paramètre, qui est utilisé par les distributions Linux, crée une paire de clés de sécurité, ce qui nous permet d’utiliser l’outil ssh pour accéder à distance à la machine virtuelle. Les deux fichiers sont placés dans le dossier .ssh sur votre ordinateur et dans la machine virtuelle. Si vous disposez déjà d’une clé SSH nommée id_rsa dans le dossier cible, celle-ci sera utilisée au lieu de générer une nouvelle clé.
Une fois qu’Azure CLI a fini de créer la machine virtuelle, vous obtenez une réponse JSON incluant l’état actuel de la machine virtuelle ainsi que ses adresses IP publique et privée, affectées par Azure :
{
"fqdns": "",
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/Learn-bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/providers/Microsoft.Compute/virtualMachines/SampleVM",
"location": "westus",
"macAddress": "00-0D-3A-58-F8-45",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "40.83.165.85",
"resourceGroup": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"zones": ""
}