Megosztás a következőn keresztül:


Oktatóanyag: Virtuálisgép-méretezési csoport módosítása a PowerShell használatával

Előfordulhat, hogy az alkalmazások teljes életciklusa során módosítania vagy frissítenie kell a virtuálisgép-méretezési csoportot. Ezek a frissítések magukban foglalhatják a méretezési csoport konfigurációjának frissítését vagy az alkalmazás konfigurációjának módosítását. Ez a cikk azt ismerteti, hogyan módosíthatja a meglévő méretezési csoportokat a PowerShell használatával.

A méretezési csoport modelljének frissítése

A méretezési csoportok olyan "méretezési csoportmodellel" rendelkeznek, amely a méretezési csoport kívánt állapotát rögzíti egészként. A méretezési csoport modelljének lekérdezéséhez használhatja a Get-AzVmss parancsot.

Get-AzVmss -ResourceGroupName myResourceGroup -Name myScaleSet

A kimenet pontos megjelenítése a parancshoz megadott beállításoktól függ. Az alábbi példa a PowerShell sűrített mintakimenetét mutatja be:

Sku                                         : 
  Name                                      : Standard_DS1_v2
  Tier                                      : Standard
  Capacity                                  : 2
ProvisioningState                           : Succeeded
SinglePlacementGroup                        : False
Id                                          : /subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myScaleSet
Name                                        : myScaleSet
Type                                        : Microsoft.Compute/virtualMachineScaleSets
Location                                    : eastus
VirtualMachineProfile                       : 
    ComputerNamePrefix                      : myScaleSe
      ProvisionVMAgent                      : True
      EnableAutomaticUpdates                : True
        PatchMode                           : AutomaticByOS
        AssessmentMode                      : ImageDefault
      EnableVMAgentPlatformUpdates          : False
    AllowExtensionOperations                : True
  StorageProfile                            : 
      Publisher                             : MicrosoftWindowsServer
      Offer                                 : WindowsServer
      Sku                                   : 2016-Datacenter
      Version                               : latest
    OsDisk                                  : 
      Caching                               : None
      CreateOption                          : FromImage
      DiskSizeGB                            : 127
      OsType                                : Windows
        StorageAccountType                  : Premium_LRS
      DeleteOption                          : Delete
  NetworkProfile                            : 
    NetworkInterfaceConfigurations[0]       : 
      Name                                  : myScaleSet
      Primary                               : True
      DisableTcpStateTracking               : False
        Name                                : myScaleSet
        Subnet                              : 
          Id                                : /subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myScaleSet/subnets/myScaleSet
        PrivateIPAddressVersion             : IPv4
        LoadBalancerBackendAddressPools[0]  : 
/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myScaleSet/backendAddressPools/myScaleSet
      EnableIPForwarding                    : False
      DeleteOption                          : Delete
    NetworkApiVersion                       : 2020-11-01
OrchestrationMode                           : Flexible
TimeCreated                                 : 12/2/2022 5:41:21 PM

Az Update-AzVmss használatával is frissítheti a méretezési csoport különböző tulajdonságait. Például frissítse a licenctípust.

$myVmss = Get-AzVmss -ResourceGroupName myResourceGroup -Name myScaleSet
Update-AzVmss -ResourceGroupName myResourceGroup -VirtualMachineScaleSet $myVMss -VMScaleSetName myScaleSet -LicenseType Windows_Server

Egyes virtuálisgép-példányok frissítése méretezési csoportban

A méretezési csoport modellnézetéhez hasonlóan a méretezési csoport minden virtuálisgép-példánya saját modellnézettel rendelkezik. Ha egy méretezési csoportban egy adott virtuálisgép-példány modellnézetét szeretné lekérdezni, használhatja a Get-AzVM-et.

