Självstudie: Skapa och använda en anpassad avbildning för VM-skalningsuppsättningar med Azure CLI

När du skapar en skalningsuppsättning, kan du ange en avbildning som ska användas när de virtuella datorinstanserna distribueras. Om du vill minska antalet uppgifter när de virtuella datorinstanserna distribueras, kan du använda en anpassad virtuell datoravbildning. Den här anpassade virtuella datoravbildningen inkluderar alla nödvändiga programinstallationer eller konfigurationer. Alla virtuella datorinstanser som skapats i skalningsuppsättningen använder den anpassade virtuella datoravbildningen och är redo att hantera din programtrafik. I den här självstudiekursen får du lära du dig att:

  • Skapa ett Azure Compute-galleri
  • Skapa en specialiserad avbildningsdefinition
  • Skapa en avbildningsversion
  • Skapa en skalningsuppsättning från en specialiserad avbildning
  • Dela ett bildgalleri

Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.

Förutsättningar

  • Den här artikeln kräver version 2.4.0 eller senare av Azure CLI. Om du använder Azure Cloud Shell är den senaste versionen redan installerad.

Översikt

Ett Azure Compute-galleri förenklar delning av anpassade avbildningar i organisationen. Anpassade avbildningar liknar Marketplace-avbildningar, men du skapar dem själv. Anpassade avbildningar kan användas för startkonfigurationer, till exempel förinläsning av program, programkonfigurationer och andra OS-konfigurationer.

Med Azure Compute Gallery kan du dela dina anpassade VM-avbildningar med andra. Välj vilka bilder du vill dela, vilka regioner du vill göra dem tillgängliga i och vilka du vill dela dem med.

Skapa och konfigurera en virtuell källdator

Först skapar du en resursgrupp med az group create, därefter skapar du en virtuell dator med az vm create. Den här virtuella datorn används sedan som källa för avbildningen. Följande exempel skapar en virtuell dator som heter myVM i resursgruppen med namnet myResourceGroup:

az group create --name myResourceGroup --location eastus

az vm create \
  --resource-group myResourceGroup \
  --name myVM \
  --image <SKU image> \
  --admin-username azureuser \
  --generate-ssh-keys

Viktigt!

ID :t för den virtuella datorn visas i utdata från kommandot az vm create . Kopiera det här på ett säkert ställe så att du kan använda det senare i den här självstudien.

Ett bildgalleri är den primära resursen som används för att aktivera bilddelning.

Tillåtna tecken för Gallerinamn är versaler eller gemener, siffror, punkter och punkter. Gallerinamnet får inte innehålla bindestreck. Gallerinamn måste vara unika i din prenumeration.

Skapa ett bildgalleri med az sig create. I följande exempel skapas en resursgrupp med namnet gallery med namnet myGalleryRG i USA, östra och ett galleri med namnet myGallery.

az group create --name myGalleryRG --location eastus
az sig create --resource-group myGalleryRG --gallery-name myGallery

Skapa en bilddefinition

Bilddefinitioner skapar en logisk gruppering för bilder. De används för att hantera information om de avbildningsversioner som skapas i dem.

Bilddefinitionsnamn kan bestå av versaler eller gemener, siffror, punkter, bindestreck och punkter.

Kontrollera att bilddefinitionen är rätt typ. Om du har generaliserat den virtuella datorn (med Sysprep för Windows eller waagent -deprovision för Linux) bör du skapa en generaliserad avbildningsdefinition med hjälp av --os-state generalized. Om du vill använda den virtuella datorn utan att ta bort befintliga användarkonton skapar du en specialiserad avbildningsdefinition med .--os-state specialized

Mer information om de värden som du kan ange för en bilddefinition finns i Bilddefinitioner.

Skapa en bilddefinition i galleriet med az sig image-definition create.

I det här exemplet heter bilddefinitionen myImageDefinition och är avsedd för en specialiserad Linux OS-avbildning. Om du vill skapa en definition för avbildningar med hjälp av ett Windows-operativsystem använder du --os-type Windows.

az sig image-definition create \
   --resource-group myGalleryRG \
   --gallery-name myGallery \
   --gallery-image-definition myImageDefinition \
   --publisher myPublisher \
   --offer myOffer \
   --sku mySKU \
   --os-type Linux \
   --os-state specialized

Viktigt!

ID: t för bilddefinitionen visas i kommandots utdata. Kopiera det här på ett säkert ställe så att du kan använda det senare i den här självstudien.

Skapa avbildningsversionen

Skapa en avbildningsversion från den virtuella datorn med az image gallery create-image-version.

Tillåtna tecken för bildversionen är siffror och punkter. Tal måste ligga inom intervallet för ett 32-bitars heltal. Format: MajorVersion.MinorVersion.Korrigering.

