Een virtuele-machineschaalset met Uniform Orchestration koppelen aan een capaciteitsreserveringsgroep

Van toepassing op: ✔️ Uniforme schaalset

Azure-schaalsets voor virtuele machines hebben twee modi:

  • Uniform Orchestration: In deze modus gebruiken virtuele-machineschaalsets een VM-profiel (virtuele machine) of een sjabloon om omhoog te schalen naar de gewenste capaciteit. Hoewel er enige mogelijkheid is om afzonderlijke VM-exemplaren te beheren of aan te passen, maakt Uniform Orchestration gebruik van identieke VM-exemplaren. Deze instellingen worden weergegeven via de API's van de virtuele machineschaalset en zijn niet compatibel met de API-opdrachten die standaard zijn voor IaaS-VM's (Infrastructure as a Service). Omdat de schaalset alle werkelijke VM-bewerkingen uitvoert, worden reserveringen rechtstreeks aan de virtuele-machineschaalset gekoppeld. Nadat de schaalset is gekoppeld aan de reservering, worden alle volgende VM-toewijzingen uitgevoerd op basis van de reservering.
  • Flexibele indeling: In deze modus krijgt u meer flexibiliteit om de afzonderlijke VM-exemplaren van de virtuele-machineschaalset te beheren. Ze kunnen de standaard AZURE IaaS VM-API's gebruiken in plaats van met behulp van de interface van de schaalset. Als u reserveringen wilt gebruiken met de Flexibele Orchestratiemodus, definieert u zowel de eigenschap virtuele machineschaalset als de eigenschap capaciteitsreservering op elke virtuele machine.

Zie voor meer informatie over deze modi orkestratiemodi voor virtuele-machineschaalsets.

Deze inhoud is van toepassing op de modus Uniform Orchestration. Zie Associëren van een virtuele-machineschaalset met Flexibele Orchestratiemodus aan een capaciteitsreserveringsgroep.

Beperkingen van schaalsets in Uniform Orchestration

  • Om virtuele-machineschaalsets in Uniform Orchestration compatibel te maken met capaciteitsreservering, moet de singlePlacementGroup eigenschap worden ingesteld op False.
  • De statische vaste spreidingsoptie voor uniforme schaalsets met meerdere zones wordt niet ondersteund met capaciteit reservering. Voor deze optie is het gebruik van vijf foutdomeinen vereist. De reserveringen bieden echter alleen ondersteuning voor maximaal drie foutdomeinen voor grootten voor algemeen gebruik. We raden u aan om de optie Maximaal spreiden te gebruiken waarmee VM's over zoveel mogelijk foutdomeinen binnen elke zone worden verdeeld. Configureer indien nodig een aangepaste foutdomeinconfiguratie van drie of minder.

Er zijn enkele andere beperkingen wanneer u capaciteitsreserveringen gebruikt. Zie voor de volledige lijst het overzicht van capaciteitsreserveringen.

Een nieuwe virtuele machineschaalset koppelen aan een capaciteitsreserveringsgroep

Belangrijk

Vanaf november 2023 worden virtuele machinesschaalsets die worden gemaakt met behulp van PowerShell en de Azure CLI standaard ingesteld op de Flexibele Orchestratiewijze als er geen orchestratiewijze is opgegeven. Raadpleeg Belangrijke wijziging voor VMSS PowerShell/CLI-klanten - Microsoft Community Hub voor meer informatie over deze wijziging en welke acties u moet ondernemen.

Als u een nieuwe uniforme schaalset voor virtuele machines wilt koppelen aan een capaciteitsreserveringsgroep, stelt u de volgende PUT-aanvraag samen voor de Microsoft.Compute-provider:

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}?api-version=2021-04-01

Voeg de capacityReservationGroup eigenschap toe aan de virtualMachineProfile eigenschap:

