När du skapar en ny virtuell dator från en specialiserad avbildning behåller den nya virtuella datorn datornamnet för den ursprungliga virtuella datorn. Annan datorspecifik information, till exempel CMID, behålls också. Den här dubblettinformationen kan orsaka problem. När du kopierar en virtuell dator bör du vara medveten om vilka typer av datorspecifik information dina program förlitar sig på.
Visa en lista med bilddefinitioner i ett galleri med az sig image-definition list för att se definitionernas namn och ID.
resourceGroup=myGalleryRG
gallery=myGallery
az sig image-definition list \
--resource-group $resourceGroup \
--gallery-name $gallery \
--query "[].[name, id]" \
--output tsv
Skapa den virtuella datorn med az vm create med hjälp av parametern --specialized för att indikera att avbildningen är en specialiserad avbildning.
Använd avbildningsdefinitions-ID:t för för --image att skapa den virtuella datorn från den senaste versionen av avbildningen som är tillgänglig. Du kan också skapa den virtuella datorn från en viss version genom att ange avbildningsversions-ID:t för --image.
I det här exemplet skapar vi en virtuell dator från den senaste versionen av avbildningen myImageDefinition .
az group create --name myResourceGroup --location eastus
az vm create --resource-group myResourceGroup \
--name myVM \
--image "/subscriptions/<Subscription ID>/resourceGroups/myGalleryRG/providers/Microsoft.Compute/galleries/myGallery/images/myImageDefinition" \
--specialized
När du har en specialiserad avbildningsversion kan du skapa en eller flera nya virtuella datorer med hjälp av cmdleten New-AzVM .
I det här exemplet använder vi avbildningsdefinitions-ID:t för att säkerställa att den nya virtuella datorn använder den senaste versionen av en avbildning. Du kan också använda en viss version med hjälp av avbildningsversions-ID:t för Set-AzVMSourceImage -Id. Om du till exempel vill använda avbildningsversion 1.0.0 skriver du: Set-AzVMSourceImage -Id "/subscriptions/<subscription ID where the gallery is located>/resourceGroups/myGalleryRG/providers/Microsoft.Compute/galleries/myGallery/images/myImageDefinition/versions/1.0.0".
Om du använder en viss avbildningsversion kan automatisering misslyckas om den specifika avbildningsversionen inte är tillgänglig eftersom den har tagits bort eller tagits bort från regionen. Vi rekommenderar att du använder avbildningsdefinitions-ID:t för att skapa den nya virtuella datorn, såvida inte en specifik avbildningsversion krävs.
Ersätt resursnamn efter behov i det här exemplet.
# Create some variables for the new VM.
$resourceGroup = "mySIGSpecializedRG"
$location = "South Central US"
$vmName = "mySpecializedVM"
# Get the image. Replace the name of your resource group, gallery, and image definition. This will create the VM from the latest image version available.
$imageDefinition = Get-AzGalleryImageDefinition `
-GalleryName myGallery `
-ResourceGroupName myResourceGroup `
-Name myImageDefinition
# Create a resource group
New-AzResourceGroup -Name $resourceGroup -Location $location
# Create the network resources.
$subnetConfig = New-AzVirtualNetworkSubnetConfig `
-Name mySubnet `
-AddressPrefix 192.168.1.0/24
$vnet = New-AzVirtualNetwork `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name MYvNET `
-AddressPrefix 192.168.0.0/16 `
-Subnet $subnetConfig
$pip = New-AzPublicIpAddress `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name "mypublicdns$(Get-Random)" `
-AllocationMethod Static `
-IdleTimeoutInMinutes 4
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig `
-Name myNetworkSecurityGroupRuleRDP `
-Protocol Tcp `
-Direction Inbound `
-Priority 1000 `
-SourceAddressPrefix * `
-SourcePortRange * `
-DestinationAddressPrefix * `
-DestinationPortRange 3389 -Access Deny
$nsg = New-AzNetworkSecurityGroup `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name myNetworkSecurityGroup `
-SecurityRules $nsgRuleRDP
$nic = New-AzNetworkInterface `
-Name $vmName `
-ResourceGroupName $resourceGroup `
-Location $location `
-SubnetId $vnet.Subnets[0].Id `
-PublicIpAddressId $pip.Id `
-NetworkSecurityGroupId $nsg.Id
# Create a virtual machine configuration using Set-AzVMSourceImage -Id $imageDefinition.Id to use the latest available image version.
$vmConfig = New-AzVMConfig `
-VMName $vmName `
-VMSize Standard_D1_v2 | `
Set-AzVMSourceImage -Id $imageDefinition.Id | `
Add-AzVMNetworkInterface -Id $nic.Id
# Create a virtual machine
New-AzVM `
-ResourceGroupName $resourceGroup `
-Location $location `
-VM $vmConfig
Nu kan du skapa en eller flera nya virtuella datorer. Det här exemplet skapar en virtuell dator med namnet myVM i myResourceGroup i datacentret usa, östra.
Gå till bilddefinitionen. Du kan använda resursfiltret för att visa alla tillgängliga bilddefinitioner.
På sidan för bilddefinitionen väljer du Skapa virtuell dator på menyn överst på sidan.
För Resursgrupp väljer du Skapa ny och skriver myResourceGroup som namn.
I Namn på virtuell dator skriver du myVM.
För Region väljer du USA, östra.
För Tillgänglighetsalternativ lämnar du standardvärdet Ingen infrastrukturredundans krävs.
Värdet för Bild fylls automatiskt i med avbildningsversionen latest om du har startat från sidan för bilddefinitionen.
För Storlek väljer du en VM-storlek i listan över tillgängliga storlekar och väljer sedan Välj.
Under Administratörskonto är användarnamnet nedtonat eftersom användarnamnet och autentiseringsuppgifterna från den virtuella källdatorn används.
Om du vill tillåta fjärråtkomst till den virtuella datorn går du till Offentliga inkommande portar och väljer Tillåt valda portar och väljer sedan SSH (22) eller RDP (3389) i listrutan. Om du inte vill tillåta fjärråtkomst till den virtuella datorn lämnar du Ingen vald för offentliga inkommande portar.
När du är klar väljer du knappen Granska + skapa längst ned på sidan.
När den virtuella datorn har verifierats väljer du Skapa längst ned på sidan för att starta distributionen.
RBAC – inom din organisation
Om prenumerationen där galleriet finns finns i samma klientorganisation kan avbildningar som delas via RBAC användas för att skapa virtuella datorer med hjälp av CLI och PowerShell.
Du behöver den imageID avbildning som du vill använda och se till att avbildningen replikeras till den region där du vill skapa den virtuella datorn.
RBAC – från en annan klientorganisation eller organisation
Om avbildningen som du vill använda lagras i ett galleri som inte finns i samma klientorganisation (katalog) måste du logga in på varje klientorganisation för att kontrollera att du har åtkomst.
Du behöver den imageID avbildning som du vill använda och se till att avbildningen replikeras till den region där du vill skapa den virtuella datorn. Du behöver tenantID också för källgalleriet och tenantID för var du vill skapa den virtuella datorn.
Du måste logga in på klientorganisationen där avbildningen lagras, hämta en åtkomsttoken och sedan logga in på klientorganisationen där du vill skapa den virtuella datorn. Så här autentiserar Azure att du har åtkomst till avbildningen.
tenant1='<ID for tenant 1>'
tenant2='<ID for tenant 2>'
az account clear
az login --tenant $tenant1
az account get-access-token
az login --tenant $tenant2
az account get-access-token
Skapa den virtuella datorn med az vm create med hjälp av parametern --specialized för att indikera att avbildningen är en specialiserad avbildning.
imageid=""/subscriptions/<Subscription ID>/resourceGroups/myGalleryRG/providers/Microsoft.Compute/galleries/myGallery/images/myImageDefinition""
resourcegroup="myResourceGroup"
location="West US 3"
name='myVM'
az group create --name $resourcegroup --location $location
az vm create --resource-group $resourcegroup \
--name $name \
--image $image \
--specialized
Du måste logga in på klientorganisationen där avbildningen lagras, hämta en åtkomsttoken och sedan logga in på klientorganisationen där du vill skapa den virtuella datorn. Så här autentiserar Azure att du har åtkomst till avbildningen.
Skapa den virtuella datorn. Ersätt informationen i exemplet med din egen. Innan du skapar den virtuella datorn kontrollerar du att avbildningen replikeras till den region där du vill skapa den virtuella datorn.
# Create some variables for the new VM.
$resourceGroup = "myResourceGroup"
$location = "South Central US"
$vmName = "myVM"
# Set a variable for the image version in Tenant 1 using the full image ID of the image version
$image = "/subscriptions/<Tenant 1 subscription>/resourceGroups/<Resource group>/providers/Microsoft.Compute/galleries/<Gallery>/images/<Image definition>/versions/<version>"
# Create a resource group
New-AzResourceGroup -Name $resourceGroup -Location $location
# Create the network resources.
$subnetConfig = New-AzVirtualNetworkSubnetConfig `
-Name mySubnet `
-AddressPrefix 192.168.1.0/24
$vnet = New-AzVirtualNetwork `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name MYvNET `
-AddressPrefix 192.168.0.0/16 `
-Subnet $subnetConfig
$pip = New-AzPublicIpAddress `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name "mypublicdns$(Get-Random)" `
-AllocationMethod Static `
-IdleTimeoutInMinutes 4
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig `
-Name myNetworkSecurityGroupRuleRDP `
-Protocol Tcp `
-Direction Inbound `
-Priority 1000 `
-SourceAddressPrefix * `
-SourcePortRange * `
-DestinationAddressPrefix * `
-DestinationPortRange 3389 -Access Deny
$nsg = New-AzNetworkSecurityGroup `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name myNetworkSecurityGroup `
-SecurityRules $nsgRuleRDP
$nic = New-AzNetworkInterface `
-Name $vmName `
-ResourceGroupName $resourceGroup `
-Location $location `
-SubnetId $vnet.Subnets[0].Id `
-PublicIpAddressId $pip.Id `
-NetworkSecurityGroupId $nsg.Id
# Create a virtual machine configuration using Set-AzVMSourceImage -Id $imageDefinition.Id to use the latest available image version.
$vmConfig = New-AzVMConfig `
-VMName $vmName `
-VMSize Standard_D1_v2 | `
Set-AzVMSourceImage -Id $image | `
Add-AzVMNetworkInterface -Id $nic.Id
# Create a virtual machine
New-AzVM `
-ResourceGroupName $resourceGroup `
-Location $location `
-VM $vmConfig
Att använda community-skickade avbildningar av virtuella datorer har flera risker. Bilder kan innehålla skadlig kod, säkerhetsrisker eller bryta mot någons immateriella rättigheter. För att skapa en säker och tillförlitlig upplevelse för communityn kan du rapportera bilder när du ser dessa problem.
Det enklaste sättet att rapportera problem med ett communitygalleri är att använda portalen, som fyller i information i förväg för rapporten:
Om du vill ha problem med länkar eller annan information i fälten i en bilddefinition väljer du Rapportcommunitybild.
Om en bildversion innehåller skadlig kod eller om det finns andra problem med en viss version av en bild väljer du Rapport under kolumnen Rapportversion i tabellen med bildversioner.
Du kan också använda följande länkar för att rapportera problem, men formulären fylls inte i i förväg:
Om du vill skapa en virtuell dator med en avbildning som delas till ett communitygalleri använder du det unika ID:t för avbildningen --imageför , som kommer att vara i följande format:
Som slutanvändare måste du använda portalen för att få det offentliga namnet på ett communitygalleri. Gå till Virtuella datorer>Skapa>en virtuell Azure-dator>Avbildning>Se alla bilder>Community Images>Offentligt gallerinamn.
Visa en lista över alla bilddefinitioner som är tillgängliga i ett communitygalleri med az sig image-definition list-community. I det här exemplet listar vi alla avbildningar i ContosoImage-galleriet i USA , västra och med namnet det unika ID som behövs för att skapa en virtuell dator, ett operativsystem och ett os-tillstånd.
az sig image-definition list-community \
--public-gallery-name "ContosoImages-1a2b3c4d-1234-abcd-1234-1a2b3c4d5e6f" \
--location westus \
--query [*]."{Name:name,ID:uniqueId,OS:osType,State:osState}" -o table
Skapa den virtuella datorn med az vm create med hjälp av parametern --specialized för att indikera att avbildningen är en specialiserad avbildning.
I det här exemplet skapar vi en virtuell dator från den senaste versionen av avbildningen myImageDefinition .
az group create --name myResourceGroup --location eastus
az vm create --resource-group myResourceGroup \
--name myVM \
--image "/CommunityGalleries/ContosoImages-f61bb1d9-3c5a-4ad2-99b5-744030225de6/Images/LinuxSpecializedVersions/latest" \
--specialized
När du använder en community-avbildning uppmanas du att godkänna de juridiska villkoren. Meddelandet ser ut så här:
To create the VM from community gallery image, you must accept the license agreement and privacy statement: http://contoso.com. (If you want to accept the legal terms by default, please use the option '--accept-term' when creating VM/VMSS) (Y/n):
Skriv virtuella datorer i sökningen.
Under Tjänster väljer du Virtuella datorer.
På sidan Virtuella datorer väljer du Skapa och sedan Virtuell dator. Sidan Skapa en virtuell dator öppnas.
På fliken Grundläggande information under Projektinformation kontrollerar du att rätt prenumeration är markerad och väljer sedan Skapa ny resursgrupp eller väljer en i listrutan.
Under Instansinformation skriver du ett namn för namnet på den virtuella datorn.
För Säkerhetstyp kontrollerar du att Standard är valt.
För din bild väljer du Visa alla bilder. Sidan Välj en bild öppnas.
I den vänstra menyn går du till Andra objekt och väljer Community-bilder. Övriga objekt | Sidan Community Images öppnas.
Välj en bild i listan. Kontrollera att operativsystemets tillstånd är specialiserat. Om du vill använda en specialiserad avbildning kan du läsa Skapa en virtuell dator med en generaliserad avbildningsversion. Beroende på vilken avbildning du väljer ändras den region som den virtuella datorn skapas i för att matcha avbildningen.
Slutför resten av alternativen och välj sedan knappen Granska + skapa längst ned på sidan.
På sidan Skapa en virtuell dator kan du se information om den virtuella dator som du håller på att skapa. När du är klar väljer du Skapa.
Om du vill publicera avbildningar till ett direkt delat galleri under förhandsversionen måste du registrera dig på https://aka.ms/directsharedgallery-preview. Att skapa virtuella datorer från ett direkt delat galleri är öppet för alla Azure-användare.
Under förhandsversionen måste du skapa ett nytt galleri med egenskapen sharingProfile.permissions inställd på Groups. När du använder CLI för att skapa ett galleri använder du parametern --permissions groups . Du kan inte använda ett befintligt galleri. Egenskapen kan för närvarande inte uppdateras.
Om du vill skapa en virtuell dator med den senaste versionen av en avbildning som delas till din prenumeration eller klientorganisation behöver du ID:t för avbildningen i följande format:
Om du vill hitta ett uniqueID galleri som delas med dig använder du az sig list-shared. I det här exemplet letar vi efter gallerier i regionen USA, västra.
region=westus
az sig list-shared --location $region --query "[].name" -o tsv
Använd gallerinamnet för att hitta alla tillgängliga bilder. I det här exemplet listar vi alla avbildningar i USA , västra och efter namn, det unika ID som behövs för att skapa en virtuell dator, ett operativsystem och ett os-tillstånd.
galleryName="1a2b3c4d-1234-abcd-1234-1a2b3c4d5e6f-myDirectShared"
az sig image-definition list-shared \
--gallery-unique-name $galleryName \
--location $region \
--query [*]."{Name:name,ID:uniqueId,OS:osType,State:osState}" -o table
Skapa den virtuella datorn med az vm create med hjälp av parametern --specialized för att indikera att avbildningen är en specialiserad avbildning.
Använd , Idsom läggs till med /Versions/latest för att använda den senaste versionen som värde för "--image" för att skapa en virtuell dator.
I det här exemplet skapar vi en virtuell dator från den senaste versionen av avbildningen myImageDefinition .
imgDef="/SharedGalleries/1a2b3c4d-1234-abcd-1234-1a2b3c4d5e6f-MYDIRECTSHARED/Images/myDirectDefinition/Versions/latest"
vmResourceGroup=myResourceGroup
location=westus
vmName=myVM
az group create --name $vmResourceGroup --location $location
az vm create\
--resource-group $vmResourceGroup \
--name $vmName \
--image $imgDef \
--specialized
Kommentar
Känt problem: Om du väljer en region i Azure-portalen väljer du en avbildning och sedan ändrar regionen. Du får ett felmeddelande: "Du kan bara skapa en virtuell dator i replikeringsregionerna i den här avbildningen" även när avbildningen replikeras till den regionen. Om du vill bli av med felet väljer du en annan region och växlar sedan tillbaka till den region du vill använda. Om avbildningen är tillgänglig bör den rensa felmeddelandet.
Du kan också använda Azure CLI för att kontrollera vilka avbildningar som delas med dig. Du kan till exempel använda "az sig list-shared --location westus" för att se vilka bilder som delas med dig i regionen USA, västra.
Skriv virtuella datorer i sökningen.
Under Tjänster väljer du Virtuella datorer.
På sidan Virtuella datorer väljer du Skapa och sedan Virtuell dator. Sidan Skapa en virtuell dator öppnas.
På fliken Grundläggande information under Projektinformation kontrollerar du att rätt prenumeration är markerad och väljer sedan Skapa ny resursgrupp eller väljer en i listrutan.
Under Instansinformation skriver du ett namn för namnet på den virtuella datorn.
För Säkerhetstyp kontrollerar du att Standard är valt.
För din bild väljer du Visa alla bilder. Sidan Välj en bild öppnas.
I den vänstra menyn, under Andra objekt, väljer du Direct Shared Images (PREVIEW). Övriga objekt | Sidan Direct Shared Images (FÖRHANDSVERSION) öppnas.
Välj en bild i listan. Kontrollera att operativsystemets tillstånd är specialiserat. Om du vill använda en generaliserad avbildning läser du Skapa en virtuell dator med en generaliserad avbildningsversion. Beroende på vilken avbildning du väljer ändras den region som den virtuella datorn skapas i för att matcha avbildningen.
Slutför resten av alternativen och välj sedan knappen Granska + skapa längst ned på sidan.
På sidan Skapa en virtuell dator kan du se information om den virtuella dator som du håller på att skapa. När du är klar väljer du Skapa.