Kurz: Vytvoření imagí virtuálních počítačů s Windows pomocí Azure PowerShellu

Platí pro: ✔️ Flexibilní škálovací sady virtuálních ✔️ počítačů s Windows

Image je možné použít k nasazení bootstrap a zajistit konzistenci 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 do Galerie výpočetních prostředků Azure (dříve označované jako Sdílená galerie imagí). Získáte informace pro:

  • Vytvoření galerie výpočetních prostředků Azure
  • Vytvoření definice obrázku
  • 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 se můžete podívat na rychlý start PowerShellu k vytvoření virtuálního počítače, který se použije pro účely tohoto kurzu. Při práci v tomto kurzu nahraďte názvy prostředků tam, kde je to potřeba.

Přehled

Galerie výpočetních prostředků Azure zjednodušuje sdílení vlastních imagí ve vaší 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.

Galerie výpočetních prostředků Azure umožňuje sdílet vlastní image virtuálních počítačů s ostatními. Vyberte obrázky, které chcete sdílet, které oblasti chcete zpřístupnit a s kým je chcete sdílet.

Funkce Galerie výpočetních prostředků Azure má více typů prostředků:

Resource 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 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 ří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 je 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žíváte k vytvoření virtuálního počítače při použití galerie. Podle potřeby můžete mít pro vaše prostředí více verzí image. Podobně jako spravovaná image se při vytváření virtuálního počítače používá verze image k vytvoření nového disku pro virtuální počítač. Verze imagí je možné používat 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

Pomocí rutiny Get-AzVM můžete zobrazit seznam virtuálních počítačů, které jsou dostupné ve skupině prostředků. 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é, abyste ho mohli použít později. Tento příklad získá virtuální počítač s názvem 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 zdrojů

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 vytvoří skupina prostředků myGalleryRG v oblasti EastUS :

$resourceGroup = New-AzResourceGroup `
   -Name 'myGalleryRG' `
   -Location 'EastUS'

Galerie je primární prostředek používaný k povolení sdílení obrázků. 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í New-AzGallery. Následující příklad vytvoří galerii s názvem 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 obrázku

Definice obrázků vytvářejí logické seskupení obrázků. Slouží ke správě informací o verzích imagí vytvořených v nich. Názvy definic obrázků mohou být tvořeny 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, naleznete v tématu Definice obrázku.

Vytvořte definici image pomocí New-AzGalleryImageDefinition. V tomto příkladu se image galerie jmenuje 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ření verze image z virtuálního počítače pomocí 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: MajorVersion.MinorVersion.Oprava.

V tomto příkladu je verze image 1.0.0 a replikuje se do datacenter USA – východ i USA – středojižní. Při výběru cílových oblastí pro replikaci musíte zahrnout zdrojovou oblast jako cíl pro replikaci.

Pokud chcete vytvořit verzi image z virtuálního počítače, použijte $vm.Id.ToString() ji 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 máte specializovanou image, můžete vytvořit jeden nebo více nových virtuálních počítačů. Pomocí rutiny New-AzVM . Pokud chcete použít image, použijte Set-AzVMSourceImage a nastavte -Id ID definice obrázku ($galleryImage.Id v tomto případě), abyste vždy používali nejnovější verzi image.

V tomto příkladu nahraďte názvy prostředků podle potřeby.

# 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

Doporučujeme sdílet přístup na úrovni galerie. Pomocí e-mailové adresy a rutiny Get-AzADUser získejte ID objektu pro uživatele a pak pomocí rutiny New-AzRoleAssignment udělte přístup k galerii. Příklad e-mailu v alinne_montes@contoso.com tomto příkladu nahraďte 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ž ji 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, Azure VM Image Builderu. Jednoduše popište vlastní nastavení v šabloně a zpracuje 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í galerie výpočetních prostředků Azure
  • Vytvoření definice obrázku
  • Vytvoření verze image
  • Vytvoření virtuálního počítače z image
  • Sdílení galerie

V dalším kurzu se dozvíte o škálovacích sadách virtuálních počítačů.