Démarrage rapide : Créer un groupe de machines virtuelles identiques Linux à l’aide d’un modèle ARM
S’applique à : ✔️ Machines virtuelles Linux ✔️ 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 démarrage rapide, vous allez créer un groupe de machines virtuelles identiques et déployer un exemple d’application avec un modèle Azure Resource Manager (modèle ARM).
Un modèle Azure Resource Manager est un fichier JSON (JavaScript Object Notation) qui définit l’infrastructure et la configuration de votre projet. Le modèle utilise la syntaxe déclarative. Vous décrivez votre déploiement prévu sans écrire la séquence de commandes de programmation pour créer le déploiement.
Les modèles ARM vous permettent de déployer des groupes de ressources associées. Dans un même modèle, vous pouvez créer le groupe de machines virtuelles identiques, installer des applications et configurer des règles de mise à l’échelle automatique. Avec l’utilisation de variables et de paramètres, ce modèle peut être réutilisé pour mettre à jour des groupes identiques existants ou en créer d’autres. Vous pouvez déployer des modèles via le Portail Azure, Azure CLI ou Azure PowerShell, ou à partir de pipelines d’intégration continue/de livraison continue.
Si votre environnement remplit les prérequis et que vous êtes déjà familiarisé avec l’utilisation des modèles ARM, sélectionnez le bouton Déployer sur Azure. Le modèle s’ouvre dans le portail Azure.
Prérequis
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
Vérifier le modèle
Le modèle utilisé dans ce démarrage rapide est tiré des modèles de démarrage rapide Azure.
Ces ressources Azure sont définies dans le modèle :
- Microsoft.Network/virtualNetworks
- Microsoft.Network/publicIPAddresses
- Microsoft.Network/loadBalancers
- Microsoft.Compute/virtualMachineScaleSets
- Microsoft.Insights/autoscaleSettings
Définir un groupe identique
Pour créer un groupe identique avec un modèle, vous définissez les ressources appropriées. Les parties essentielles du type de ressource de groupe de machines virtuelles identiques sont les suivantes :
Propriété | Description de la propriété | Exemple de valeur de modèle |
---|---|---|
type | Type de ressource Azure à créer | Microsoft.Compute/virtualMachineScaleSets |
name | Nom du groupe identique | myScaleSet |
location | Emplacement de création du groupe identique | USA Est |
sku.name | Taille de machine virtuelle pour chaque instance de groupe identique | Standard_A1 |
sku.capacity | Nombre d’instances de machines virtuelles à créer initialement | 2 |
upgradePolicy.mode | Mode de mise à niveau d’instance de machine virtuelle lorsque des modifications se produisent | Automatique |
imageReference | Plateforme ou image personnalisée à utiliser pour les instances de machine virtuelle | Canonical Ubuntu Server 16.04-LTS |
osProfile.computerNamePrefix | Préfixe du nom de chaque instance de machine virtuelle | myvmss |
osProfile.adminUsername | Nom d’utilisateur de chaque instance de machine virtuelle | azureuser |
osProfile.adminPassword | Mot de passe de chaque instance de machine virtuelle | P@ssw0rd! |
Pour personnaliser un modèle de groupe identique, vous pouvez changer la taille ou la capacité initiale des machines virtuelles. L’autre possibilité consiste à utiliser une autre plateforme ou une image personnalisée.
Ajouter un exemple d’application
Pour tester votre groupe identique, installez une application web de base. Lorsque vous déployez un groupe identique, les extensions de machine virtuelle peuvent fournir des tâches d’automatisation et de configuration après le déploiement, telles que l’installation d’une application. Des scripts peuvent être téléchargés à partir de Stockage Azure ou de GitHub, ou fournis dans le portail Azure lors de l’exécution de l’extension. Pour appliquer une extension à votre groupe identique, vous ajoutez la section extensionProfile à l’exemple de ressource précédent. En règle générale, le profil d’extension définit les propriétés suivantes :
- Type d’extension
- Éditeur d’extension
- Version d’extension
- Emplacement des scripts de configuration ou d’installation
- Commandes à exécuter sur les instances de machine virtuelle
Le modèle utilise l’extension de script personnalisé pour installer Bottle, un framework web Python, et un serveur HTTP simple.
Deux scripts sont définis dans fileUris - installserver.sh et workserver.py. Ces fichiers sont téléchargés à partir de GitHub, puis commandToExecute exécute bash installserver.sh
pour installer et configurer l’application.
Déployer le modèle
Vous pouvez déployer le modèle en sélectionnant le bouton Déployer dans Azure suivant. Ce bouton ouvre le portail Azure, charge le modèle complet et vous invite à renseigner quelques paramètres comme le nom du groupe identique, le nombre d’instances et les informations d’identification d’administrateur.
Vous pouvez également déployer un modèle Resource Manager en utilisant Azure CLI :
# Create a resource group
az group create --name myResourceGroup --location EastUS
# Deploy template into resource group
az deployment group create \
--resource-group myResourceGroup \
--template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/application-workloads/python/vmss-bottle-autoscale/azuredeploy.json
Renseignez le nom du groupe identique, le nombre d’instances et les informations d’identification d’administrateur pour les instances de machine virtuelle. Quelques minutes sont nécessaires pour que le groupe identique et les ressources associées soient créés.
Valider le déploiement
Pour voir votre groupe identique en action, accédez à l’exemple d’application web dans un navigateur web. Obtenez l’adresse IP publique de l’équilibreur de charge avec az network public-ip list comme suit :
az network public-ip list \
--resource-group myResourceGroup \
--query [*].ipAddress -o tsv
Entrez l’adresse IP publique de l’équilibreur de charge dans un navigateur web au format http://publicIpAddress:9000/do_work. 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 ce guide de démarrage rapide, vous avez créé un groupe identique Linux avec un modèle ARM et vous avez utilisé l’extension de script personnalisé pour installer un serveur web Python 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.