Een virtuele-machineschaalset configureren

Voltooid

Wanneer u schaalt, voegt u exemplaren toe aan uw virtuele-machineschaalset. In het scenario van het transportbedrijf is schalen een goede manier om het veranderende aantal aanvragen in de loop van de tijd af te handelen. Schalen past het aantal virtuele machines aan waarop de webtoepassing wordt uitgevoerd als het aantal gebruikers verandert. Op deze manier blijft de responstijd hetzelfde, ongeacht de belasting op dat moment.

In deze les leert u hoe u een virtuele-machineschaalset kunt schalen. U kunt handmatig schalen door het aantal exemplaren van virtuele machines in de schaalset expliciet in te stellen, of u kunt automatische schaalaanpassing configureren door schaalregels te definiëren die de toewijzing en toewijzing van virtuele machines activeren. Met deze regels voor schaalaanpassing bepaalt u wanneer de schaal van het systeem moet worden aangepast door verschillende metrische prestatiegegevens bij te houden.

Virtual Machine Scale Sets handmatig schalen

U kunt een virtuele-machineschaalset handmatig schalen door het aantal exemplaren te verhogen of te verlagen. U kunt deze taak via programmacode of in Azure Portal uitvoeren.

De volgende code gebruikt de Azure CLI om het aantal exemplaren in een virtuele-machineschaalset te wijzigen:

az vmss scale \
    --name MyVMScaleSet \
    --resource-group MyResourceGroup \
    --new-capacity 6

Virtual Machine Scale Sets automatisch schalen

De schaal handmatig aanpassen is in sommige gevallen handig. Maar in veel situaties is automatische schaalaanpassing beter. Het aantal instanties in een schaalset wordt hiermee automatisch geregeld.

U kunt automatische schaalaanpassing baseren op de volgende criteria:

  • Schema: Gebruik deze methode als u weet dat u op een bepaalde datum of in een bepaalde periode een hogere workload hebt.
  • Metrische gegevens: Pas de schaling aan door de prestatiegegevens bij te houden die aan de schaalset zijn gekoppeld. Wanneer deze metrische gegevens een opgegeven drempelwaarde overschrijden, kan de schaalset automatisch nieuwe virtuele-machine-instanties starten. Wanneer uit de metrische gegevens blijkt dat de aanvullende resources niet meer nodig zijn, kan de schaalset de overtollige instanties stoppen.

Voorwaarden voor automatische schaalaanpassing, regels en limieten definiëren

Automatische schaalaanpassing is gebaseerd op een set schaalvoorwaarden, regels en limieten. Een schaalvoorwaarde is een combinatie van tijd en een set regels voor schaalaanpassing. Als het huidige tijdstip binnen de periode valt die in de schaalvoorwaarde is gedefinieerd, worden de schaalregels voor de voorwaarde geëvalueerd. De resultaten van deze evaluatie bepalen of instanties in de schaalset moeten worden toegevoegd of verwijderd. Met de schaalvoorwaarde worden ook de limieten van de schaalaanpassing voor het maximum- en het minimumaantal instanties gedefinieerd.

In het scenario van het transportbedrijf kunt u schaalregels toevoegen waarmee het CPU-gebruik in de schaalset wordt bewaakt. Als het CPU-gebruik de drempelwaarde van 75% overschrijdt, kan het aantal VM-instanties met behulp van de schaalregel worden verhoogd. Een tweede schaalregel kan ook het CPU-gebruik bewaken, maar het aantal exemplaren van virtuele machines verminderen wanneer het gebruik lager is dan 50 procent. Omdat het hier gaat om een wereldwijde toepassing, moeten deze regels altijd actief zijn en niet alleen op bepaalde uren.

Een virtuele-machineschaalset kan veel schaalvoorwaarden bevatten. Bij elke voorwaarde waaraan wordt voldaan, wordt actie ondernomen. Een schaalset kan ook een standaardschaalvoorwaarde hebben die wordt gebruikt als er geen andere schaalvoorwaarden met het betreffende tijdstip en de prestatiegegevens overeenkomen. De standaardschaalvoorwaarde is altijd actief. Het bevat geen schaalregels en fungeert in feite als een null-schaalvoorwaarde die niet in- of uitschaalt. U kunt echter de standaardschaalvoorwaarde wijzigen om een standaardaantal exemplaren in te stellen, of u kunt een paar schaalregels toevoegen die uit- en weer inschalen.

Een automatische schaalaanpassing gebruiken die op een schema is gebaseerd

Schalen op basis van een planning geeft een begin- en eindtijd aan en het aantal exemplaren dat aan de schaalset moet worden toegevoegd. In de volgende schermopname ziet u een voorbeeld in Azure Portal. De schaal van het aantal instanties wordt elke maandag en woensdag tussen 6:00 en 18:00 uur uitgeschaald naar 20. Als er buiten deze perioden geen andere schaalvoorwaarden gelden, wordt de standaardschaalvoorwaarde toegepast.

In dit geval wordt er met de standaardregel omlaag geschaald naar twee instanties. Deze waarde is het maximum bij deze standaardschaalvoorwaarde.

Schermopname met een voorbeeld van een schaalvoorwaarde die op een schema is gebaseerd.

Een automatische schaalaanpassing gebruiken die op metrische gegevens is gebaseerd

Een op metrische gegevens gebaseerde schaalregel geeft de resources aan die moeten worden bijgehouden, zoals het CPU-gebruik of de responstijd. Met deze regel voor schaalaanpassing worden instanties aan de schaalset toegevoegd of uit de schaalset verwijderd aan de hand van de waarden van deze metrische gegevens. U kunt limieten opgeven voor het aantal exemplaren om te voorkomen dat een schaalset overmatig in- of uitschaalt.

