Démarrage rapide : créer un groupe de machines virtuelles identiques avec Azure CLI
S’applique aux : ✔️ Machines virtuelles Linux ✔️ Machines virtuelles Windows ✔️ Groupes identiques uniformes
Notes
L’article suivant porte sur les Virtual Machine Scale Sets uniformes. Nous vous recommandons d’utiliser des Virtual Machine Scale Sets identiques flexibles pour les nouvelles charges de travail. Apprenez-en davantage sur ce nouveau mode d’orchestration dans notre vue d’ensemble des groupes de machines virtuelles identiques flexibles.
Un groupe de machines virtuelles identiques vous permet de déployer et de gérer un ensemble de machines virtuelles prenant en charge la mise à l’échelle automatique. Vous pouvez mettre à l’échelle manuellement le nombre de machines virtuelles du groupe identique ou définir des règles de mise à l’échelle automatique en fonction de l’utilisation des ressources telles que l’UC, la demande de mémoire ou le trafic réseau. Un équilibreur de charge Azure distribue ensuite le trafic vers les instances de machine virtuelle du groupe identique. Dans ce guide de démarrage rapide, vous allez créer un groupe de machines virtuelles identiques et déployer un exemple d’application avec Azure CLI.
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.
Prérequis
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour connaître les autres options de connexion, consultez Se connecter avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
- Cet article nécessite la version 2.0.29 ou ultérieure d’Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.
Créer un groupe identique
Important
À compter de novembre 2023, les groupes de machines virtuelles identiques créés à l'aide de PowerShell et d'Azure CLI utilisent par défaut le mode d'orchestration flexible si aucun mode d'orchestration n'est spécifié. Pour plus d’informations sur ce changement et les actions que vous devez entreprendre, consultez l’article Changement cassant pour les clients VMSS PowerShell/CLI – Hub Communauté Microsoft
Pour pouvoir créer un groupe identique, vous devez créer un groupe de ressources avec la commande az group create. L’exemple suivant crée un groupe de ressources nommé myResourceGroup à l’emplacement eastus :
az group create --name myResourceGroup --location eastus
Créez à présent un groupe de machines virtuelles identiques avec az vmss create. L’exemple suivant crée un groupe identique nommé myScaleSet qui est définit pour une mise à jour automatique lorsque des modifications sont appliquées, et qui génère des clés SSH s’il n’en existe pas dans ~/.ssh/id_rsa. Ces clés SSH sont utilisées si vous devez vous connecter à des instances de machine virtuelle. Pour utiliser un jeu de clés SSH existant, utilisez plutôt le paramètre --ssh-key-value
et spécifiez l’emplacement de vos clés.
az vmss create \
--resource-group myResourceGroup \
--name myScaleSet \
--image <SKU image> \
--upgrade-policy-mode automatic \
--admin-username azureuser \
--generate-ssh-keys
La création et la configuration des l’ensemble des ressources et des machines virtuelles du groupe identique prennent quelques minutes.
Déployer un exemple d’application
Pour tester votre groupe identique, installez une application web de base. L’extension de script personnalisé Azure permet de télécharger et d’exécuter un script qui installe une application sur les instances de machine virtuelle. Cette extension est utile pour la configuration post-déploiement, l’installation de logiciels ou toute autre tâche de configuration ou de gestion. Pour plus d’informations, consultez Vue d’ensemble de l’extension de script personnalisé.
Utilisez l’extension de script personnalisé pour installer un serveur web NGINX de base. Appliquez l’extension de script personnalisé qui installe NGINX avec az vmss extension set comme suit :
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroup \
--vmss-name myScaleSet \
--settings '{"fileUris":["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx.sh"],"commandToExecute":"./automate_nginx.sh"}'
Autoriser le trafic vers l’application
Lorsque le groupe identique est créé, un équilibrage de charge Azure est automatiquement déployé. L’équilibreur de charge distribue le trafic vers les instances de machine virtuelle du groupe identique. Pour autoriser le trafic à atteindre l’exemple d’application web, créez une règle d’équilibreur de charge avec az network lb rule create. L’exemple suivant crée une règle nommée myLoadBalancerRuleWeb :
az network lb rule create \
--resource-group myResourceGroup \
--name myLoadBalancerRuleWeb \
--lb-name myScaleSetLB \
--backend-pool-name myScaleSetLBBEPool \
--backend-port 80 \
--frontend-ip-name loadBalancerFrontEnd \
--frontend-port 80 \
--protocol tcp
Tester votre groupe identique
Pour voir votre groupe identique en action, accédez à l’exemple d’application web dans un navigateur web. Obtenez l’adresse IP publique de votre équilibrage de charge avec az network public-ip show. L’exemple suivant obtient l’adresse IP pour myScaleSetLBPublicIP qui a été créée dans le cadre du groupe identique :
az network public-ip show \
--resource-group myResourceGroup \
--name myScaleSetLBPublicIP \
--query '[ipAddress]' \
--output tsv
Saisissez l’adresse IP publique de l’équilibreur de charge dans un navigateur web. L’équilibreur de charge répartit le trafic vers l’une de vos instances de machine virtuelle, comme illustré dans l’exemple suivant :
Nettoyer les ressources
Lorsque vous n’en avez plus besoin, vous pouvez utiliser la commande az group delete pour supprimer le groupe de ressources, le groupe identique et toutes les ressources associées, comme suit. Le paramètre --no-wait
retourne le contrôle à l’invite de commandes sans attendre que l’opération se termine. Le paramètre --yes
confirme que vous souhaitez supprimer les ressources sans passer par une invite supplémentaire à cette fin.
az group delete --name myResourceGroup --yes --no-wait
Étapes suivantes
Dans cet article de démarrage rapide, vous avez créé un groupe identique de base et vous avez utilisé l’extension de script personnalisé afin d’installer un serveur web NGINX de base sur les instances de machine virtuelle. Pour en savoir plus, passez au didacticiel dédié à la création et la gestion des groupes de machines virtuelles identiques Azure.