Snabbstart: Skapa en VM-skalningsuppsättning med Azure CLIQuickstart: Create a virtual machine scale set with the Azure CLI

Med en skalnings uppsättning för virtuella datorer kan du distribuera och hantera en uppsättning virtuella datorer som skalas automatiskt.A virtual machine scale set allows you to deploy and manage a set of auto-scaling virtual machines. Du kan skala antalet virtuella datorer i skalningsuppsättningen manuellt eller definiera regler för automatisk skalning baserat på resursanvändning, till exempel CPU, minneskrav eller nätverkstrafik.You can scale the number of VMs in the scale set manually, or define rules to autoscale based on resource usage like CPU, memory demand, or network traffic. En Azure-lastbalanserare distribuerar sedan trafiken till de virtuella datorinstanserna i skalningsuppsättningen.An Azure load balancer then distributes traffic to the VM instances in the scale set. I den här snabbstarten skapar du en VM-skalningsuppsättning och distribuerar ett exempelprogram med Azure CLI.In this quickstart, you create a virtual machine scale set and deploy a sample application with the Azure CLI.

Om du inte har en Azure-prenumerationkan du skapa ett kostnads fritt konto innan du börjar.If you don't have an Azure subscription, create a free account before you begin.

FörutsättningarPrerequisites

  • Använd bash-miljön i Azure Cloud Shell.Use the Bash environment in Azure Cloud Shell.

    Starta Cloud Shell i ett nytt fönsterLaunch Cloud Shell in a new window

  • Om du vill kan du i stället installera Azure CLI för att köra CLI-referenskommandon.If you prefer, install the Azure CLI to run CLI reference commands.

    • Om du använder en lokal installation loggar du in på Azure CLI med hjälp av kommandot az login.If you're using a local installation, sign in to the Azure CLI by using the az login command. Slutför autentiseringsprocessen genom att följa stegen som visas i terminalen.To finish the authentication process, follow the steps displayed in your terminal. Fler inloggningsalternativ finns i Logga in med Azure CLI.For additional sign-in options, see Sign in with the Azure CLI.

    • När du uppmanas till det installerar du Azure CLI-tillägg vid första användning.When you're prompted, install Azure CLI extensions on first use. Mer information om tillägg finns i Använda tillägg med Azure CLI.For more information about extensions, see Use extensions with the Azure CLI.

    • Kör az version om du vill hitta versionen och de beroende bibliotek som är installerade.Run az version to find the version and dependent libraries that are installed. Om du vill uppgradera till den senaste versionen kör du az upgrade.To upgrade to the latest version, run az upgrade.

  • Den här artikeln kräver version 2.0.29 eller senare av Azure CLI.This article requires version 2.0.29 or later of the Azure CLI. Om du använder Azure Cloud Shell är den senaste versionen redan installerad.If using Azure Cloud Shell, the latest version is already installed.

Skapa en skalningsuppsättningCreate a scale set

Innan du kan skapa en skalningsuppsättning skapar du en resursgrupp med az group create.Before you can create a scale set, create a resource group with az group create. I följande exempel skapas en resurs grupp med namnet myResourceGroup på platsen för öster :The following example creates a resource group named myResourceGroup in the eastus location:

az group create --name myResourceGroup --location eastus

Skapa nu en skalningsuppsättning för en virtuell dator med az vmss create.Now create a virtual machine scale set with az vmss create. I följande exempel skapas en skalningsuppsättning med namnet myScaleSet som är inställd på att uppdateras automatiskt när ändringar tillämpas och genererar SSH-nycklar om de inte finns i ~/.ssh/id_rsa.The following example creates a scale set named myScaleSet that is set to automatically update as changes are applied, and generates SSH keys if they do not exist in ~/.ssh/id_rsa. Dessa SSH-nycklar används om du behöver logga in på VM-instanser.These SSH keys are used if you need to log in to the VM instances. Om du vill använda en befintlig uppsättning SSH-nycklar, använd istället --ssh-key-value-parametern och ange platsen för dina nycklar.To use an existing set of SSH keys, instead use the --ssh-key-value parameter and specify the location of your keys.

az vmss create \
  --resource-group myResourceGroup \
  --name myScaleSet \
  --image UbuntuLTS \
  --upgrade-policy-mode automatic \
  --admin-username azureuser \
  --generate-ssh-keys