In het voorbeeldscenario wilt u het aantal instanties met één verhogen wanneer het gemiddelde CPU-gebruik hoger is dan 75%. Daarnaast wilt u het uitschalen beperken tot 50 instanties. Met deze limiet kunt u kostbaar overmatig schalen ten gevolge van een aanval voorkomen. Ook wilt u inschalen wanneer het gemiddelde CPU-gebruik lager is dan 50%.

Deze metrische gegevens worden vaak gebruikt voor het bewaken van een virtuele-machineschaalset:

  • CPU-percentage: Met dit metrische gegeven wordt het CPU-gebruik voor alle instanties aangegeven. Een hoge waarde geeft aan dat de CPU een knelpunt wordt voor de instanties, wat het verwerken van clientaanvragen zou kunnen vertragen.
  • Inkomende stromen en uitgaande stromen: Deze metrische gegevens laten zien hoe snel netwerkverkeer naar en vanuit virtuele machines in de schaalset verloopt.
  • Leesbewerkingen per seconde voor schijven en schrijfbewerkingen per seconde voor schijven: Deze metrische gegevens geven het volume aan van de schijf-I/O in de schaalset.
  • Wachtrijlengte voor gegevensschijven: Dit metrische gegeven geeft aan hoeveel I/O-aanvragen voor uitsluitend de gegevensschijven op de virtuele machines in de wacht staan om te worden verwerkt.

Een schaalregel voegt de waarden samen die zijn opgehaald voor een metrisch gegeven voor alle instanties. De waarden worden samengevoegd voor een bepaalde periode die ook wel het tijdsinterval wordt genoemd. Elk metrisch gegeven heeft een intrinsiek tijdsinterval, maar meestal is deze periode één minuut. De geaggregeerde waarde wordt ook wel de tijdaggregatie genoemd. De tijdverzamelingsopties zijn gemiddeld, minimum, maximum, totaal, laatst en aantal.

Een interval van één minuut is te kort om te bepalen of eventuele wijzigingen in het metrische gegeven lang genoeg duren om een automatische schaalaanpassing te rechtvaardigen. Een schaalregel leidt tot een tweede stap, waarbij de waarde van de tijdverzameling wordt samengevoegd gedurende een langere, door de gebruiker opgegeven periode. Deze periode wordt de duurgenoemd. De minimale duur is vijf minuten. Als de duur bijvoorbeeld is ingesteld op 10 minuten, voegt de schaalregel de tien waarden samen die zijn berekend voor het tijdsinterval.

De berekening van de samenvoeging van de duur kan verschillen van de berekening van de samenvoeging van het tijdsinterval. Stel bijvoorbeeld dat de tijdverzameling gemiddeld is en dat het metrische gegeven dat wordt verzameld CPU-percentage is in een tijdsinterval van één minuut. Voor elke minuut wordt het gemiddelde CPU-gebruikspercentage voor alle exemplaren gedurende die minuut berekend. Als de statistische waarde voor het tijdsinterval is ingesteld op maximum en de duur van de regel is ingesteld op 10 minuten, bepaalt het maximum van de 10 gemiddelde waarden voor het percentage in CPU-gebruik of de drempelwaarde van de regel is overschreden.

Wanneer volgens een regel voor schaalaanpassing wordt gedetecteerd dat een metrische waarde een drempelwaarde heeft overschreden, kan een actie voor schaalaanpassing worden uitgevoerd. Een schaalactie kan uitschalen of inschalen zijn. Bij uitschalen wordt het aantal instanties vergroot. Bij inschalen wordt het aantal instanties verkleind.

Bij een schaalactie wordt gebruikgemaakt van een operator, zoals minder dan, groter dan of gelijk aan om te bepalen hoe op de drempelwaarde moet worden gereageerd. Uitschaalacties maken gewoonlijk gebruik van de operator groter dan om de metrische waarde te vergelijken met de drempelwaarde. Bij het inschalen wordt de metrische waarde meestal vergeleken met de drempelwaarde met behulp van de operator minder dan. Met een schaalactie wordt ook het aantal instanties ingesteld op een bepaald niveau, in plaats van het beschikbare aantal te verhogen of te verlagen.

Een actie voor schaalaanpassing heeft een afkoelperiode die is opgegeven in minuten. Tijdens deze periode wordt de schaalregel niet opnieuw geactiveerd. Door deze afkoelperiode kan het systeem worden gestabiliseerd tussen de schaalgebeurtenissen. Het duurt even voordat instanties zijn opgestart of afgesloten, zodat er een aantal minuten mogelijk geen noemenswaardige wijzigingen zijn waar te nemen in de verzamelde metrische gegevens. De minimale afkoelperiode is vijf minuten.

Ten slotte moet u een inschaling plannen wanneer een workload afneemt. U kunt overwegen om in dezelfde voorwaarde voor schaalaanpassing regels voor schaalaanpassing in paren te definiëren. Met één regel voor schaalaanpassing geeft u aan hoe u het systeem uitschaalt wanneer een metrische waarde een hoogste drempelwaarde overschrijdt. Met de andere regel moet u definiëren hoe het systeem wordt ingeschaald wanneer dezelfde metrische gegevens onder een laagste drempelwaarde komt. Zorg ervoor dat beide drempelwaarden niet hetzelfde zijn. Anders kunt u een reeks oscillerende gebeurtenissen activeren die worden uitgeschaald en weer worden ingeschaald.

In de volgende afbeelding ziet u een schaalregel die is gedefinieerd in Azure Portal.

Schermopname van een op metrische gegevens gebaseerde regel voor schaalaanpassing in Azure Portal.