Share via


Zelfstudie: Een aangepaste installatiekopieën maken en gebruiken voor virtuele-machineschaalsets met de Azure CLI

Wanneer u een schaalset maakt, geeft u een installatiekopie op die moet worden gebruikt wanneer de VM-exemplaren zijn geïmplementeerd. Om het aantal taken na de implementatie van VM-exemplaren te verminderen, kunt u een aangepaste VM-installatiekopie gebruiken. Deze aangepaste VM-installatiekopie bevat alle geïnstalleerde toepassingen of configuraties die vereist zijn. Alle VM-exemplaren die in de schaalset zijn gemaakt, gebruiken de aangepaste VM-installatiekopie en zijn gereed voor uw toepassingsverkeer. In deze zelfstudie leert u het volgende:

  • Een Azure Compute-galerie maken
  • Een gespecialiseerde installatiekopiedefinitie maken
  • De versie van een installatiekopie maken
  • Een schaalset maken op basis van een gespecialiseerde installatiekopie
  • Een galerie met installatiekopieën delen

Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.

Vereisten

  • Voor dit artikel is versie 2.4.0 of hoger van Azure CLI vereist. Als u Azure Cloud Shell gebruikt, is de nieuwste versie al geïnstalleerd.

Overzicht

Een Azure Compute Gallery vereenvoudigt het delen van aangepaste installatiekopieën in uw organisatie. Aangepaste installatiekopieën zijn soortgelijk aan Marketplace-installatiekopieën, maar u kunt deze zelf maken. Aangepaste installatiekopieën kunnen worden gebruikt voor het opstarten van configuraties, zoals het vooraf laden van toepassingen, toepassingsconfiguraties en andere besturingssysteemconfiguraties.

Met de Azure Compute Gallery kunt u uw aangepaste VM-installatiekopieën delen met anderen. U kunt kiezen welke installatiekopieën u wilt delen, in welke regio’s u ze beschikbaar wilt maken en met wie u ze wilt delen.

Een bron-VM maken en configureren

Voordat u een virtuele machine kunt maken, moet u eerst een resourcegroep maken met az group create en daarna een virtuele machine maken met az vm create. Deze VM wordt vervolgens gebruikt als bron voor de installatiekopie.

In het volgende voorbeeld wordt een op Linux gebaseerde VM met de naam myVM gemaakt in de resourcegroep met de naam myResourceGroup.

export RANDOM_ID=$(openssl rand -hex 3)
export MY_RESOURCE_GROUP_NAME="myResourceGroup$RANDOM_ID"
export REGION="eastus"
export MY_VM_NAME="myVM"

az group create --name $MY_RESOURCE_GROUP_NAME --location $REGION

az vm create \
  --resource-group $MY_RESOURCE_GROUP_NAME \
  --name $MY_VM_NAME \
  --image debian11 \
  --admin-username azureuser \
  --generate-ssh-keys

Tip

De id van uw virtuele machine wordt weergegeven in de uitvoer van de opdracht az vm create. Kopieer en sla dit op een veilige locatie op, zodat u deze later in deze zelfstudie kunt gebruiken.

Een galerie met installatiekopieën is de primaire resource die wordt gebruikt voor het inschakelen van het delen van installatiekopieën.

Toegestane tekens voor galerienamen zijn hoofdletters of kleine letters, cijfers, punten en punten. De naam van de galerie mag geen streepjes bevatten. De naam van de galerie moet uniek zijn binnen uw abonnement.

Een galerie met installatiekopieën maken met az sig create.

In het volgende voorbeeld:

  • U maakt een resourcegroep voor de galerie met de naam myGalleryRG in VS - oost.
  • De galerie heeft de naam myGallery.
export MY_GALLERY_RG_NAME="myGalleryRG$RANDOM_ID"
export MY_GALLERY_NAME="myGallery$RANDOM_ID"

az group create --name $MY_GALLERY_RG_NAME --location $REGION
az sig create --resource-group $MY_GALLERY_RG_NAME --gallery-name $MY_GALLERY_NAME

Een definitie voor de installatiekopie maken

Definities van installatiekopieën maken een logische groepering voor installatiekopieën. Ze worden gebruikt voor het beheren van informatie over de installatiekopieën die erin zijn gemaakt.

Namen van installatiekopiedefinities kunnen bestaan uit hoofdletters, kleine letters, cijfers, streepjes en punten.

