Démarrage rapide : Créer un équilibreur de charge de base public pour équiper la charge de machines virtuelles en utilisant Azure CLI
Commencez avec Azure Load Balancer en utilisant Azure CLI pour créer un équilibreur de charge public et deux machines virtuelles. En plus de ces ressources, vous déployez Azure Bastion, NAT Gateway, un réseau virtuel et les sous-réseaux nécessaires.
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.
- Ce guide de démarrage rapide nécessite la version 2.0.28 ou ultérieure de l’interface Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.
Créer un groupe de ressources
Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées.
Créez un groupe de ressources avec la commande az group create :
az group create \
--name CreatePubLBQS-rg \
--location eastus
Créez un réseau virtuel
Avant de déployer des machines virtuelles et de tester votre équilibreur de charge, créez le réseau virtuel et le sous-réseau associés.
Créez un réseau virtuel avec la commande az network vnet create. Le réseau et le sous-réseau virtuels contiennent les ressources déployées plus loin dans cet article.
az network vnet create \
--resource-group CreatePubLBQS-rg \
--location eastus \
--name myVNet \
--address-prefixes 10.1.0.0/16 \
--subnet-name myBackendSubnet \
--subnet-prefixes 10.1.0.0/24
Créer une adresse IP publique
Pour accéder à votre application web sur Internet, vous avez besoin d’une adresse IP publique pour l’équilibreur de charge.
Utilisez az network public-ip create pour créer l’IP publique pour le front-end de l’équilibreur de charge.
az network public-ip create \
--resource-group CreatePubLBQS-rg \
--name myPublicIP \
--sku Standard \
--zone 1 2 3
Pour créer une adresse IP publique zonale dans la zone 1, utilisez la commande suivante :
az network public-ip create \
--resource-group CreatePubLBQS-rg \
--name myPublicIP \
--sku Standard \
--zone 1
Créer un équilibrage de charge
Cette section explique en détail comment vous pouvez créer et configurer les composants suivants de l’équilibreur de charge :
Un pool d’adresses IP frontal qui reçoit le trafic réseau entrant sur l’équilibreur de charge
Un pool d’adresses IP principal auquel le pool frontal envoie le trafic réseau dont la charge est équilibrée
Une sonde d’intégrité qui détermine l’intégrité des instances de machine virtuelle principales
Une règle d’équilibreur de charge qui définit la distribution du trafic aux machines virtuelles
Créer la ressource d’équilibreur de charge
Créez un équilibreur de charge public avec la commande az network lb create :
az network lb create \
--resource-group CreatePubLBQS-rg \
--name myLoadBalancer \
--sku Standard \
--public-ip-address myPublicIP \
--frontend-ip-name myFrontEnd \
--backend-pool-name myBackEndPool
Si l’adresse IP publique créée est zonale, la zone spécifiée doit être définie lors de la création de l’équilibreur de charge public.
az network lb create \
--resource-group CreatePubLBQS-rg \
--name myLoadBalancer \
--sku Standard \
--public-ip-address myPublicIP \
--frontend-ip-name myFrontEnd \
--public-ip-zone 1 \
--backend-pool-name myBackEndPool
Créer la sonde d’intégrité
Une sonde d’intégrité vérifie toutes les instances de machine virtuelle pour s’assurer qu’elles peuvent transmettre du trafic réseau.
Une machine virtuelle dont le contrôle de sonde a échoué est supprimée de l’équilibreur de charge. La machine virtuelle est rajoutée à l’équilibreur de charge une fois l’échec résolu.
Créez une sonde d’intégrité avec la commande az network lb probe create :
az network lb probe create \
--resource-group CreatePubLBQS-rg \
--lb-name myLoadBalancer \
--name myHealthProbe \
--protocol tcp \
--port 80
Créer la règle d’équilibreur de charge
Une règle d’équilibreur de charge définit les éléments suivants :
La configuration IP frontale pour le trafic entrant
Le pool d’adresses IP principal qui reçoit le trafic
Les ports source et de destination requis
Créez une règle d’équilibreur de charge avec la commande az network lb rule create :
az network lb rule create \
--resource-group CreatePubLBQS-rg \
--lb-name myLoadBalancer \
--name myHTTPRule \
--protocol tcp \
--frontend-port 80 \
--backend-port 80 \
--frontend-ip-name myFrontEnd \
--backend-pool-name myBackEndPool \
--probe-name myHealthProbe \
--disable-outbound-snat true \
--idle-timeout 15 \
--enable-tcp-reset true
Créer un groupe de sécurité réseau
Pour un équilibreur de charge standard, les machines virtuelles du pool principal doivent disposer d’interfaces réseau appartenant à un groupe de sécurité réseau.
Utilisez la commande az network nsg create pour créer le groupe de sécurité réseau :
az network nsg create \
--resource-group CreatePubLBQS-rg \
--name myNSG
Créer une règle de groupe de sécurité réseau
Créez une règle de groupe de sécurité réseau avec la commande az network nsg rule create :
az network nsg rule create \
--resource-group CreatePubLBQS-rg \
--nsg-name myNSG \
--name myNSGRuleHTTP \
--protocol '*' \
--direction inbound \
--source-address-prefix '*' \
--source-port-range '*' \
--destination-address-prefix '*' \
--destination-port-range 80 \
--access allow \
--priority 200
Créer un hôte bastion
Dans cette section, vous créez les ressources pour Azure Bastion. Azure Bastion est utilisé pour gérer en toute sécurité les machines virtuelles dans le pool principal de l’équilibreur de charge.
Important
Le tarif horaire commence à partir du moment où Bastion est déployé, quelle que soit l’utilisation des données sortantes. Pour plus d’informations, consultez Tarifications et Références SKU. Si vous déployez Bastion dans le cadre d’un tutoriel ou d’un test, nous vous recommandons de supprimer cette ressource après l’avoir utilisée.
Créer une adresse IP publique
Utilisez az network public-ip create pour créer une adresse IP publique pour l’hôte bastion. L’adresse IP publique est utilisée par l’hôte bastion pour un accès sécurisé aux ressources de la machine virtuelle.
az network public-ip create \
--resource-group CreatePubLBQS-rg \
--name myBastionIP \
--sku Standard \
--zone 1 2 3
Créer un sous-réseau bastion
Utilisez az network vnet subnet create pour créer un sous-réseau bastion. Le sous-réseau bastion est utilisé par l’hôte bastion pour accéder au réseau virtuel.
az network vnet subnet create \
--resource-group CreatePubLBQS-rg \
--name AzureBastionSubnet \
--vnet-name myVNet \
--address-prefixes 10.1.1.0/27
Créer un hôte bastion
Utilisez az network bastion create pour créer un hôte bastion. L’hôte bastion est utilisé pour se connecter en toute sécurité aux ressources de machine virtuelle créées plus loin dans cet article.
az network bastion create \
--resource-group CreatePubLBQS-rg \
--name myBastionHost \
--public-ip-address myBastionIP \
--vnet-name myVNet \
--location eastus
Le déploiement de l’hôte Azure Bastion peut prendre quelques minutes.
Créer des serveurs principaux
Dans cette section, vous allez créer :
Deux interfaces réseau pour les machines virtuelles
Deux machines virtuelles à utiliser en tant que serveurs back-ends pour l’équilibreur de charge
Créer des interfaces réseau pour les machines virtuelles
Créez deux interfaces réseau avec la commande az network nic create :
array=(myNicVM1 myNicVM2)
for vmnic in "${array[@]}"
do
az network nic create \
--resource-group CreatePubLBQS-rg \
--name $vmnic \
--vnet-name myVNet \
--subnet myBackEndSubnet \
--network-security-group myNSG
done
Créer des machines virtuelles
Créez les machines virtuelles avec la commande az vm create :
az vm create \
--resource-group CreatePubLBQS-rg \
--name myVM1 \
--nics myNicVM1 \
--image win2019datacenter \
--admin-username azureuser \
--zone 1 \
--no-wait
az vm create \
--resource-group CreatePubLBQS-rg \
--name myVM2 \
--nics myNicVM2 \
--image win2019datacenter \
--admin-username azureuser \
--zone 2 \
--no-wait
Le déploiement des machines virtuelles peut prendre quelques minutes. Vous pouvez passer aux étapes suivantes pendant la création des machines virtuelles.
Remarque
Azure fournit une adresse IP d’accès sortant par défaut pour les machines virtuelles qui n’ont pas d’adresse IP publique ou qui se trouvent dans le pool de back-ends d’un équilibreur de charge Azure de base interne. Le mécanisme d’adresse IP d’accès sortant par défaut fournit une adresse IP sortante qui n’est pas configurable.
L’adresse IP de l’accès sortant par défaut est désactivée quand l’un des événements suivants se produit :
- Une adresse IP publique est affectée à la machine virtuelle.
- La machine virtuelle est placée dans le pool principal d’un équilibreur de charge standard, avec ou sans règles de trafic sortant.
- Une ressource Azure NAT Gateway est attribuée au sous-réseau de la machine virtuelle.
Les machines virtuelles que vous avez créées, au moyen de groupes de machines virtuelles identiques en mode d’orchestration flexible, n’ont pas d’accès sortant par défaut.
Pour plus d’informations sur les connexions sortantes dans Azure, consultez Accès sortant par défaut dans Azure et Utiliser SNAT (Source Network Address Translation) pour les connexions sortantes.
Ajouter des machines virtuelles au pool de back-ends de l’équilibreur de charge
Ajoutez les machines virtuelles au pool de back-ends avec la commande az network nic ip-config address-pool add :
array=(myNicVM1 myNicVM2)
for vmnic in "${array[@]}"
do
az network nic ip-config address-pool add \
--address-pool myBackendPool \
--ip-config-name ipconfig1 \
--nic-name $vmnic \
--resource-group CreatePubLBQS-rg \
--lb-name myLoadBalancer
done
Créer une passerelle NAT
Pour fournir un accès Internet sortant aux ressources du pool principal, créez une passerelle NAT.
Créer une adresse IP publique
Utilisez la commande az network public-ip create pour créer une adresse IP unique pour la connectivité sortante.
az network public-ip create \
--resource-group CreatePubLBQS-rg \
--name myNATgatewayIP \
--sku Standard \
--zone 1 2 3
Pour créer une adresse IP publique zonale redondante dans la zone 1, utilisez la commande suivante :
az network public-ip create \
--resource-group CreatePubLBQS-rg \
--name myNATgatewayIP \
--sku Standard \
--zone 1
Créer une ressource de passerelle NAT
Utilisez az network nat gateway create pour créer la ressource de passerelle NAT. L’adresse IP publique créée à l’étape précédente est associée à la passerelle NAT.
az network nat gateway create \
--resource-group CreatePubLBQS-rg \
--name myNATgateway \
--public-ip-addresses myNATgatewayIP \
--idle-timeout 10
Associer une passerelle NAT au sous-réseau
Configurez le sous-réseau source dans le réseau virtuel pour utiliser une ressource de passerelle NAT spécifique avec la commande az network vnet subnet update.
az network vnet subnet update \
--resource-group CreatePubLBQS-rg \
--vnet-name myVNet \
--name myBackendSubnet \
--nat-gateway myNATgateway
Installer IIS
Utilisez AZ VM Extension Set pour installer IIS sur les machines virtuelles et définir le nom de l’ordinateur comme site web par défaut.
array=(myVM1 myVM2)
for vm in "${array[@]}"
do
az vm extension set \
--publisher Microsoft.Compute \
--version 1.8 \
--name CustomScriptExtension \
--vm-name $vm \
--resource-group CreatePubLBQS-rg \
--settings '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}'
done
Tester l’équilibreur de charge
Pour obtenir l’adresse IP publique de l’équilibreur de charge, utilisez la commande az network public-ip show.
Copiez l’adresse IP publique, puis collez-la dans la barre d’adresses de votre navigateur.
az network public-ip show \
--resource-group CreatePubLBQS-rg \
--name myPublicIP \
--query ipAddress \
--output tsv
Nettoyer les ressources
Lorsque vous n’en avez plus besoin, utilisez la commande az group delete pour supprimer le groupe de ressources, l’équilibreur de charge et toutes les ressources associées.
az group delete \
--name CreatePubLBQS-rg
Étapes suivantes
Dans ce guide de démarrage rapide :
Vous avez créé un équilibreur de charge standard ou public
Joint deux machines virtuelles
Vous avez configuré la règle de trafic et la sonde d’intégrité de l’équilibreur de charge
Testé l’équilibreur de charge
Pour en savoir plus sur Azure Load Balancer, consultez :