Kurz: Vytváření imagí virtuálních počítačů s Windows pomocí Azure PowerShell
Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s ✔️ Windows
Image je možné použít ke spuštění nasazení a zajištění konzistence napříč několika virtuálními počítači. V tomto kurzu vytvoříte vlastní specializovanou image virtuálního počítače Azure pomocí PowerShellu a uložíte ji v Galerii výpočetních prostředků Azure (dříve označované jako Shared Image Gallery). Získáte informace o těchto tématech:
- Vytvoření Azure Compute Gallery
- Vytvoření definice image
- Vytvoření verze image
- Vytvoření virtuálního počítače z image
- Sdílení galerie
Než začnete
Následující postup podrobně popisuje, jak vytvořit existující virtuální počítač a převést ho na opakovaně použitelnou vlastní image, kterou můžete použít k vytvoření nových virtuálních počítačů.
K dokončení příkladu v tomto kurzu potřebujete existující virtuální počítač. V případě potřeby si můžete prohlédnout rychlý start PowerShellu k vytvoření virtuálního počítače pro účely tohoto kurzu. Při procházení kurzu nahraďte názvy prostředků tam, kde je to potřeba.
Přehled
Azure Compute Gallery zjednodušuje sdílení vlastních imagí v organizaci. Vlastní image jsou podobné imagím z marketplace, ale vytváříte je sami. Vlastní image se dají použít ke spouštění konfigurací, jako jsou předběžné načítání aplikací, konfigurace aplikací a další konfigurace operačního systému.
Azure Compute Gallery umožňuje sdílet vlastní image virtuálních počítačů s ostatními. Vyberte, které obrázky chcete sdílet, ve kterých oblastech je chcete zpřístupnit a s kým je chcete sdílet.
Funkce Azure Compute Gallery má několik typů prostředků:
Prostředek | Popis |
---|---|
Zdroj obrázku | Toto je prostředek, který lze použít k vytvoření verze image v galerii. Zdrojem image může být existující virtuální počítač Azure, který je buď zobecněný, nebo specializovaný, spravovaná image, snímek nebo verze image v jiné galerii. |
Galerie | Podobně jako Azure Marketplace je galerie úložištěm pro správu a sdílení imagí a aplikací virtuálních počítačů, ale vy řídíte, kdo má přístup. |
Definice obrázku | Definice obrázků se vytvářejí v galerii a obsahují informace o obrázku a požadavcích na jeho interní použití. To zahrnuje, jestli se jedná o image Windows nebo Linux, poznámky k verzi a minimální a maximální požadavky na paměť. Jedná se o definici typu obrázku. |
Verze image | Verze image je to, co použijete k vytvoření virtuálního počítače při použití galerie. Podle potřeby pro vaše prostředí můžete mít několik verzí image. Když k vytvoření virtuálního počítače použijete verzi image , podobně jako u spravované image, použije se tato verze image k vytvoření nových disků pro virtuální počítač. Verze imagí je možné použít vícekrát. |
Spuštění služby Azure Cloud Shell
Azure Cloud Shell je bezplatné interaktivní prostředí, které můžete použít k provedení kroků v tomto článku. Má předinstalované obecné nástroje Azure, které jsou nakonfigurované pro použití s vaším účtem.
Pokud chcete otevřít Cloud Shell, vyberte položku Vyzkoušet v pravém horním rohu bloku kódu. Cloud Shell můžete spustit také na samostatné kartě prohlížeče na adrese https://shell.azure.com/powershell. Zkopírujte bloky kódu výběrem možnosti Kopírovat, vložte je do služby Cloud Shell a potom je spusťte stisknutím klávesy Enter.
Získání virtuálního počítače
Seznam virtuálních počítačů dostupných ve skupině prostředků můžete zobrazit pomocí rutiny Get-AzVM. Jakmile znáte název virtuálního počítače a jakou skupinu prostředků, můžete Get-AzVM
objekt virtuálního počítače získat znovu a uložit ho do proměnné pro pozdější použití. Tento příklad získá virtuální počítač sourceVM ze skupiny prostředků myResourceGroup a přiřadí ho k proměnné $sourceVM.
$sourceVM = Get-AzVM `
-Name sourceVM `
-ResourceGroupName myResourceGroup
Vytvoření skupiny prostředků
Vytvořte skupinu prostředků pomocí příkazu New-AzResourceGroup .
Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure. V následujícím příkladu se v oblasti EastUS vytvoří skupina prostředků myGalleryRG:
$resourceGroup = New-AzResourceGroup `
-Name 'myGalleryRG' `
-Location 'EastUS'
Vytvoření galerie
Galerie je primárním prostředkem, který slouží k povolení sdílení imagí. Povolené znaky pro název galerie jsou velká nebo malá písmena, číslice, tečky a tečky. Název galerie nesmí obsahovat pomlčky. Názvy galerií musí být v rámci vašeho předplatného jedinečné.
Vytvořte galerii pomocí rutiny New-AzGallery. Následující příklad vytvoří galerii myGallery ve skupině prostředků myGalleryRG .
$gallery = New-AzGallery `
-GalleryName 'myGallery' `
-ResourceGroupName $resourceGroup.ResourceGroupName `
-Location $resourceGroup.Location `
-Description 'Azure Compute Gallery for my organization'
Vytvoření definice image
Definice obrázků vytvářejí logické seskupení obrázků. Slouží ke správě informací o verzích imagí, které jsou v nich vytvořeny. Názvy definic obrázků můžou být tvořené velkými nebo malými písmeny, číslicemi, tečkami, pomlčkami a tečkami. Další informace o hodnotách, které můžete zadat pro definici obrázku, najdete v tématu Definice obrázků.
Vytvořte definici image pomocí rutiny New-AzGalleryImageDefinition. V tomto příkladu má image galerie název myGalleryImage a vytvoří se pro specializovanou image.
$galleryImage = New-AzGalleryImageDefinition `
-GalleryName $gallery.Name `
-ResourceGroupName $resourceGroup.ResourceGroupName `
-Location $gallery.Location `
-Name 'myImageDefinition' `
-OsState specialized `
-OsType Windows `
-Publisher 'myPublisher' `
-Offer 'myOffer' `
-Sku 'mySKU'
Vytvoření verze image
Vytvořte verzi image z virtuálního počítače pomocí rutiny New-AzGalleryImageVersion.
Povolené znaky pro verzi obrázku jsou čísla a tečky. Čísla musí být v rozsahu 32bitového celého čísla. Formát: Hlavníverze. MinorVersion. Oprava.
V tomto příkladu je verze image 1.0.0 a replikuje se do datových center USA – východ i USA – středo jih . Při výběru cílových oblastí pro replikaci musíte jako cíl replikace zahrnout zdrojovou oblast.
Pokud chcete vytvořit verzi image z virtuálního počítače, použijte $vm.Id.ToString()
pro -Source
.
$region1 = @{Name='South Central US';ReplicaCount=1}
$region2 = @{Name='East US';ReplicaCount=2}
$targetRegions = @($region1,$region2)
New-AzGalleryImageVersion `
-GalleryImageDefinitionName $galleryImage.Name`
-GalleryImageVersionName '1.0.0' `
-GalleryName $gallery.Name `
-ResourceGroupName $resourceGroup.ResourceGroupName `
-Location $resourceGroup.Location `
-TargetRegion $targetRegions `
-Source $sourceVM.Id.ToString() `
-PublishingProfileEndOfLifeDate '2030-12-01'
Replikace image do všech cílových oblastí může chvíli trvat.
Vytvoření virtuálního počítače
Jakmile budete mít specializovanou image, můžete vytvořit jeden nebo více nových virtuálních počítačů. Pomocí rutiny New-AzVM Pokud chcete image použít, použijte Set-AzVMSourceImage
a nastavte -Id
na ID definice image (v tomto případě $galleryImage.Id), aby se vždy používala nejnovější verze image.
Názvy prostředků nahraďte podle potřeby v tomto příkladu.
# Create some variables for the new VM.
$resourceGroup = "myResourceGroup"
$location = "South Central US"
$vmName = "mySpecializedVM"
# 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 $imageVersion.Id to specify the image version.
$vmConfig = New-AzVMConfig -VMName $vmName -VMSize Standard_D1_v2 | `
Set-AzVMSourceImage -Id $galleryImage.Id | `
Add-AzVMNetworkInterface -Id $nic.Id
# Create a virtual machine
New-AzVM -ResourceGroupName $resourceGroup -Location $location -VM $vmConfig
Sdílení galerie
Doporučujeme sdílet přístup na úrovni galerie. K získání ID objektu pro uživatele použijte e-mailovou adresu a rutinu Get-AzADUser a pak mu pomocí rutiny New-AzRoleAssignment udělte přístup ke galerii. Nahraďte ukázkový e-mail alinne_montes@contoso.com v tomto příkladu vlastními informacemi.
# Get the object ID for the user
$user = Get-AzADUser -StartsWith alinne_montes@contoso.com
# Grant access to the user for our gallery
New-AzRoleAssignment `
-ObjectId $user.Id `
-RoleDefinitionName Reader `
-ResourceName $gallery.Name `
-ResourceType Microsoft.Compute/galleries `
-ResourceGroupName $resourceGroup.ResourceGroupName
Vyčištění prostředků
Pokud už je nepotřebujete, můžete k odebrání skupiny prostředků a všech souvisejících prostředků použít rutinu Remove-AzResourceGroup :
# Delete the gallery
Remove-AzResourceGroup -Name myGalleryRG
# Delete the VM
Remove-AzResourceGroup -Name myResoureceGroup
Azure Image Builder
Azure také nabízí službu postavenou na Packeru a Azure VM Image Builderu. Jednoduše popište vlastní nastavení v šabloně a ta zajistí vytvoření image.
Další kroky
V tomto kurzu jste vytvořili specializovanou image virtuálního počítače. Naučili jste se:
- Vytvoření Azure Compute Gallery
- Vytvoření definice image
- Vytvoření verze image
- Vytvoření virtuálního počítače z image
- Sdílení galerie
Přejděte k dalšímu kurzu, kde se dozvíte o Virtual Machine Scale Sets.