Zorg ervoor dat de definitie van de installatiekopie het juiste type is:

  • Status : als u de VIRTUELE machine hebt gegeneraliseerd (met Sysprep voor Windows of waagent -deprovision voor Linux), moet u een gegeneraliseerde installatiekopieëndefinitie maken met behulp van --os-state generalized. Als u de VM wilt gebruiken zonder bestaande gebruikersaccounts te verwijderen, maakt u een gespecialiseerde installatiekopiedefinitie met behulp van --os-state specialized.
  • Beveiligingstype : nieuwe Virtuele Azure-machines worden standaard gemaakt met Vertrouwde start geconfigureerd. Deze zelfstudie bevat volgende codevoorbeelden die de configuratie vertrouwde start weerspiegelen bij het maken van de definitie en schaalset van de installatiekopieën. Als u een installatiekopie maakt met een VIRTUELE machine waarvoor Vertrouwde start niet is ingeschakeld, moet u het juiste beveiligingstype weergeven wanneer u beide resources maakt. Zie Vertrouwde start voor virtuele Azure-machines voor meer informatie over Vertrouwde lancering.

Zie Installatiekopiedefinities voor meer informatie over de waarden die u kunt specificeren voor een installatiekopiedefinitie.

Een installatiekopiedefinitie in de galerie maken met az sig image-definition create.

In het volgende voorbeeld is de definitie van de afbeelding:

  • Met de naam myImageDefinition.
  • Geconfigureerd voor een gespecialiseerde installatiekopieën van het Linux-besturingssysteem. Als u een definitie wilt maken voor installatiekopieën met een Windows-besturingssysteem, gebruikt u --os-type Windows.
  • Geconfigureerd voor vertrouwd starten.
export MY_IMAGE_DEF_NAME="myImageDefinition$RANDOM_ID"
MY_PUBLISHER_NAME="myPublisher$RANDOM_ID"

az sig image-definition create \
   --resource-group $MY_GALLERY_RG_NAME \
   --gallery-name $MY_GALLERY_NAME \
   --gallery-image-definition $MY_IMAGE_DEF_NAME \
   --publisher $MY_PUBLISHER_NAME \
   --offer myOffer \
   --sku mySKU \
   --os-type Linux \
   --os-state specialized \
   --features SecurityType=TrustedLaunch

Tip

De id van uw installatiekopiedefinitie wordt weergegeven in de uitvoer van de opdracht. Kopieer en sla dit op een veilige locatie op, zodat u deze later in deze zelfstudie kunt gebruiken.

De installatiekopieversie maken

Maak een installatiekopieversie van de virtuele machine met az image gallery create-image-version.

Toegestane tekens voor de versie van de installatiekopieën zijn getallen en punten. Cijfers moeten binnen het bereik van een 32-bits geheel getal zijn. Indeling: MajorVersion.MinorVersion.Patch.

In het volgende voorbeeld:

  • De versie van de installatiekopieën is 1.0.0.
  • We maken één replica in de regio VS - zuid-centraal en één replica in de regio VS - oost. De replicatieregio’s moeten de regio omvatten waarin de bron-VM zich bevindt.
  • --virtual-machine is de id van de VM die we eerder hebben gemaakt.
export MY_VM_ID=$(az vm show --name $MY_VM_NAME --resource-group $MY_RESOURCE_GROUP_NAME --query "id" --output tsv)

az sig image-version create \
   --resource-group $MY_GALLERY_RG_NAME \
   --gallery-name $MY_GALLERY_NAME \
   --gallery-image-definition $MY_IMAGE_DEF_NAME \
   --gallery-image-version 1.0.0 \
   --target-regions "southcentralus=1" "eastus=1" \
   --virtual-machine $MY_VM_ID

Notitie

U moet wachten totdat de versie van de installatiekopie volledig is gebouwd en gerepliceerd voordat u dezelfde installatiekopie kunt gebruiken om een andere versie van de installatiekopie te maken.

U kunt uw installatiekopie ook opslaan in Premium Storage door een --storage-account-type premium_lrs toe te voegen, of in Zone-redundante opslag door --storage-account-type standard_zrs toe te voegen wanneer u de installatiekopieversie maakt.

Een schaalset maken op basis van een installatiekopie

U maakt een schaalset met behulp van az vmss create. Als u een gespecialiseerde bron-VM gebruikt, voegt u de --specialized parameter toe om aan te geven dat het een gespecialiseerde installatiekopieën is.