I det här exemplet är versionen av vår avbildning 1.0.0 och vi ska skapa en replik i regionen USA , södra centrala och en replik i regionen USA, östra 2 . Replikeringsregionerna måste innehålla den region som den virtuella källdatorn finns i.

Ersätt värdet --managed-image för i det här exemplet med ID:t för den virtuella datorn från föregående steg.

az sig image-version create \
   --resource-group myGalleryRG \
   --gallery-name myGallery \
   --gallery-image-definition myImageDefinition \
   --gallery-image-version 1.0.0 \
   --target-regions "southcentralus=1" "eastus=1" \
   --managed-image "/subscriptions/<Subscription ID>/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM"

Kommentar

Du måste vänta tills avbildningsversionen har skapats och replikerats helt innan du kan använda samma hanterade avbildning för att skapa en annan avbildningsversion.

Du kan också lagra avbildningen i Premium Storage genom att lägga till --storage-account-type premium_lrs, eller Zonredundant lagring genom att lägga till --storage-account-type standard_zrs när du skapar avbildningsversionen.

Skapa en skalningsuppsättning från avbildningen

Viktigt!

Från och med november 2023 kommer VM-skalningsuppsättningar som skapats med PowerShell och Azure CLI som standard att vara flexibla orkestreringsläge om inget orkestreringsläge har angetts. Mer information om den här ändringen och vilka åtgärder du bör vidta finns i Icke-bakåtkompatibla ändringar för VMSS PowerShell/CLI-kunder – Microsoft Community Hub

Skapa en skalningsuppsättning från den specialiserade avbildningen med .az vmss create

Skapa skalningsuppsättningen med hjälp av az vmss create parametern --specialized för att indikera att avbildningen är en specialiserad avbildning.

Använd bilddefinitions-ID:t för för --image att skapa skalningsuppsättningsinstanserna från den senaste versionen av avbildningen som är tillgänglig. Du kan också skapa skalningsuppsättningsinstanserna från en viss version genom att ange avbildningsversions-ID:t för --image.

Skapa en skalningsuppsättning med namnet myScaleSet den senaste versionen av avbildningen myImageDefinition som vi skapade tidigare.

az group create --name myResourceGroup --location eastus
az vmss create \
   --resource-group myResourceGroup \
   --name myScaleSet \
   --orchestration-mode flexible \
   --image "/subscriptions/<Subscription ID>/resourceGroups/myGalleryRG/providers/Microsoft.Compute/galleries/myGallery/images/myImageDefinition" \
   --specialized

Det tar några minuter att skapa och konfigurera alla skalningsuppsättningsresurser och virtuella datorer.

Du kan dela avbildningar mellan prenumerationer med rollbaserad åtkomstkontroll i Azure (Azure RBAC). Du kan dela bilder i galleriet, bilddefinitionen eller bildversionen. Alla användare som har läsbehörighet till en avbildningsversion, även i prenumerationer, kommer att kunna distribuera en virtuell dator med hjälp av avbildningsversionen.

Vi rekommenderar att du delar med andra användare på gallerinivå. Om du vill hämta objekt-ID för galleriet använder du az sig show.

az sig show \
   --resource-group myGalleryRG \
   --gallery-name myGallery \
   --query id

Använd objekt-ID som omfång, tillsammans med en e-postadress och az role assignment create för att ge en användare åtkomst till det delade bildgalleriet. Ersätt <email-address> och <gallery iD> med din egen information.

az role assignment create \
   --role "Reader" \
   --assignee <email address> \
   --scope <gallery ID>

Mer information om hur du delar resurser med Hjälp av Azure RBAC finns i Lägga till eller ta bort Azure-rolltilldelningar med Hjälp av Azure CLI.

Rensa resurser

Om du vill ta bort din skalningsuppsättning och ytterligare resurser så tar du bort resursgruppen och alla dess resurser med az group delete. Parametern --no-wait återför kontrollen till kommandotolken utan att vänta på att uppgiften slutförs. Parametern --yes bekräftar att du vill ta bort resurserna utan att tillfrågas ytterligare en gång.

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

Nästa steg

I den här självstudien fick du läsa om hur du skapar och använder en anpassad virtuell datoravbildning för din skalningsuppsättning med Azure CLI:

  • Skapa ett Azure Compute-galleri
  • Skapa en specialiserad avbildningsdefinition
  • Skapa en avbildningsversion
  • Skapa en skalningsuppsättning från en specialiserad avbildning
  • Dela ett bildgalleri

Gå vidare till nästa självstudie för att lära dig hur du distribuerar program till din skalningsuppsättning.