{ 
    "name": "<VMScaleSetName>", 
    "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}", 
    "type": "Microsoft.Compute/virtualMachineScaleSets", 
    "location": "eastus", 
    "sku": { 
        "name": "Standard_D2s_v3", 
        "tier": "Standard", 
        "capacity": 3 
}, 
"properties": { 
    "virtualMachineProfile": { 
        "capacityReservation": { 
            "capacityReservationGroup":{ 
                "id":"subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroup/{CapacityReservationGroupName}" 
            } 
         }, 
        "osProfile": { 
            … 
        }, 
        "storageProfile": { 
            … 
        }, 
        "networkProfile": { 
            …,
            "extensionProfile": { 
                … 
            } 
        } 
    } 

Een bestaande virtuele machineschaalset koppelen aan een capaciteitsreserveringsgroep

Bestaande zonegebonden virtuele-machineschaalsets kunnen eenvoudig worden bijgewerkt met de eigenschap van de Capaciteitsreserveringsgroep zonder dat deallocatie nodig is. Bestaande regionale virtuele machineschaalsets kunnen aan een vergelijkbaar proces worden onderworpen, maar moeten opnieuw toegewezen worden.

Regionale schaalset voor virtuele machines

Een bestaande regionale capaciteitsreserveringsgroep toevoegen aan een bestaande uniforme schaalset:

  • Stop de schaalset om de toewijzing van de VM-exemplaren ongedaan te maken.
  • Werk de schaalset bij om een overeenkomende capaciteitsreserveringsgroep te gebruiken.
  • Start de schalingsset.

Dit proces zorgt ervoor dat de plaatsing van de capaciteitsreserveringen en schaalsets in de regio compatibel zijn.

Belangrijke opmerkingen over upgradebeleid

  • Automatische upgrade: In deze modus worden de VM-exemplaren van de schaalset automatisch gekoppeld aan de capaciteitsreserveringsgroep zonder verdere actie van u. Wanneer de virtuele machines van de schaalset opnieuw worden toegewezen, wordt de gereserveerde capaciteit gebruikt.
  • Rolling upgrade: In deze modus worden VM-exemplaren van schaalsets gekoppeld aan de capaciteitsreserveringsgroep zonder verdere actie van u. Ze worden echter bijgewerkt in batches met een optionele pauzetijd ertussen. Wanneer de virtuele machines van de schaalset opnieuw worden toegewezen, worden de gereserveerde capaciteit gebruikt.
  • Handmatige upgrade: In deze modus zal er niets gebeuren met de VM-exemplaren van de schaalset wanneer de virtuele-machineschaalset aan een capaciteitsreserveringsgroep is gekoppeld. U moet elke VM in de schaalset bijwerken door deze te upgraden met het nieuwste schaalsetmodel.
  1. De schaalset voor virtuele machines vrijgeven.

    POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourcegroupname}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}/deallocate?api-version=2021-04-01
    
  2. Voeg de capacityReservationGroup eigenschap toe aan het schaalsetmodel. Bouw de volgende PUT aanvraag voor de Microsoft.Compute provider:

    PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourcegroupname}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}?api-version=2021-04-01
    

    Neem de capacityReservationGroup eigenschap op in de hoofdtekst van de aanvraag.

    "location": "eastus",
    "properties": {
        "virtualMachineProfile": {
             "capacityReservation": {
                      "capacityReservationGroup": {
                            "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}"
                      }
                }
        }
    }
    

Zonegebonden virtuele machineschaalset

Als u capaciteit in een bestaande capaciteitsreserveringsgroep hebt en u een bestaande zonegebonden uniforme schaalset wilt toevoegen, werkt u de schaalset bij naar de capaciteitsreserveringsgroep om een overeenkomende capaciteitsreservering te gebruiken.

Belangrijk

De functie voor het koppelen van een bestaande zonegebonden schaalset aan een reserveringsgroep zonder de toewijzing ongedaan te maken, is momenteel in preview. Zie de preview-gebruiksvoorwaarden voor juridische voorwaarden die van toepassing zijn op Azure-functies die in bèta, preview of anderszins nog niet beschikbaar zijn in algemene beschikbaarheid.

Belangrijke opmerkingen over upgradebeleid

  • Automatische upgrade: In deze modus worden de VM-exemplaren van de schaalset automatisch gekoppeld aan de capaciteitsreserveringsgroep zonder verdere actie van u. Als ze al actief zijn, gebruiken de VM-instances van de schaalset de gereserveerde capaciteit. Als de bestaande schaalset-VM's zich in de toestand "gedealloceerd" bevinden, beginnen ze de gereserveerde capaciteit te gebruiken wanneer ze opnieuw worden toegewezen.
  • Rolling upgrade: In deze modus worden schaalset-VM-exemplaren gekoppeld aan de capaciteitsreserveringsgroep zonder verdere actie van u. Ze worden echter bijgewerkt in batches met een optionele pauzetijd ertussen. Als ze al actief zijn, gebruiken de VM-instances van de schaalset de gereserveerde capaciteit. Als de bestaande schaalset-VM's zich in de toestand "gedealloceerd" bevinden, beginnen ze de gereserveerde capaciteit te gebruiken wanneer ze opnieuw worden toegewezen.
  • Handmatige upgrade: In deze modus gebeurt er niets met de VM-exemplaren in de schaalset wanneer de virtuele-machineschaalset is gekoppeld aan een capaciteitsreserveringsgroep. U moet elke schaalset-VM bijwerken door deze te upgraden met het nieuwste schaalsetmodel.

Voeg de capacityReservationGroup eigenschap toe aan het schaalsetmodel. Bouw de volgende PUT aanvraag voor Microsoft.Compute provider:

    PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourcegroupname}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}?api-version=2021-04-01

Neem in de hoofdtekst van het verzoek de eigenschap capacityReservationGroup op:

    "location": "eastus",
    "properties": {
        "virtualMachineProfile": {
             "capacityReservation": {
                      "capacityReservationGroup": {
                            "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}"
                      }
                }
        }
    }

Bestaande zonegebonden virtuele machineschaalsets beveiligen door reservering met nulgrootte