Det tar några minuter att skapa och konfigurera alla skalningsuppsättningsresurser och virtuella datorer.It takes a few minutes to create and configure all the scale set resources and VMs.

Distribuera exempelprogramDeploy sample application

Testa din skalningsuppsättning genom att installera ett grundläggande webbprogram.To test your scale set, install a basic web application. Tillägg för anpassat skript i Azure används för att hämta och köra ett skript som installerar ett program på VM-instanser.The Azure Custom Script Extension is used to download and run a script that installs an application on the VM instances. Det här tillägget är användbart för konfiguration efter distribution, programvaruinstallation eller andra konfigurerings-/hanteringsuppgifter.This extension is useful for post deployment configuration, software installation, or any other configuration / management task. Mer information finns i översikten över tillägget för anpassat skript.For more information, see the Custom Script Extension overview.

Använd tillägget för anpassat skript för att installera en grundläggande NGINX-webbserver.Use the Custom Script Extension to install a basic NGINX web server. Använd tillägget för anpassat skript som installerar NGINX med az vmss-tilläggsuppsättningen på följande sätt:Apply the Custom Script Extension that installs NGINX with az vmss extension set as follows:

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"}'

Tillåta trafik till programAllow traffic to application

En Azure-lastbalanserare distribuerades automatiskt när skalningsuppsättning skapades.When the scale set was created, an Azure load balancer was automatically deployed. Lastbalanserare distribuerar trafiken till VM-instanserna i skalningsuppsättningen.The load balancer distributes traffic to the VM instances in the scale set. Använd az network lb rule create för att skapa en regel för lastbalanseraren för att tillåta att trafik når exempelwebbprogrammet.To allow traffic to reach the sample web application, create a load balancer rule with az network lb rule create. I följande exempel skapas en regel med namnet myLoadBalancerRuleWeb:The following example creates a rule named 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

Testa din skalningsuppsättningTest your scale set

Om du vill se din skalningsuppsättning i praktiken så gå till exempelwebbprogrammet i en webbläsare.To see your scale set in action, access the sample web application in a web browser. Hämta den offentliga IP-adressen för lastbalanseraren med az network public-ip show.Obtain the public IP address of your load balancer with az network public-ip show. I följande exempel hämtas IP-adressen för myScaleSetLBPublicIP som skapas som en del av skalningsuppsättningen:The following example obtains the IP address for myScaleSetLBPublicIP created as part of the scale set:

az network public-ip show \
  --resource-group myResourceGroup \
  --name myScaleSetLBPublicIP \
  --query '[ipAddress]' \
  --output tsv

Skriv den offentliga IP-adressen för lastbalanseraren i en webbläsare.Enter the public IP address of the load balancer in to a web browser. Lastbalanseraren distribuerar trafik till en av dina VM-instanser enligt följande exempel:The load balancer distributes traffic to one of your VM instances, as shown in the following example:

Standardwebbsida i NGINX

Rensa resurserClean up resources

När de inte längre behövs kan du använda AZ Group Delete för att ta bort resurs gruppen, skalnings uppsättningen och alla relaterade resurser på följande sätt.When no longer needed, you can use az group delete to remove the resource group, scale set, and all related resources as follows. Parametern --no-wait återför kontrollen till kommandotolken utan att vänta på att uppgiften slutförs.The --no-wait parameter returns control to the prompt without waiting for the operation to complete. Parametern --yes bekräftar att du vill ta bort resurserna utan att tillfrågas ytterligare en gång.The --yes parameter confirms that you wish to delete the resources without an additional prompt to do so.

az group delete --name myResourceGroup --yes --no-wait

Nästa stegNext steps

I den här snabbstarten skapade du en grundläggande skalningsuppsättning och använde tillägget för anpassat skript för att installera en grundläggande NGINX-webbserver på VM-instanserna.In this quickstart, you created a basic scale set and used the Custom Script Extension to install a basic NGINX web server on the VM instances. Om du vill veta mer kan du gå till självstudiekursen om hur man skapar och hanterar VM-skalningsuppsättningar för Azure.To learn more, continue to the tutorial for how to create and manage Azure virtual machine scale sets.