Lagra och dela avbildningar i ett Azure Compute-galleri
Gäller för: ✔️ Virtuella Linux-datorer ✔️ med virtuella Windows-datorer ✔️ – flexibla skalningsuppsättningar ✔️ Enhetliga skalningsuppsättningar
En avbildning är en kopia av antingen en fullständig virtuell dator (inklusive eventuella anslutna datadiskar) eller bara OS-disken, beroende på hur den skapas. När du skapar en virtuell dator från avbildningen används en kopia av de virtuella hårddiskarna i avbildningen för att skapa diskarna för den nya virtuella datorn. Avbildningen finns kvar i lagringen och kan användas om och om igen för att skapa nya virtuella datorer.
Om du har ett stort antal bilder som du behöver underhålla och vill göra dem tillgängliga i hela företaget kan du använda ett Azure Compute-galleri som lagringsplats.
När du använder ett galleri för att lagra avbildningar skapas flera resurstyper:
Resurs | beskrivning |
---|---|
Bildkälla | Det här är en resurs som kan användas för att skapa en avbildningsversion i ett galleri. En avbildningskälla kan vara en befintlig virtuell Azure-dator som antingen är generaliserad eller specialiserad, en hanterad avbildning, en ögonblicksbild, en virtuell hårddisk eller en avbildningsversion i ett annat galleri. |
Galleri | Precis som på Azure Marketplace är ett galleri en lagringsplats för hantering och delning av avbildningar och andra resurser, men du styr vem som har åtkomst. |
Bilddefinition | Bilddefinitioner skapas i ett galleri och de innehåller information om avbildningen och eventuella krav för att använda den för att skapa virtuella datorer. Detta inkluderar om avbildningen är Windows eller Linux, viktig information och krav på lägsta och högsta minne. Det är en definition av en typ av bild. |
Avbildningsversion | En avbildningsversion är det du använder för att skapa en virtuell dator när du använder ett galleri. Du kan ha flera versioner av en avbildning efter behov för din miljö. Precis som en hanterad avbildning används avbildningsversionen för att skapa nya diskar för den virtuella datorn när du använder en avbildningsversion för att skapa en virtuell dator. Avbildningsversioner kan användas flera gånger. |
Bilddefinitioner
Bilddefinitioner är en logisk gruppering för versioner av en bild. Bilddefinitionen innehåller information om varför avbildningen skapades och innehåller även bildmetadata, till exempel vilket operativsystem den är till för, funktioner som den stöder och annan information om hur du använder bilden. En bilddefinition är som en plan för all information om hur du skapar en viss avbildning. Du distribuerar inte en virtuell dator från en avbildningsdefinition, utan från de avbildningsversioner som skapats från definitionen.
Det finns tre parametrar för varje bilddefinition som används i kombination – Publisher, Offer och SKU. Dessa används för att hitta en specifik bilddefinition. Du kan ha bilddefinitioner som delar ett eller två, men inte alla tre värdena. Här är till exempel tre bilddefinitioner och deras värden:
Bilddefinition | Publisher | Erbjudande | Sku |
---|---|---|---|
myImage1 | Contoso | Ekonomi | Serverdel |
myImage2 | Contoso | Ekonomi | Klientdel |
myImage3 | Testning | Ekonomi | Klientdel |
Alla tre av dessa har unika uppsättningar med värden. Formatet liknar hur du för närvarande kan ange utgivare, erbjudande och SKU för Azure Marketplace-avbildningar i Azure PowerShell för att hämta den senaste versionen av en Marketplace-avbildning. Varje bilddefinition måste ha en unik uppsättning av dessa värden.
Följande parametrar avgör vilka typer av bildversioner de kan innehålla:
- Operativsystemtillstånd – Du kan ange operativsystemets tillstånd till generaliserat eller specialiserat. Fältet är obligatoriskt.
- Operativsystem – kan vara antingen Windows eller Linux. Fältet är obligatoriskt.
- Hyper-V-generation – ange om avbildningen skapades från en hyper-V-hårddisk av generation 1 eller generation 2 . Standardvärdet är generation 1.
Bilddefinitioner innehåller metadata för avbildningen för att tillåta gruppering av bilder som stöder samma funktioner, plan, OS-tillstånd, operativsystemtyp och andra. Följande är andra parametrar som kan anges i bilddefinitionen så att du enklare kan spåra dina resurser:
Beskrivning – använd beskrivning för att ge mer detaljerad information om varför bilddefinitionen finns. Du kan till exempel ha en bilddefinition för klientdelsservern som har programmet förinstallerat.
EULA – kan användas för att peka på ett licensavtal för slutanvändare som är specifikt för bilddefinitionen.
Sekretesspolicy och viktig information – lagra viktig information och sekretesspolicyer i Azure Storage och ge en URI för åtkomst till dem som en del av avbildningsdefinitionen.
Slutdatum – upprätta ett standarddatum efter vilket avbildningen inte ska användas för alla bildversioner i bilddefinitionen. Slutdatum är informationsbaserade. användare kommer fortfarande att kunna skapa virtuella datorer från avbildningar och versioner efter slutdatumet.
Tagg – du kan lägga till taggar när du skapar avbildningsdefinitionen. Mer information om taggar finns i Använda taggar för att organisera dina resurser
Lägsta och högsta rekommendationer för vCPU och minne – om avbildningen har vCPU- och minnesrekommendationer kan du bifoga den informationen i bilddefinitionen.
Otillåtna disktyper – du kan ange information om lagringsbehoven för den virtuella datorn. Om avbildningen till exempel inte lämpar sig för standarddiskar för hårddiskar lägger du till dem i listan över otillåtna.
Köp planinformation för Marketplace-avbildningar –
-PurchasePlanPublisher
,-PurchasePlanName
och-PurchasePlanProduct
. Mer information om köpplansinformation finns i Hitta avbildningar på Azure Marketplace och Ange köpplansinformation för Azure Marketplace när du skapar avbildningar.Arkitektur
Med funktioner kan du ange ytterligare funktioner och SecurityTypes som stöds på bilden, baserat på typen av galleri:
Funktioner Godkända värden Definition Stöds i IsHibernateSupported Sant, Falskt Skapa virtuella datorer med stöd för viloläge. Privat, direkt delad, community IsAcceleratedNetworkSupported Sant, Falskt Skapa virtuella datorer med accelererat nätverk aktiverat. När inställningen är inställd True
på på Bilddefinition stöds inte insamling av virtuella datorer som inte stöder accelererat nätverk.Privat, direkt delad, community DiskControllerType ["SCSI", "NVMe"], ["SCSI"] Ange att detta ska använda scsi- eller NVMe-disktyp. Virtuella NVMe-datorer och -diskar kan bara avbildas i bilddefinitioner som har taggats för att stödja NVMe. Privat, direkt delad, community När du anger en SecurityType med parametern
features
begränsas de säkerhetsfunktioner som är aktiverade på den virtuella datorn. Vissa typer är begränsade, baserat på vilken typ av galleri de lagras i:SecurityType Definition Stöds i ConfidentialVMSupported Det är en allmän Gen2-avbildning som inte innehåller VMGS-blob. En virtuell Gen2-dator eller en konfidentiell virtuell dator kan skapas från den här avbildningstypen Privat, direkt delad, community Konfidentiell virtuell dator Endast konfidentiella virtuella datorer kan skapas från den här avbildningstypen Privat TrustedLaunchSupported Det är en allmän Gen2-avbildning som inte innehåller VMGS-bloben. Gen2 VM eller TrustedLaunch VM kan skapas från den här avbildningstypen. Privat, direkt delad, community TrustedLaunch Det går bara att skapa en virtuell TrustedLaunch-dator från den här avbildningstypen Privat TrustedLaunchAndConfidentialVmSupported Det är en allmän Gen2-avbildning som inte innehåller VMGS-bloben. Gen2 VM, TrustedLaunch VM eller en ConfidentialVM kan skapas från den här avbildningstypen. Privat, direkt delad, community Mer information finns i CLI-exemplen för att lägga till bilddefinitionsfunktioner och SecurityType eller PowerShell-exemplen.
**ConfidentialVM stöds bara i de regioner där den är tillgänglig. Du hittar de regioner som stöds här.
Bildversioner
En avbildningsversion är det du använder för att skapa en virtuell dator. Du kan ha flera versioner av en avbildning efter behov för din miljö. När du använder en avbildningsversion för att skapa en virtuell dator används avbildningsversionen för att skapa nya diskar för den virtuella datorn. Avbildningsversioner kan användas flera gånger.
Egenskaperna för en avbildningsversion är:
- Versionsnummer. Detta används som namnet på avbildningsversionen. Det är alltid i formatet: MajorVersion.MinorVersion.Patch. När du anger att du ska använda den senaste när du skapar en virtuell dator väljs den senaste avbildningen baserat på den högsta MajorVersion, sedan MinorVersion och sedan Patch.
- Källa. Källan kan vara en virtuell dator, hanterad disk, ögonblicksbild, hanterad avbildning eller en annan avbildningsversion.
- Slutdatum. Ange slutdatumet för avbildningsversionen. Slutdatum är informationsbaserade. användare kommer fortfarande att kunna skapa virtuella datorer från versioner efter slutdatumet.
Generaliserade och specialiserade bilder
Det finns två operativsystemtillstånd som stöds av Azure Compute Gallery. Vanligtvis kräver avbildningar att den virtuella dator som används för att skapa avbildningen har generaliserats innan avbildningen används. Generalisering är en process som tar bort dator- och användarspecifik information från den virtuella datorn. För Linux kan du använda waagent -deprovision
eller -deprovision+user
parametrar. För Windows används Sysprep-verktyget.
Specialiserade virtuella datorer har inte gått igenom en process för att ta bort datorspecifik information och konton. Dessutom har virtuella datorer som skapats från specialiserade avbildningar inte någon osProfile
associerad med dem. Det innebär att specialiserade bilder kommer att ha vissa begränsningar utöver vissa fördelar.
- Virtuella datorer och skalningsuppsättningar som skapats från specialiserade avbildningar kan vara igång snabbare. Eftersom de skapas från en källa som redan har gått igenom den första starten startar virtuella datorer som skapats från dessa avbildningar snabbare.
- Konton som kan användas för att logga in på den virtuella datorn kan också användas på alla virtuella datorer som skapats med den specialiserade avbildningen som skapas från den virtuella datorn.
- De virtuella datorerna har datornamnet på den virtuella datorn som avbildningen togs från. Du bör ändra datornamnet för att undvika kollisioner.
- Är
osProfile
hur viss känslig information skickas till den virtuella datorn med hjälp avsecrets
. Detta kan orsaka problem med KeyVault, WinRM och andra funktioner som användersecrets
iosProfile
. I vissa fall kan du använda hanterade tjänstidentiteter (MSI) för att kringgå dessa begränsningar.
Kommentar
Generaliserade och specialiserade VM-avbildningar innehåller en operativsystemdisk och alla anslutna diskar, om det finns några.
Uppdatera resurser
När du har skapat kan du göra några ändringar i galleriresurserna. Dessa är begränsade till:
Azure Compute Gallery:
- beskrivning
Bilddefinition:
- Rekommenderade vCPU:er
- Rekommenderat minne
- beskrivning
- Slutdatum
- ReleaseNotes
Avbildningsversion:
- Antal regionala repliker
- Målregioner
- Exkludera från senaste
- Slutdatum
Delning
Det finns tre huvudsakliga sätt att dela bilder på ett Azure Compute-galleri, beroende på vem du vill dela med:
Dela med: | Personer | Grupper | Tjänstens huvudnamn | Alla användare i en specifik prenumeration (eller) klientorganisation | Offentligt med alla användare i Azure |
---|---|---|---|---|---|
RBAC-delning | Ja | Ja | Ja | Nej | Nej |
RBAC + Direkt delat galleri | Ja | Ja | Ja | Ja | Nej |
RBAC + Community-galleri | Ja | Ja | Ja | No | Ja |
RBAC-behörigheter som krävs för att skapa en ACG-avbildning:
ACG-avbildningar kan skapas av användare från olika källor, inklusive virtuella datorer, diskar/ögonblicksbilder och virtuella hårddiskar. I avsnittet beskrivs de olika användarbehörigheter som krävs för att skapa en Azure Compute Gallery-avbildning. Identifierar utan nödvändiga behörigheter kommer inte att kunna skapa ACG-avbildningar.
- Virtuell dator som källa
- Disk/ögonblicksbild som källa
- VHD som källa
- Hanterad avbildning och galleribildversion som källa
- Användare kräver skrivbehörighet på den virtuella datorn för att skapa en ACG-avbildningsversion.
- För Azure SDK använder du egenskapen properties.storageProfile.source.virtualMachineId. Den här egenskapen kräver API version 2023-07-03 eller version 1.4.0 (eller senare) av .NET SDK
Source type | Behörigheter som krävs |
---|---|
Virtuell maskin | Skriva |
Disk/ögonblicksbild | Skriva |
VHD | Skriv (listKeys) |
Hanterad avbildning | Lästa |
Galleriavbildning | Lästa |
Mer information om inbyggda Azure-roller finns i vår dokumentation för att bevilja RBAC-behörigheter
Ytlig replikering
När du skapar en avbildningsversion kan du ange replikeringsläget till grunt för utveckling och testning. Ytlig replikering hoppar över kopiering av avbildningen, så avbildningsversionen är klar snabbare. Men det innebär också att du inte kan distribuera ett stort antal virtuella datorer från den avbildningsversionen. Detta liknar det sätt som de äldre hanterade bilderna fungerade på.
Ytlig replikering kan också vara användbar om du har stora avbildningar (upp till 32 TB) som inte distribueras ofta. Eftersom källbilden inte kopieras kan större diskar användas. Men de kan inte heller användas för att distribuera ett stort antal virtuella datorer samtidigt.
Om du vill ange en avbildning för ytlig replikering använder du --replication-mode Shallow
med Azure CLI.
SDK-support
Följande SDK:er stöder skapandet av Azure Compute Galleries:
Mallar
Du kan skapa Azure Compute Gallery-resursen med hjälp av mallar. Det finns flera tillgängliga snabbstartsmallar:
Vanliga frågor och svar
- Hur kan jag lista alla Azure Compute Gallery-resurser mellan prenumerationer?
- Kan jag flytta min befintliga avbildning till ett Azure Compute-galleri?
- Kan jag skapa en avbildningsversion från en specialiserad disk?
- Kan jag flytta Azure Compute Gallery-resursen till en annan prenumeration när den har skapats?
- Kan jag replikera mina avbildningsversioner över moln som Microsoft Azure som drivs av 21Vianet, Azure Germany eller Azure Government Cloud?
- Kan jag replikera mina avbildningsversioner mellan prenumerationer?
- Kan jag dela avbildningsversioner mellan Microsoft Entra-klienter?
- Hur lång tid tar det att replikera avbildningsversioner i målregionerna?
- Vad är skillnaden mellan källregion och målregion?
- Hur anger jag källregionen när jag skapar avbildningsversionen?
- Hur anger jag antalet avbildningsversionsrepliker som ska skapas i varje region?
- Kan jag skapa galleriet på en annan plats än det för bilddefinitionen och avbildningsversionen?
- Vilka avgifter debiteras för att använda ett Azure Compute-galleri?
- Vilken API-version ska jag använda när jag skapar avbildningar?
- Vilken API-version ska jag använda för att skapa en virtuell dator eller vm-skalningsuppsättning av avbildningsversionen?
- Kan jag uppdatera min VM-skalningsuppsättning som skapats med hanterad avbildning för att använda Azure Compute Gallery-avbildningar?
- Hur kan jag uppdatera min kod för att använda den nya egenskapen och se till att behörigheterna beviljas korrekt när vm-avbildningen skapas?
- Påverkar borttagning av Azure Compute Gallery-avbildningar befintliga virtuella datorer som skapats från den?
Hur kan jag lista alla Azure Compute Gallery-resurser mellan prenumerationer?
Följ stegen nedan om du vill visa en lista över alla Azure Compute Gallery-resurser i prenumerationer som du har åtkomst till i Azure-portalen:
- Öppna Azure Portal.
- Rulla nedåt på sidan och välj Alla resurser.
- Välj alla prenumerationer under vilka du vill visa en lista över alla resurser.
- Leta efter resurser av typen Azure Compute Gallery .
Om du vill visa en lista över alla Azure Compute Gallery-resurser i prenumerationer som du har behörighet till använder du följande kommando i Azure CLI:
az account list -otsv --query "[].id" | xargs -n 1 az sig list --subscription
Kan jag flytta min befintliga avbildning till ett Azure Compute-galleri?
Ja. Det finns tre scenarier baserat på vilka typer av bilder du kan ha.
Scenario 1: Om du har en hanterad avbildning kan du skapa en bilddefinition och avbildningsversion från den. Mer information finns i Skapa och bilddefinition och en avbildningsversion.
Scenario 2: Om du har en ohanterad avbildning kan du skapa en hanterad avbildning från den och sedan skapa en bilddefinition och avbildningsversion från den.
Scenario 3: Om du har en virtuell hårddisk i det lokala filsystemet måste du ladda upp den virtuella hårddisken till en hanterad avbildning. Sedan kan du skapa en bilddefinition och avbildningsversion från den.
- Om den virtuella hårddisken är av en virtuell Windows-dator kan du läsa Ladda upp en virtuell hårddisk.
- Om den virtuella hårddisken är för en virtuell Linux-dator läser du Ladda upp en virtuell hårddisk
Kan jag skapa en avbildningsversion från en specialiserad disk?
Ja, kan skapa en virtuell dator från en specialiserad avbildning.
Kan jag flytta Azure Compute Gallery-resursen till en annan prenumeration när den har skapats?
Nej, du kan inte flytta galleribildresursen till en annan prenumeration. Du kan replikera avbildningsversionerna i galleriet till andra regioner eller kopiera en bild från ett annat galleri.
Kan jag replikera mina avbildningsversioner över moln som Azure som drivs av 21Vianet eller Azure Germany eller Azure Government Cloud?
Nej, du kan inte replikera avbildningsversioner mellan moln.
Kan jag replikera mina avbildningsversioner mellan prenumerationer?
Nej, du kan replikera avbildningsversionerna mellan regioner i en prenumeration och använda den i andra prenumerationer via RBAC.
Kan jag dela avbildningsversioner mellan Microsoft Entra-klienter?
Ja, du kan använda RBAC för att dela till enskilda användare mellan klienter. Men om du vill dela i stor skala kan du läsa "Dela galleribilder mellan Azure-klienter" med hjälp av PowerShell eller CLI.
Hur lång tid tar det att replikera avbildningsversioner i målregionerna?
Replikeringstiden för avbildningsversionen är helt beroende av bildens storlek och antalet regioner som den replikeras till. Vi rekommenderar dock att du håller bilden liten och att käll- och målregionerna stängs för bästa resultat. Du kan kontrollera replikeringens status med flaggan -ReplicationStatus.
Vad är skillnaden mellan källregion och målregion?
Källregionen är den region där avbildningsversionen ska skapas och målregioner är de regioner där en kopia av avbildningsversionen ska lagras. För varje avbildningsversion kan du bara ha en källregion. Kontrollera också att du skickar källregionplatsen som en av målregionerna när du skapar en avbildningsversion.
Hur anger jag källregionen när jag skapar avbildningsversionen?
När du skapar en avbildningsversion kan du använda argumentet --location i CLI och parametern -Location i PowerShell för att ange källregionen. Kontrollera att den hanterade avbildning som du använder som basavbildning för att skapa avbildningsversionen finns på samma plats som den plats där du tänker skapa avbildningsversionen. Kontrollera också att du skickar källregionplatsen som en av målregionerna när du skapar en avbildningsversion.
Hur anger jag antalet avbildningsversionsrepliker som ska skapas i varje region?
Det finns två sätt att ange hur många avbildningsversionsrepliker som ska skapas i varje region:
- Det regionala replikantalet som anger antalet repliker som du vill skapa per region.
- Det vanliga antalet repliker som är standardantalet per region om antalet regionala repliker inte har angetts.
Om du vill ange antalet regionala repliker skickar du platsen tillsammans med antalet repliker som du vill skapa i den regionen: "USA, södra centrala=2".
Om det regionala antalet repliker inte anges för varje plats är standardantalet repliker det vanliga antalet repliker som du har angett.
Om du vill ange det vanliga antalet repliker i Azure CLI använder du argumentet --replica-count i az sig image-version create
kommandot .
Kan jag skapa galleriet på en annan plats än det för bilddefinitionen och avbildningsversionen?
Ja, det är möjligt. Men som bästa praxis rekommenderar vi att du behåller resursgruppen, galleriet, bilddefinitionen och avbildningsversionen på samma plats.
Vilka avgifter debiteras för att använda ett Azure Compute-galleri?
Det finns inga avgifter för att använda ett Azure Compute-galleri, förutom lagringsavgifterna för lagring av avbildningsversioner och avgifter för utgående nätverk för replikering av avbildningsversioner från källregion till målregioner.
Vilken API-version ska jag använda när jag skapar avbildningar?
Om du vill arbeta med gallerier, bilddefinitioner och avbildningsversioner rekommenderar vi att du använder API-version 2018-06-01. Zonredundant lagring (ZRS) kräver version 2019-03-01 eller senare.
Vilken API-version ska jag använda för att skapa en virtuell dator eller vm-skalningsuppsättning av avbildningsversionen?
För vm- och vm-skalningsuppsättningsdistributioner med en avbildningsversion rekommenderar vi att du använder API-version 2018-04-01 eller senare.
Kan jag uppdatera min VM-skalningsuppsättning som skapats med hanterad avbildning för att använda Azure Compute Gallery-avbildningar?
Ja, du kan uppdatera referensen för skalningsuppsättningsavbildningen från en hanterad avbildning till en Azure Compute Gallery-avbildning, så länge os-typen, Hyper-V-generationen och datadisklayouten matchar mellan bilderna.
Hur kan jag uppdatera min kod för att använda den nya egenskapen och se till att behörigheterna beviljas korrekt när vm-avbildningen skapas?
För fältet Virtuell dator-ID använder du fältet VirtualMachineId under GallerySource(GalleryImageVersionStorageProfile.GallerySource.VirtualMachineID). Den nya egenskapen kräver api-version 2023-07-03 eller version 1.4.0 (eller senare) av .NET SDK
StorageProfile = new GalleryImageVersionStorageProfile()
{
GallerySource = new GalleryArtifactVersionFullSource()
{
VirtualMachineId = new ResourceIdentifier(virtualMachineId),
}
},
För VHD som källa använder du fältet StorageAccountID under GallerySource under OSDiskImage eller Data disk Image(GalleryImageVersionStorageProfile.OSDiskImage.GallerySource.StorageAccountId). Den nya egenskapen kräver api-version 2022-03-03
StorageProfile = new GalleryImageVersionStorageProfile()
{
OSDiskImage = new GalleryOSDiskImage()
{
GallerySource = new GalleryDiskImageSource()
{
StorageAccountId = new ResourceIdentifier(storageAccountId),
Uri = new Uri(blobUri),
}
}
},
Påverkar borttagning av Azure Compute-galleriet virtuella datorer som skapats från det?
Virtuella datorer som skapats från Azure Compute Gallery-avbildningen påverkas inte på grund av deras beständiga diskar. VmSS-utskalningsåtgärden misslyckas dock eftersom de förlitar sig på källavbildnings-ID-referensen som skulle gå förlorad när Azure Compute Gallery-avbildningen har tagits bort.
Felsöka
Om du har problem med att utföra åtgärder på galleriresurserna läser du listan över vanliga fel i felsökningsguiden.
Dessutom kan du publicera och tagga din fråga med azure-virtual-machines-images
i Q&A.
Nästa steg
Lär dig hur du distribuerar avbildningar med hjälp av Azure Compute Gallery.