Get-AzVM -ResourceGroupName myResourceGroup -name MyScaleSet_Instance1
ResourceGroupName      : myResourceGroup
Id                     : /subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myScaleSet_Instance1
Name                   : myScaleSet_Instance1
Type                   : Microsoft.Compute/virtualMachines
Location               : eastus
Extensions             : {MicrosoftMonitoringAgent}
HardwareProfile        : {VmSize}
NetworkProfile         : {NetworkInterfaces}
OSProfile              : {ComputerName, AdminUsername, WindowsConfiguration, Secrets, AllowExtensionOperations, RequireGuestProvisionSignal}
ProvisioningState      : Succeeded
StorageProfile         : {ImageReference, OsDisk, DataDisks}
VirtualMachineScaleSet : {Id}
TimeCreated            : 12/2/2022 5:41:23 PM

A jelölőt is hozzáadhatja a -Status példánynézet beszerzéséhez, amely további részleteket tartalmaz a virtuális gépről.

Get-AzVM -ResourceGroupName myResourceGroup -name MyScaleSet_Instance1 -Status                                    
ResourceGroupName       : myResourceGroup
Name                    : MyScaleSet_Instance1
OsName                  : Windows Server 2016 Datacenter
OsVersion               : 10.0.14393.5501
HyperVGeneration        : V1
Disks[0]                : 
  Name                  : myScaleSet_Instance1_disk1_cab60acccff7414b81d60572eeecb9e3
  Statuses[0]           : 
    Code                : ProvisioningState/succeeded
    Level               : Info
    DisplayStatus       : Provisioning succeeded
    Time                : 12/2/2022 5:41:25 PM
Disks[1]                : 
  Name                  : disk1
  Statuses[0]           : 
    Code                : ProvisioningState/succeeded
    Level               : Info
    DisplayStatus       : Provisioning succeeded
    Time                : 12/2/2022 6:33:36 PM
Extensions[0]           : 
  Name                  : MicrosoftMonitoringAgent
  Type                  : Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent
  TypeHandlerVersion    : 1.0.18067.0
  Statuses[0]           : 
    Code                : ProvisioningState/succeeded
    Level               : Info
    DisplayStatus       : Provisioning succeeded
    Message             : Latest configuration has been applied to the Microsoft Monitoring Agent.
VMAgent                 : 
  VmAgentVersion        : 2.7.41491.1071
  ExtensionHandlers[0]  : 
    Type                : Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent
    TypeHandlerVersion  : 1.0.18067.0
    Status              : 
      Code              : ProvisioningState/succeeded
      Level             : Info
      DisplayStatus     : Ready
      Message           : This virtual machine has successfully connected to Azure Log Analytics.
  Statuses[0]           : 
    Code                : ProvisioningState/succeeded
    Level               : Info
    DisplayStatus       : Ready
    Message             : GuestAgent is running and processing the extensions.
    Time                : 12/2/2022 6:34:55 PM
Statuses[0]             : 
  Code                  : ProvisioningState/succeeded
  Level                 : Info
  DisplayStatus         : Provisioning succeeded
  Time                  : 12/2/2022 6:33:42 PM
Statuses[1]             : 
  Code                  : PowerState/running
  Level                 : Info
  DisplayStatus         : VM running

Ezek a tulajdonságok a méretezési csoportban lévő virtuálisgép-példány konfigurációját írják le, nem pedig a méretezési csoport egészének konfigurációját.

Az egyes virtuálisgép-példányok frissítését ugyanúgy végezheti el egy méretezési csoportban, mint egy önálló virtuális gép. Például egy új adatlemez csatolása az 1. példányhoz:

$VirtualMachine = Get-AzVM -ResourceGroupName "myResourceGroup" -Name "myScaleSet_Instance1".
Add-AzVMDataDisk -VM $VirtualMachine -Name "disk1" -LUN 0 -Caching ReadOnly -DiskSizeinGB 128 -CreateOption Empty
Update-AzVM -ResourceGroupName "myResourceGroup" -VM $VirtualMachine

Példány hozzáadása a méretezési csoporthoz