Zonegebonden geïmplementeerde virtuele-machinesschaalsets kunnen worden geconverteerd naar het gebruik van een capaciteitsreservering op aanvraag zonder herlocatie. Als u geen capaciteit in een bestaande capaciteitsreserveringsgroep hebt, kunt u beginnen met het maken van een nulpuntreservering die overeenkomt om uw workloads te beveiligen. Het basisproces omvat drie stappen:

  1. Maak een capaciteitsreserveringsgroep en vervolgens overeenkomende capaciteitsreserveringen in elke doelzone met de gereserveerde hoeveelheid ingesteld op nul. Hiervoor is geen extra quotum of capaciteit vereist. Zie Een capaciteitsreservering maken voor meer informatie over het maken van een reservering.

  2. Koppel bestaande actieve virtuele-machineschaalset aan de capaciteitsreservering. Stel de eigenschap Virtual Machine Scale Set (VMSS) capacityReservationGroup in op de gewenste capaciteitsreserveringsgroep en voer vervolgens een modelupdate uit op de VMSS (VMSS uniform) of werk elke lid-VM bij met de eigenschap capacityReservationGroup (VMSS Flex). Wanneer u klaar bent, wordt elke reservering voor doelcapaciteit overbezet zie Zonegebonden virtuele-machineschaalset

  3. Verhoog de gereserveerde hoeveelheid van elke capaciteitsreservering (CR) zodat deze overeenkomt met het aantal toegewezen virtuele machines (VM's). Omdat elke CR al overbezet is, is voor deze stap geen extra quotum of capaciteit vereist. Zie Capaciteitsreservering wijzigen voor meer informatie over het bijwerken van het gereserveerde aantal

Nadat de hoeveelheid is verhoogd, zou u moeten zien dat de CR in een volledig toegewezen stand verkeert, waarbij alle virtuele machines van de VMSS zijn toegewezen. Zie VM-toewijzing weergeven met de instantieweergave.

Zie Bestaande zonegebonden werkbelastingen beveiligen met behulp van een reservering met nulgrootte in de reserveringsgroep gedeelde capaciteit voor meer informatie over het gebruik van een reserveringsgroep voor gedeelde capaciteit.

Overwegingen voor regio- en beschikbaarheidszones

U kunt virtuele-machineschaalsets regionaal of in een of meer beschikbaarheidszones maken om ze te beschermen tegen storingen op datacenterniveau. Zie Virtuele-machineschaalsets die gebruikmaken van beschikbaarheidszones voor meer informatie over multizonale virtuele-machineschaalsets.

Belangrijk

De locatie (regio en beschikbaarheidszones) van de virtuele machineschaalset en de capaciteitsreserveringsgroep moeten overeenkomen om de koppeling te laten slagen. Voor een regionale schaalset moet de regio overeenkomen tussen de schaalset en de capaciteitsreserveringsgroep. Voor een zonale schaalset moeten de regio's en de zones overeenkomen met de schaalset en de capaciteitsreserveringsgroep.

Wanneer een schaalset wordt verdeeld over meerdere zones, probeert deze altijd gelijkmatig te implementeren in de opgenomen beschikbaarheidszones. Vanwege deze gelijkmatige implementatie moet een capaciteitsreserveringsgroep altijd dezelfde hoeveelheid gereserveerde VM's in elke zone hebben. Als illustratie van het belang van deze gelijke implementatie, bekijk het volgende voorbeeld.

In dit voorbeeld heeft elke zone een andere hoeveelheid gereserveerd. Stel dat de schaalset voor virtuele machines wordt uitgeschaald naar 75 exemplaren. Omdat een schaalset altijd probeert gelijkmatig te implementeren tussen zones, moet de VM-distributie er als volgt uitzien:

Gebied Gereserveerde hoeveelheid Aantal schaalset-VM's in elke zone. Ongebruikte hoeveelheid gereserveerd Overgealloceerd
1 40 vijfentwintig 15 0
2 20 vijfentwintig 0 5
3 15 vijfentwintig 0 10

In dit geval worden voor de schaalset extra kosten in rekening gebracht voor 15 ongebruikte exemplaren in zone 1. Het opschalen is ook afhankelijk van 5 VM's in zone 2 en 10 VM's in zone 3 die niet zijn beschermd door capaciteitsreservering. Als voor elke zone 25 capaciteitsexemplaren zijn gereserveerd, worden alle 75 VM's beveiligd door capaciteitsreservering en worden er voor de implementatie geen extra kosten in rekening gebracht voor ongebruikte exemplaren.

Omdat de reserveringen overgeboekt kunnen worden, kan de schaalset op een normale manier blijven schalen buiten de limieten van de reservering. Het enige verschil is dat de VM's die boven de gereserveerde hoeveelheid zijn toegewezen, niet worden gedekt door service level agreement voor capaciteitsreservering. Klik voor meer informatie op Overtoewijzing van capaciteitsreservering.

Volgende stap

Leer hoe u een schaalsetkoppeling uit een capaciteitsreservering kunt verwijderen