Oktatóanyag: Egyéni rendszerkép létrehozása és használata virtuálisgép-méretezési csoportokhoz az Azure PowerShell használatával

Méretezési csoport létrehozása során meg kell adnia egy rendszerképet a virtuálisgép-példányok üzembe helyezésekor. Egyéni virtuálisgép-rendszerkép használatával csökkentheti a feladatok számát a virtuálisgép-példányok üzembe helyezése után. Ez az egyéni virtuálisgép-rendszerkép tartalmaz minden szükséges alkalmazástelepítést és -konfigurációt. A méretezési csoportban létrehozott összes virtuálisgép-példány az egyéni virtuálisgép-rendszerképet használja, és készen állnak az alkalmazás forgalmának kiszolgálására. Ezen oktatóanyag segítségével megtanulhatja a következőket:

  • Azure Compute Gallery létrehozása
  • Képdefiníció létrehozása
  • Rendszerképverzió létrehozása
  • Méretezési csoport létrehozása képből
  • Képgyűjtemény megosztása

Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.

Az Azure Cloud Shell elindítása

Az Azure Cloud Shell egy olyan ingyenes interaktív kezelőfelület, amelyet a jelen cikkben található lépések futtatására használhat. A fiókjával való használat érdekében a gyakran használt Azure-eszközök már előre telepítve és konfigurálva vannak rajta.

A Cloud Shell megnyitásához válassza a Kipróbálás lehetőséget egy kódblokk jobb felső sarkában. A Cloud Shellt egy külön böngészőlapon is elindíthatja a https://shell.azure.com/powershell cím megnyitásával. A Copy (másolás) gombra kattintva másolja és illessze be a kódot a Cloud Shellbe, majd nyomja le az Enter billentyűt a futtatáshoz.

Forrás virtuális gép létrehozása és konfigurálása

Először hozzon létre egy erőforráscsoportot a New-AzResourceGrouptal, majd hozzon létre egy virtuális gépet a New-AzVM használatával. Ezt a virtuális gépet használja a rendszerkép forrásaként. A következő példában létrehozunk egy myVM nevű virtuális gépet a myResourceGroup nevű erőforráscsoportban:

New-AzResourceGroup -Name 'myResourceGroup' -Location 'EastUS'

New-AzVm `
   -ResourceGroupName 'myResourceGroup' `
   -Name 'myVM' `
   -Location 'East US' `
   -VirtualNetworkName 'myVnet' `
   -SubnetName 'mySubnet' `
   -SecurityGroupName 'myNetworkSecurityGroup' `
   -PublicIpAddressName 'myPublicIpAddress' `
   -OpenPorts 80,3389

A virtuálisgép-változó tárolása

Megtekintheti az erőforráscsoportban a Get-AzVM használatával elérhető virtuális gépek listáját. Miután megismerte a virtuális gép nevét és az erőforráscsoportot, újból lekérheti Get-AzVM a virtuálisgép-objektumot, és egy változóban tárolhatja, amelyet később használhat. Ez a példa lekéri a myVM nevű virtuális gépet a "myResourceGroup" erőforráscsoportból, és hozzárendeli a $vm változóhoz.

$sourceVM = Get-AzVM `
   -Name myVM `
   -ResourceGroupName myResourceGroup

A képgyűjtemény a képmegosztás engedélyezéséhez használt elsődleges erőforrás. A katalógus nevének megengedett karakterei a nagybetűk vagy kisbetűk, számjegyek, pontok és pontok. A katalógus neve nem tartalmazhat kötőjeleket. A katalógusneveknek egyedinek kell lenniük az előfizetésen belül.

Hozzon létre egy képgyűjteményt a New-AzGallery használatával. Az alábbi példa létrehoz egy myGallery nevű gyűjteményt a myGalleryRG erőforráscsoportban.

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

$gallery = New-AzGallery `
   -GalleryName 'myGallery' `
   -ResourceGroupName $resourceGroup.ResourceGroupName `
   -Location $resourceGroup.Location `
   -Description 'Azure Compute Gallery for my organization'	

Képdefiníció létrehozása

A képdefiníciók logikai csoportosítást hoznak létre a képekhez. Ezek a bennük létrehozott képverziókkal kapcsolatos információk kezelésére szolgálnak. A képdefiníciók neve lehet nagybetűből vagy kisbetűből, számjegyből, pontból, kötőjelből és pontból. A képdefiníciókhoz megadható értékekről további információt a Képdefiníciók című témakörben talál.

Hozza létre a képdefiníciót a New-AzGalleryImageDefinition használatával. Ebben a példában a katalógus képének neve myGalleryImage , és egy speciális rendszerképhez jön létre.