Előfordulhat, hogy új virtuális gépet szeretne hozzáadni a méretezési csoporthoz, de más konfigurációs beállításokat szeretne, mint a méretezési csoport modelljében. A virtuális gépek a létrehozás során a Get-AzVmss paranccsal és annak a méretezési csoportnak a nevének megadásával adhatók hozzá a méretezési csoporthoz, amelyhez hozzá szeretné adni a példányt.

New-AzVM -Name myNewInstance -ResourceGroupName myResourceGroup -image Ubuntu2204 -VmssId /subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myScaleSet
ResourceGroupName        : myResourceGroup                                                                              
Id                       : /subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myNewInstance
Name                     : myNewInstance                                                                                
Type                     : Microsoft.Compute/virtualMachines                                                            
Location                 : eastus                                                                                       
Tags                     : {}                                                                                           
HardwareProfile          : {VmSize}                                                                                     
NetworkProfile           : {NetworkInterfaces}                                                                          
OSProfile                : {ComputerName, AdminUsername, LinuxConfiguration, Secrets, AllowExtensionOperations, RequireGuestProvisionSignal}
ProvisioningState        : Succeeded                                                                                    
StorageProfile           : {ImageReference, OsDisk, DataDisks}                                                          
FullyQualifiedDomainName : mynewinstance-21bc01.eastus.cloudapp.azure.com                                               
VirtualMachineScaleSet   : {Id}                                                                                         
TimeCreated              : 12/2/2022 6:40:20 PM   

A Get-AzVM ismételt futtatásával láthatjuk, hogy az új példány létrejött, és hozzá lett adva a meglévő méretezési csoporthoz.

Get-AzVm -ResourceGroupName myResourceGroup 
ResourceGroupName   Name                   Location   VmSize            OsType     NIC                  ProvisioningState 
-----------------   ----                   --------   ------            ------     ---                  ----------------- 
myResourceGroup     myNewInstance          eastus     Standard_D2s_v3   Linux      myNewInstance         Succeeded     
myResourceGroup     myScaleSet_Instance1   eastus     Standard_DS1_v2   Windows    myScaleSet-a9f1d54c   Succeeded     
myResourceGroup     myScaleSet_Instance2   eastus     Standard_DS1_v2   Windows    myScaleSet-4dc708e5   Succeeded   

Virtuális gépek naprakészen helyezése a legújabb méretezési csoportmodellel

Feljegyzés

A frissítési módok jelenleg nem támogatottak a rugalmas vezénylési módot használó virtuálisgép-méretezési csoportokban.

A méretezési csoportok "frissítési szabályzattal" rendelkeznek, amely meghatározza, hogy a virtuális gépek hogyan legyenek naprakészek a legújabb méretezési csoportmodellel. A frissítési szabályzat három módja:

  • Automatikus – Ebben a módban a méretezési csoport nem garantálja a virtuális gépek leállásának sorrendjét. A méretezési csoport egyszerre minden virtuális gépet leállíthat.
  • Működés – Ebben a módban a méretezési csoport kötegekben hajtja végre a frissítést, és a kötegek között nem kötelező szüneteltetni az időt.
  • Manuális – Ebben a módban a méretezési csoport modelljének frissítésekor semmi sem történik a meglévő virtuális gépekkel, amíg a manuális frissítés nem aktiválódik.

Ha a méretezési csoport manuális frissítésre van beállítva, manuálisan frissíthet az Update-AzVmss használatával.

$myVmss = Get-AzVmss -ResourceGroupName myResourceGroup -Name myScaleSet
Update-AzVmss -ResourceGroupName myResourceGroup -VirtualMachineScaleSet $myVMss -VMScaleSetName myScaleSet

Feljegyzés

A Service Fabric-fürtök csak automatikus módot használhatnak, a frissítést azonban másképp kezelik. További információ: Service Fabric-alkalmazásfrissítések.

Méretezési csoport újraimázása