Wanneer u de definitie-id van de installatiekopieën gebruikt om --image de schaalsetexemplaren te maken, maakt u een schaalset die gebruikmaakt van de nieuwste versie van de beschikbare installatiekopieën. Als u een specifieke versie van de installatiekopieën wilt, moet u de versie-id van de installatiekopieën opnemen wanneer u de --imageinstallatiekopieën definieert.

  • Voorbeeld van meest recente afbeelding: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/galleries/myGallery/images/myImage

  • Voorbeeld van een specifieke afbeelding: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/galleries/myGallery/images/myImage/versions/1.0.0

In het volgende voorbeeld is de schaalset:

  • Met de naam myScaleSet
  • Gebruik de nieuwste versie van de installatiekopie myImageDefinition .
  • Geconfigureerd voor vertrouwd starten.
export MY_IMAGE_DEF_ID=$(az sig image-definition show --resource-group $MY_GALLERY_RG_NAME --gallery-name $MY_GALLERY_NAME --gallery-image-definition $MY_IMAGE_DEF_NAME --query "id" --output tsv)
export MY_SCALE_SET_RG_NAME="myResourceGroup$RANDOM_ID"
export MY_SCALE_SET_NAME="myScaleSet$RANDOM_ID"

az group create --name $MY_SCALE_SET_RG_NAME --location eastus

az vmss create \
   --resource-group $MY_SCALE_SET_RG_NAME \
   --name $MY_SCALE_SET_NAME \
   --orchestration-mode flexible \
   --image $MY_IMAGE_DEF_ID \
   --specialized \
   --security-type TrustedLaunch

Het duurt enkele minuten om alle schaalsetresources en VM's te maken en te configureren.

U kunt installatiekopieën delen in abonnementen met behulp van op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) en u kunt deze delen op het niveau van de galerie, installatiekopieëndefinitie of versie van installatiekopieën. Elke gebruiker met leesmachtiging voor een installatiekopieënversie, zelfs in verschillende abonnementen, kan een VIRTUELE machine implementeren met behulp van de installatiekopieënversie.

We raden aan om te delen met andere gebruikers op galerieniveau.

Het volgende voorbeeld:

  • Hiermee haalt u de object-id van de galerie op met behulp van az sig show.
  • Biedt toegang tot de galerie met behulp van az role assignment create.
    • Gebruikt de object-id als het bereik van de toewijzing.
    • Gebruikt de id van de aangemelde gebruiker als de toegewezen gebruiker voor demonstratiedoeleinden. Wanneer u deze code in uw test- of productiecode gebruikt, moet u ervoor zorgen dat u de toegewezen gebruiker bijwerkt om aan te geven wie u toegang wilt krijgen tot deze installatiekopieën. Zie Azure-roltoewijzingen toevoegen of verwijderen met de Azure CLI voor meer informatie over het delen van resources met behulp van Azure RBAC. , samen met een e-mailadres, met behulp van az role assignment create om een gebruiker toegang te geven tot de galerie met gedeelde installatiekopieën.
export MY_GALLERY_ID=$(az sig show --resource-group $MY_GALLERY_RG_NAME --gallery-name $MY_GALLERY_NAME --query "id" --output tsv)
export CALLER_ID=$(az ad signed-in-user show --query id -o tsv)

az role assignment create \
   --role "Reader" \
   --assignee $CALLER_ID \
   --scope $MY_GALLERY_ID

Resources opschonen

Als u de schaalset en aanvullende resources wilt verwijderen, verwijdert u de resourcegroep en alle bijbehorende resources met az group delete. De parameter --no-wait retourneert het besturingselement naar de prompt zonder te wachten totdat de bewerking is voltooid. De parameter --yes bevestigt dat u de resources wilt verwijderen, zonder een extra prompt om dit te doen.

Volgende stappen

In deze zelfstudie hebt u geleerd hoe u een aangepaste VM-installatiekopie maakt en gebruikt voor uw schaalsets met Azure CLI:

  • Een Azure Compute-galerie maken
  • Een gespecialiseerde installatiekopiedefinitie maken
  • De versie van een installatiekopie maken
  • Een schaalset maken op basis van een gespecialiseerde installatiekopie
  • Een galerie met installatiekopieën delen

Ga door naar de volgende zelfstudie voor informatie over het implementeren van toepassingen naar uw schaalset.