Een nieuwe Windows-VM-installatiekopieën maken op basis van een bestaande installatiekopieën met behulp van Azure VM Image Builder
Van toepassing op: ✔️ Windows-VM's
In dit artikel leert u hoe u een bestaande versie van een Windows-installatiekopieën bijwerkt in een Azure Compute Gallery (voorheen Shared Image Gallery ) en deze als een nieuwe versie van de installatiekopieën naar de galerie publiceert.
Als u de afbeelding wilt configureren, gebruikt u een JSON-voorbeeldsjabloon helloImageTemplateforSIGfromWinSIG.json.
De providers registreren
Als u VM Image Builder wilt gebruiken, moet u de providers registreren.
Controleer uw providerregistraties. Zorg ervoor dat elke instantie Geregistreerd retourneert.
az provider show -n Microsoft.VirtualMachineImages | grep registrationState az provider show -n Microsoft.KeyVault | grep registrationState az provider show -n Microsoft.Compute | grep registrationState az provider show -n Microsoft.Storage | grep registrationState az provider show -n Microsoft.Network | grep registrationState az provider show -n Microsoft.ContainerInstance | grep registrationState
Als ze niet worden geretourneerd Geregistreerd, registreert u de providers door de volgende opdrachten uit te voeren:
az provider register -n Microsoft.VirtualMachineImages az provider register -n Microsoft.Compute az provider register -n Microsoft.KeyVault az provider register -n Microsoft.Storage az provider register -n Microsoft.Network az provider register -n Microsoft.ContainerInstance
Variabelen en machtigingen instellen
Als u al een Azure Compute Gallery hebt gemaakt met behulp van Een installatiekopieën maken en distribueren naar een Azure Compute Gallery, hebt u al een aantal variabelen gemaakt die u nodig hebt.
Notitie
VM Image Builder ondersteunt het maken van aangepaste installatiekopieën alleen in dezelfde resourcegroep waarin de door de bron beheerde installatiekopieën zich bevinden. Werk in het volgende voorbeeld de naam van de resourcegroep, ibsigRG, bij met de naam van de resourcegroep waarin de door de bron beheerde installatiekopieën zich bevinden.
Als u de variabelen nog niet hebt gemaakt, voert u de volgende opdrachten uit:
# Resource group name - we are using ibsigRG in this example sigResourceGroup=myIBWinRG # Datacenter location - we are using West US 2 in this example location=westus # Additional region to replicate the image to - we are using East US in this example additionalregion=eastus # name of the Azure Compute Gallery - in this example we are using myGallery sigName=my22stSIG # name of the image definition to be created - in this example we are using myImageDef imageDefName=winSvrimages # image distribution metadata reference name runOutputName=w2019SigRo # User name and password for the VM username="user name for the VM" vmpassword="password for the VM"
Maak een variabele voor uw abonnements-id:
subscriptionID=$(az account show --query id --output tsv)
Haal de installatiekopieënversie op die u wilt bijwerken:
sigDefImgVersionId=$(az sig image-version list \ -g $sigResourceGroup \ --gallery-name $sigName \ --gallery-image-definition $imageDefName \ --subscription $subscriptionID --query [].'id' -o tsv)
Een door de gebruiker toegewezen identiteit maken en machtigingen instellen voor de resourcegroep
U hebt de gebruikersidentiteit in een eerder voorbeeld ingesteld, dus nu moet u de resource-id ophalen, die wordt toegevoegd aan de sjabloon.
#get identity used previously
imgBuilderId=$(az identity list -g $sigResourceGroup --query "[?contains(name, 'aibBuiUserId')].id" -o tsv)
Als u al een Azure Compute Gallery hebt, maar deze niet hebt ingesteld door een eerder voorbeeld te volgen, moet u machtigingen toewijzen voor VM Image Builder om toegang te krijgen tot de resourcegroep, zodat deze toegang heeft tot de galerie. Zie Een installatiekopieën maken en distribueren naar een Azure Compute Gallery voor meer informatie.
Het helloImage-voorbeeld wijzigen
U kunt het JSON-voorbeeld bekijken dat u op helloImageTemplateforSIGfromSIG.json gaat gebruiken. Zie Een Azure VM Image Builder-sjabloon maken voor meer informatie over het JSON-bestand.
Download het JSON-voorbeeld, zoals wordt weergegeven in Een door de gebruiker toegewezen identiteit maken en machtigingen instellen voor de resourcegroep.
Configureer de JSON met uw variabelen:
curl https://raw.githubusercontent.com/azure/azvmimagebuilder/master/quickquickstarts/8_Creating_a_Custom_Win_Shared_Image_Gallery_Image_from_SIG/helloImageTemplateforSIGfromWinSIG.json -o helloImageTemplateforSIGfromWinSIG.json sed -i -e "s/<subscriptionID>/$subscriptionID/g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s/<rgName>/$sigResourceGroup/g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s/<imageDefName>/$imageDefName/g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s/<sharedImageGalName>/$sigName/g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s%<sigDefImgVersionId>%$sigDefImgVersionId%g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s/<region1>/$location/g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s/<region2>/$additionalregion/g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s/<runOutputName>/$runOutputName/g" helloImageTemplateforSIGfromWinSIG.json sed -i -e "s%<imgBuilderId>%$imgBuilderId%g" helloImageTemplateforSIGfromWinSIG.json
De installatiekopie maken
Verzend de installatiekopieënconfiguratie naar de VM Image Builder-service:
az resource create \ --resource-group $sigResourceGroup \ --location $location \ --properties @helloImageTemplateforSIGfromWinSIG.json \ --is-full-object \ --resource-type Microsoft.VirtualMachineImages/imageTemplates \ -n imageTemplateforSIGfromWinSIG01
Start de build van de installatiekopieën:
az resource invoke-action \ --resource-group $sigResourceGroup \ --resource-type Microsoft.VirtualMachineImages/imageTemplates \ -n imageTemplateforSIGfromWinSIG01 \ --action Run
Wacht totdat de installatiekopie is gemaakt en gerepliceerd voordat u verdergaat met de volgende stap.
De VM maken
Maak de VIRTUELE machine als volgt:
az vm create \
--resource-group $sigResourceGroup \
--name aibImgWinVm002 \
--admin-username $username \
--admin-password $vmpassword \
--image "/subscriptions/$subscriptionID/resourceGroups/$sigResourceGroup/providers/Microsoft.Compute/galleries/$sigName/images/$imageDefName/versions/latest" \
--location $location
De aanpassing controleren
Maak een verbinding met extern bureaublad met de virtuele machine met behulp van de gebruikersnaam en het wachtwoord die u hebt ingesteld bij het maken van de virtuele machine. Open in de VIRTUELE machine een opdrachtpromptvenster en voer het volgende uit:
dir c:\
U ziet nu twee mappen:
- buildActions: Gemaakt in de eerste versie van de installatiekopieën.
- buildActions2: Gemaakt toen u de eerste versie van de installatiekopieën hebt bijgewerkt om de tweede versie van de installatiekopieën te maken.
Volgende stappen
Zie Een Azure VM Image Builder-sjabloon maken voor meer informatie over de onderdelen van het JSON-bestand dat u in dit artikel hebt gebruikt.