A virtuálisgép-méretezési csoportok egyedi nevet fognak létrehozni a méretezési csoportban lévő összes virtuális géphez. Az elnevezési konvenció vezénylési mód szerint különbözik:

  • Rugalmas vezénylési mód: {scale-set-name}_{8-char-guid}
  • Egységes vezénylési mód: {scale-set-name}_{instance-id}

Azokban az esetekben, amikor újra kell létrehoznia egy adott példányt, használja a Set-AzVmss parancsot , és adja meg a példány nevét.

Set-AzVmssVM -ResourceGroupName myResourceGroup -VMScaleSetName myScaleSet -InstanceId myScaleSet_Instance1 -Reimage

A méretezési csoport összes példányának újraimázásához egyszerűen adja meg a méretezési csoport nevét, és hagyja ki a példányazonosítókat.

Set-AzVmssVM -Reimage -ResourceGroupName myResourceGroup -VMScaleSetName myScaleSet

A méretezési csoport operációsrendszer-lemezképének frissítése

Előfordulhat, hogy olyan méretezési csoport van, amely az Ubuntu LTS 18.04 régi verzióját futtatja. Frissíteni szeretne az Ubuntu LTS 16.04 újabb verziójára, például a 18.04.202210180-as verzióra. A képhivatkozás verziótulajdonsága nem része a listáknak, így közvetlenül módosíthatja ezeket a tulajdonságokat az Update-AzVmss használatával.

$myVmss = Get-AzVmss -ResourceGroupName myResourceGroup -Name myScaleSet      
  
Update-AzVmss -ResourceGroupName myResourceGroup -VirtualMachineScaleSet $myVMss -VMScaleSetName myScaleSet -ImageReferenceVersion virtualMachineProfile.storageProfile.imageReference.version=18.04.202210180

Másik lehetőségként módosíthatja a méretezési csoport által használt képet. Előfordulhat például, hogy frissíteni vagy módosítani szeretné a méretezési csoport által használt egyéni rendszerképet. A méretezési csoport által használt lemezképet a rendszerkép referencia-azonosító tulajdonságának frissítésével módosíthatja. A képhivatkozás azonosító tulajdonsága nem része a listanak, így közvetlenül módosíthatja ezt a tulajdonságot az Update-AzVmss használatával.

$myVmss = Get-AzVmss -ResourceGroupName myResourceGroup -Name myScaleSet     
   
Update-AzVmss -ResourceGroupName myResourceGroup -VirtualMachineScaleSet $myVMss -VMScaleSetName myScaleSet -ImageReferenceVersion virtualMachineProfile.storageProfile.imageReference.id=/subscriptions/{subscriptionID}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myNewImage

Ha Azure-platformrendszerképeket használ, az imageReference módosításával frissítheti a rendszerképet (további információkért tekintse meg a REST API dokumentációját).

Feljegyzés

A platformrendszerképek esetében gyakori, hogy a rendszerkép referenciaverziójának "legújabb" elemét adja meg. A virtuális gépek létrehozása, vertikális felskálázása és újraimázásakor a rendszer a legújabb elérhető verzióval hozza létre a virtuális gépeket. Ez azonban nem jelenti azt, hogy az operációsrendszer-rendszerkép automatikusan frissül az új rendszerképverziók megjelenésekor. Egy külön funkció automatikus operációsrendszer-frissítéseket biztosít. További információkért tekintse meg az automatikus operációsrendszer-frissítések dokumentációját.

Egyéni rendszerképek használata esetén az imageReference azonosítójának frissítésével frissítheti a képet (további információ: REST API-dokumentáció).

Következő lépések

Ebben az oktatóanyagban megtanulta, hogyan módosíthatja a méretezési csoport és az egyes példányok különböző aspektusait a PowerShell használatával.

  • A méretezési csoport modelljének frissítése
  • Egyéni virtuálisgép-példány frissítése méretezési csoportban
  • Példány hozzáadása a méretezési csoporthoz
  • Virtuális gépek naprakészen helyezése a legújabb méretezési csoportmodellel
  • Méretezési csoport újraimázása
  • A méretezési csoport operációsrendszer-lemezképének frissítése