$galleryImage = New-AzGalleryImageDefinition `
   -GalleryName $gallery.Name `
   -ResourceGroupName $resourceGroup.ResourceGroupName `
   -Location $gallery.Location `
   -Name 'myImageDefinition' `
   -OsState specialized `
   -OsType Windows `
   -Publisher 'myPublisher' `
   -Offer 'myOffer' `
   -Sku 'mySKU'

Rendszerképverzió létrehozása

Hozzon létre egy képverziót egy virtuális gépről a New-AzGalleryImageVersion használatával.

A képverzió megengedett karakterei számok és időszakok. A számoknak 32 bites egész számtartományon belül kell lenniük. Formátum: MajorVersion.MinorVersion.Javítás.

Ebben a példában a rendszerkép verziója 1.0.0, és az USA keleti és déli középső adatközpontjaiba is replikálódik. A replikáció célrégióinak kiválasztásakor a forrásrégiót kell szerepeltetnie a replikáció célterületeként.

Ha a virtuális gépről szeretne lemezképverziót létrehozni, használja $vm.Id.ToString() a -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 '2023-12-01'

A rendszerkép replikálása eltarthat egy ideig az összes célrégióba.

Méretezési csoport létrehozása a képből

Most hozzon létre egy méretezési csoportot New-AzVmss-ekkel, amelyek a -ImageName paraméter használatával határozzák meg az előző lépésben létrehozott egyéni virtuálisgép-rendszerképet. A forgalom az egyes virtuális gépek közötti elosztása érdekében a parancs egy terheléselosztót is létrehoz. A terheléselosztó szabályai elosztják a 80-as TCP-porton érkező forgalmat, valamint lehetővé teszik a távoli asztali forgalmat a 3389-es, valamint a PowerShell távoli eljáráshívásokat az 5985-ös TCP-porton. Amikor a rendszer erre kéri, adja meg használni kívánt rendszergazdai hitelesítő adatait a méretezési csoportban lévő virtuálisgép-példányokhoz:

Fontos

2023 novemberétől a PowerShell és az Azure CLI használatával létrehozott virtuálisgép-méretezési csoportok alapértelmezés szerint rugalmas vezénylési módba kerülnek, ha nincs megadva vezénylési mód. A módosítással és a végrehajtandó műveletekkel kapcsolatos további információkért tekintse meg a VMSS PowerShell/CLI-ügyfelek kompatibilitástörő változását – Microsoft Community Hub

# Define variables for the scale set
$resourceGroupName = "myScaleSet"
$scaleSetName = "myScaleSet"
$location = "East US"

# Create a resource group
New-AzResourceGroup -ResourceGroupName $resourceGroupName -Location $location

# Create a configuration 
$vmssConfig = New-AzVmssConfig `
   -Location $location `
   -OrchestrationMode Flexible `
   -SkuCapacity 2 `
   -SkuName "Standard_D2s_v3"

# Reference the image version
Set-AzVmssStorageProfile $vmssConfig `
  -OsDiskCreateOption "FromImage" `
  -ImageReferenceId $galleryImage.Id

# Create the scale set 
New-AzVmss `
  -ResourceGroupName $resourceGroupName `
  -Name $scaleSetName `
  -VirtualMachineScaleSet $vmssConfig

A méretezési csoport erőforrásainak és virtuális gépeinek létrehozása és konfigurálása néhány percet vesz igénybe.

Javasoljuk, hogy a hozzáférést a képgyűjtemény szintjén ossza meg. Használjon egy e-mail-címet és a Get-AzADUser parancsmagot a felhasználó objektumazonosítójának lekéréséhez, majd a New-AzRoleAssignment használatával adjon hozzáférést a katalógushoz. Cserélje le a példában szereplő e-maileket alinne_montes@contoso.com a saját adataira.

# 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

Clean up resources

Ha már nincs rá szükség, a Remove-AzResourceGroup parancsmaggal eltávolíthatja az erőforráscsoportot és az összes kapcsolódó erőforrást:

# Delete the gallery 
Remove-AzResourceGroup -Name myGalleryRG

# Delete the scale set resource group
Remove-AzResourceGroup -Name myResoureceGroup

Következő lépések

Ebben az oktatóanyagban megtudhatta, hogyan hozhat létre és használhat egyéni virtuálisgép-rendszerképet a méretezési csoportjai esetében az Azure PowerShell segítségével:

  • Azure Compute Gallery létrehozása
  • Képdefiníció létrehozása
  • Rendszerképverzió létrehozása
  • Méretezési csoport létrehozása képből
  • Képgyűjtemény megosztása

A következő oktatóanyag azt mutatja be, hogyan helyezhet alkalmazásokat üzembe a méretezési csoportban.