Indelingsmodi voor virtuele-machineschaalsets in Azure

Virtual Machines schaalsets bieden een logische groepering van door het platform beheerde virtuele machines. Met schaalsets maakt u een configuratiemodel voor virtuele machines, voegt u automatisch extra exemplaren toe of verwijdert u deze op basis van cpu- of geheugenbelasting en voert u automatisch een upgrade uit naar de nieuwste versie van het besturingssysteem. Normaal gesproken kunt u met schaalsets virtuele machines maken met behulp van een VM-configuratiemodel dat is opgegeven tijdens het maken van de schaalset en kan de schaalset alleen virtuele machines beheren die impliciet worden gemaakt op basis van het configuratiemodel.

Met de indelingsmodi voor schaalsets hebt u meer controle over hoe exemplaren van virtuele machines worden beheerd door de schaalset.

Belangrijk

De indelingsmodus wordt gedefinieerd wanneer u de schaalset maakt en niet later kan worden gewijzigd of bijgewerkt.

Schaalsets met uniforme indeling

Geoptimaliseerd voor grootschalige staatloze workloads met identieke exemplaren.

Virtuele-machineschaalsets met uniform orchestration gebruiken een profiel of sjabloon voor virtuele machines om omhoog te schalen naar de gewenste capaciteit. Hoewel er enige mogelijkheid is om afzonderlijke exemplaren van virtuele machines te beheren of aan te passen, maakt Uniform gebruik van identieke VM-exemplaren. Afzonderlijke Uniform VM-exemplaren worden weergegeven via de VM-API-opdrachten van de virtuele-machineschaalset. Afzonderlijke exemplaren zijn niet compatibel met de standaard azure IaaS VM API-opdrachten, Azure-beheerfuncties zoals Azure Resource Manager resourcetags RBAC-machtigingen, Azure Backup of Azure Site Recovery. Uniforme indeling biedt hoge beschikbaarheidsgaranties voor foutdomeinen wanneer deze zijn geconfigureerd met minder dan 100 exemplaren. Uniforme indeling is algemeen beschikbaar en ondersteunt een volledig scala aan schaalsetbeheer en indeling, waaronder automatisch schalen op basis van metrische gegevens, instantiebeveiliging en automatische upgrades van het besturingssysteem.

Schaalsets met flexibele indeling

Hoge beschikbaarheid op schaal bereiken met identieke of meerdere typen virtuele machines.

Met Flexibele indeling biedt Azure een uniforme ervaring in het Azure VM-ecosysteem. Flexibele indeling biedt garanties voor hoge beschikbaarheid (maximaal 1000 VM's) door VM's te verspreiden over foutdomeinen in een regio of binnen een beschikbaarheidszone. Hierdoor kunt u uw toepassing uitschalen terwijl de isolatie van foutdomeinen behouden, wat essentieel is voor het uitvoeren van quorum-workloads of stateful workloads, waaronder:

  • Quorum-workloads
  • Open-Source databases
  • Stateful toepassingen
  • Services waarvoor hoge beschikbaarheid en grootschalige schaal nodig zijn
  • Services die typen virtuele machines willen combineren of spot- en on-demand VM's samen willen gebruiken
  • Bestaande toepassingen voor beschikbaarheidssets

Wat is er veranderd met de flexibele indelingsmodus?

Een van de belangrijkste voordelen van flexibele indeling is dat het indelingsfuncties biedt ten opzichte van standaard Azure IaaS-VM's, in plaats van onderliggende virtuele machines van schaalsets. Dit betekent dat u alle standaard-VM-API's kunt gebruiken bij het beheren van flexibele indelingsexemplaren, in plaats van de VM-API's van de virtuele-machineschaalset die u gebruikt met Uniform orchestration. Er zijn verschillende verschillen tussen het beheren van exemplaren in Flexibele indeling versus Uniform orchestration. Over het algemeen raden we u aan om waar mogelijk de standaard Azure IaaS VM-API's te gebruiken. In deze sectie laten we voorbeelden zien van best practices voor het beheren van VM-exemplaren met flexibele indeling.

Uitschalen met standaard virtuele Azure-machines

Virtuele-machineschaalsets in de modus Flexibele indeling beheren standaard Azure-VM's. U hebt volledige controle over de levenscyclus van virtuele machines, evenals netwerkinterfaces en schijven met behulp van de standaard Azure-API's en opdrachten. Virtuele machines die zijn gemaakt met de uniform orchestration-modus, worden weergegeven en beheerd via de VM API-opdrachten van de virtuele-machineschaalset. Afzonderlijke exemplaren zijn niet compatibel met de standaard azure IaaS VM API-opdrachten, Azure-beheerfuncties zoals Azure Resource Manager resourcetags RBAC-machtigingen, Azure Backup of Azure Site Recovery.

Foutdomein toewijzen tijdens het maken van de VM

U kunt het aantal foutdomeinen voor de flexibele indelingsschaalset kiezen. Wanneer u een VIRTUELE machine toevoegt aan een flexibele schaalset, worden instanties gelijkmatig verdeeld over foutdomeinen. Hoewel het wordt aanbevolen om Azure het foutdomein toe te wijzen, kunt u voor geavanceerde of probleemoplossingsscenario's dit standaardgedrag overschrijven en het foutdomein opgeven waar het exemplaar terechtkomt.

az vm create –vmss "myVMSS"  –-platform-fault-domain 1

Naamgeving van exemplaren

Wanneer u een virtuele machine maakt en deze toevoegt aan een flexibele schaalset, hebt u volledige controle over instantienamen binnen de Regels voor de Naamconventie van Azure. Wanneer VM's automatisch aan de schaalset worden toegevoegd via automatisch schalen, geeft u een voorvoegsel op en voegt Azure een uniek nummer toe aan het einde van de naam.

Query-exemplaren voor energiestatus

De voorkeursmethode is het gebruik van Azure Resource Graph om query's uit te voeren op alle VM's in een virtuele-machineschaalset. Azure Resource Graph biedt efficiënte querymogelijkheden voor Azure-resources op schaal in verschillende abonnementen.

resources
| where type =~ 'Microsoft.Compute/virtualMachines'
| where properties.virtualMachineScaleSet.id contains "demo"
| extend powerState = properties.extended.instanceView.powerState.code
| project name, resourceGroup, location, powerState
| order by resourceGroup desc, name desc

Het uitvoeren van query's op resources met Azure Resource Graph is een handige en efficiënte manier om query's uit te voeren op Azure-resources en API-aanroepen naar de resourceprovider te minimaliseren. Azure Resource Graph is een uiteindelijk consistente cache waarbij nieuwe of bijgewerkte resources maximaal 60 seconden worden weergegeven. U kunt:

  • Vm's weergeven in een resourcegroep of abonnement.
  • Gebruik de optie uitvouwen om de exemplaarweergave (foutdomeintoewijzing, energie- en inrichtingsstatussen) op te halen voor alle VM's in uw abonnement.
  • Gebruik de VM-API en opdrachten ophalen om model- en exemplaarweergave voor één exemplaar op te halen.

Vm-batchbewerkingen voor schaalsets

Gebruik de standaard-VM-opdrachten om VM-API's te starten, stoppen, opnieuw op te starten, opnieuw op te starten, opnieuw te starten, te verwijderen, in plaats van de VM-API's van de virtuele-machineschaalset. De VM-batchbewerkingen van de virtuele-machineschaalset (alles starten, stoppen met alles, installatiekopie van alle, enzovoort) worden niet gebruikt met de flexibele indelingsmodus.

De status van de toepassing bewaken

Met toepassingsstatuscontrole kan uw toepassing Azure een heartbeat bieden om te bepalen of uw toepassing in orde of beschadigd is. Azure kan VM-exemplaren die niet in orde zijn, automatisch vervangen. Voor flexibele schaalsetexemplaren moet u de toepassingsstatusextensie op de virtuele machine installeren en configureren. Voor exemplaren van uniform schaalsets kunt u de toepassingsstatusextensie gebruiken of de status meten met een Azure Load Balancer Aangepaste statustest.

Wijzigingen in DE VM-API van schaalsets weergeven

Virtual Machine Scale Sets kunt u de exemplaren weergeven die deel uitmaken van de schaalset. Met flexibele indeling biedt de lijst Virtual Machine Scale Sets VM-opdracht een lijst met VM-id's van schaalsets. Vervolgens kunt u de GET Virtual Machine Scale Sets VM-opdrachten aanroepen om meer informatie te krijgen over hoe de schaalset werkt met het VM-exemplaar. Gebruik de standaard GET VM-opdrachten of Azure Resource Graph om de volledige details van de VM op te halen.

Diagnostische gegevens over opstarten ophalen

Gebruik de standaard-VM-API's en -opdrachten om diagnostische gegevens en schermopnamen van exemplaren op te halen. De Virtual Machine Scale Sets diagnostische API's en opdrachten voor vm-opstart worden niet gebruikt met exemplaren van de flexibele indelingsmodus.

VM-extensies

Gebruik extensies die zijn gericht op standaard virtuele machines, in plaats van extensies die zijn gericht op exemplaren van de uniform orchestration-modus.

Een vergelijking van flexibele, uniforme en beschikbaarheidssets

De volgende tabel vergelijkt de flexibele indelingsmodus, de uniforme indelingsmodus en de beschikbaarheidssets op basis van hun functies.

Basisconfiguratie

Functie Ondersteund door flexibele indeling voor schaalsets Ondersteund door uniform orchestration voor schaalsets Ondersteund door beschikbaarheidssets
Type virtuele machine Standard Azure IaaS VM (Microsoft.compute/virtualmachines) Schaalsetspecifieke VM's (Microsoft.compute/virtualmachinescalesets/virtualmachines) Standard Azure IaaS VM (Microsoft.compute/virtualmachines)
Maximumaantal exemplaren (met FD-garanties) 1000 100 200
SKU's ondersteund D-serie, E-serie, F-serie, A-serie, B-serie, Intel, AMD; Speciale SKU's (G, H, L, M, N) worden niet ondersteund Alle SKU's Alle SKU's
Volledige controle over VM, NIC's, schijven Yes Beperkt beheer met VM-API voor virtuele-machineschaalsets Yes
Vereiste RBAC-machtigingen Schrijven van VMSS berekenen, SCHRIJVEN van reken-VM, netwerk Schrijven van VMSS berekenen N.v.t.
Galerie gedeelde installatiekopieën voor meerdere tenants Nee Ja Ja
Versneld netwerken Ja Ja Ja
Spot-exemplaren en -prijzen Ja, u kunt zowel spot- als reguliere prioriteitsexemplaren hebben Ja, exemplaren moeten alle spot of alle normale exemplaren zijn Nee, alleen instanties met normale prioriteit
Besturingssystemen combineren Ja, Linux en Windows kunnen zich in dezelfde flexibele schaalset bevinden Nee, exemplaren zijn hetzelfde besturingssysteem Ja, Linux en Windows kunnen zich in dezelfde beschikbaarheidsset bevinden
Schijftypen Alleen beheerde schijven, alle opslagtypen Beheerde en niet-beheerde schijven, alle opslagtypen Beheerde en niet-beheerde schijven, Ultradisk wordt niet ondersteund
Schijfserverversleuteling met door de klant beheerde sleutels Ja Ja Ja
Write Accelerator Nee Ja Ja
Nabijheidsplaatsingsgroepen Ja, lees documentatie over nabijheidsplaatsingsgroepen Ja, lees documentatie over nabijheidsplaatsingsgroepen Yes
Toegewezen Azure-hosts Nee Ja Ja
Beheerde identiteit Door de gebruiker toegewezen identiteit alleen1 Door het systeem toegewezen of door de gebruiker toegewezen N/B (kan beheerde identiteit opgeven voor afzonderlijke exemplaren)
Bestaande VM aan de groep toevoegen/verwijderen Nee Nee Nee
Service Fabric Nee Ja Nee
Azure Kubernetes Service (AKS) / AKE Nee Ja Nee
Userdata Ja Ja UserData kan worden opgegeven voor afzonderlijke VM's
Optie voor het verwijderen of behouden van VM-NIC en schijven Yes Nee (altijd verwijderen) Yes
Ultra Disks Ja Ja Nee

1 Voor Uniform-schaalsets heeft het GET VMSS antwoord een verwijzing naar de identiteit, clientID en principalID. Voor flexibele schaalsets krijgt het antwoord alleen een verwijzing naar de identiteit. U kunt een aanroep doen om de clientID en PrincipalID op te Identity halen.

Automatische schaalaanpassing en indeling van exemplaren

Functie Ondersteund door flexibele indeling voor schaalsets Ondersteund door Uniform orchestration voor schaalsets Ondersteund door beschikbaarheidssets
Vm's weergeven in set Ja Ja Ja, vm's weergeven in AvSet
Automatisch schalen (handmatig, op basis van metrische gegevens, op basis van planning) Ja Ja Nee
NIC's en schijven automatisch verwijderen bij het verwijderen van VM-exemplaren Ja Ja Nee
Upgradebeleid (virtuele-machineschaalset) Nee, het upgradebeleid moet null of [] zijn tijdens het maken Automatisch, rollend, handmatig N.v.t.
Automatische Updates van het besturingssysteem (virtuele-machineschaalset) Nee Ja N.v.t.
Bij patchen voor gastbeveiliging Ja Nee Ja
Meldingen beëindigen (virtuele-machineschaalset) Ja, lees de documentatie over beëindigingsmeldingen Ja, lees de documentatie over beëindigingsmeldingen N.v.t.
Toepassingsstatus bewaken Toepassingsstatusextensie Toepassingsstatusextensie of Azure Load Balancer-test Toepassingsstatusextensie
Exemplaar herstellen (virtuele-machineschaalset) Ja, lees de documentatie voor exemplaarherstel Ja, lees de documentatie voor exemplaarherstel N.v.t.
Exemplaarbeveiliging Nee, azure-resourcevergrendeling gebruiken Ja Nee
Beleid inschalen Nee Ja Nee
VMSS-exemplaarweergave ophalen Nee Ja N.v.t.
VM Batch-bewerkingen (alles starten, Alles stoppen, subset verwijderen, enzovoort) Gedeeltelijk, Batch verwijderen wordt ondersteund. Andere bewerkingen kunnen worden geactiveerd voor elk exemplaar met behulp van de VM-API) Ja Nee

Hoge beschikbaarheid

Functie Ondersteund door flexibele indeling voor schaalsets Ondersteund door Uniform orchestration voor schaalsets Ondersteund door beschikbaarheidssets
SLA voor de beschikbaarheid 99,95% voor instanties verspreid over foutdomeinen; 99,99% voor exemplaren verspreid over meerdere zones 99,95% voor FD>1 in één plaatsingsgroep; 99,99% voor exemplaren verspreid over meerdere zones 99.95%
Beschikbaarheidszones Exemplaren opgeven voor 1, 2 of 3 beschikbaarheidszones Exemplaren opgeven voor 1, 2 of 3 beschikbaarheidszones Niet ondersteund
VM toewijzen aan een specifieke beschikbaarheidszone Ja Nee Nee
Foutdomein: maximale verspreiding (Azure zal maximaal verspreide exemplaren) Ja Ja Nee
Foutdomein : vaste verspreiding 2-3 FD's (afhankelijk van het regionale maximum aantal FD's); 1 voor zonegebonden implementaties 2, 3, 5 FD's; 1, 5 voor zonegebonden implementaties 2-3 FD's (afhankelijk van het regionale maximum aantal FD's)
VM toewijzen aan een specifiek foutdomein Ja Nee Nee
Domeinen bijwerken Afgeschaft (platformonderhoud uitgevoerd door FD door FD) 5 updatedomeinen Maximaal 20 updatedomeinen
Onderhoud uitvoeren Onderhoud activeren voor elk exemplaar met vm-API Yes N.v.t.
Capaciteitsreservering Ja Ja Ja

Netwerken

Functie Ondersteund door flexibele indeling voor schaalsets Ondersteund door Uniform orchestration voor schaalsets Ondersteund door beschikbaarheidssets
Standaardconnectiviteit voor uitgaand verkeer Nee, moet expliciete uitgaande connectiviteit hebben Ja Ja
Azure Load Balancer Standard-SKU Ja Ja Ja
Application Gateway Ja Ja Ja
Infiniband-netwerken Nee Ja, alleen één plaatsingsgroep Yes
Basic SLB Nee Ja Ja
Doorsturen van netwerkpoort Ja (NAT-regels voor afzonderlijke exemplaren) Ja (NAT-pool) Ja (NAT-regels voor afzonderlijke exemplaren)

Back-ups maken en herstellen

Functie Ondersteund door flexibele indeling voor schaalsets Ondersteund door Uniform orchestration voor schaalsets Ondersteund door beschikbaarheidssets
Azure Backup Ja Nee Ja
Azure Site Recovery Ja (via PowerShell) Nee Ja
Azure-waarschuwingen Ja Ja Ja
VM Insights Kan worden geïnstalleerd in afzonderlijke VM's Ja Ja

Niet-ondersteunde parameters

De volgende parameters voor virtuele-machineschaalsets worden momenteel niet ondersteund met virtuele-machineschaalsets in de flexibele indelingsmodus:

  • Eén plaatsingsgroep - u moet kiezen singlePlacementGroup=False
  • Implementatie met speciale SKU's: G, H, L, M, N-serie VM-families
  • Ultraschijfconfiguratie: diskIOPSReadWrite, diskMBpsReadWrite
  • Overprovisioning van virtuele-machineschaalset
  • Automatische besturingssysteemupgrades op basis van installatiekopieën
  • Toepassingsstatus via SLB-statustest: toepassingsstatusextensie gebruiken op exemplaren
  • Upgradebeleid voor virtuele-machineschaalsets- moet null of leeg zijn
  • Implementatie op Azure Dedicated Host
  • Onbeheerde schijven
  • Schaalset voor virtuele machines schalen in beleid
  • Instantiebeveiliging van virtuele-machineschaalset
  • Basic Load Balancer
  • Port Forwarding via Standard Load Balancer NAT-pool: u kunt NAT-regels configureren voor specifieke exemplaren

Problemen met schaalsets oplossen met flexibele indeling

Zoek de juiste oplossing voor uw probleemoplossingsscenario.

InvalidParameter. Het opgegeven foutdomeinaantal 3 moet vallen in het bereik van 1 tot 2.

InvalidParameter. The specified fault domain count 3 must fall in the range 1 to 2.

Oorzaak: De platformFaultDomainCount parameter is ongeldig voor de geselecteerde regio of zone.

Oplossing: U moet een geldige platformFaultDomainCount waarde selecteren. Voor zonegebonden implementaties is de maximumwaarde platformFaultDomainCount 1. Voor regionale implementaties waar geen zone is opgegeven, varieert het maximum platformFaultDomainCount , afhankelijk van de regio. Zie De beschikbaarheid van VM's voor scripts beheren om het maximumaantal foutdomeinen per regio te bepalen.

OperationNotAllowed. Verwijderen van virtuele-machineschaalset is niet toegestaan omdat deze een of meer VM's bevat. Verwijder of ontkoppel de VM('s) voordat u de virtuele-machineschaalset verwijdert.

OperationNotAllowed. Deletion of Virtual Machine Scale Set is not allowed as it contains one or more VMs. Please delete or detach the VM(s) before deleting the Virtual Machine Scale Set.

Oorzaak: Er wordt geprobeerd een schaalset te verwijderen in de flexibele indelingsmodus die is gekoppeld aan een of meer virtuele machines.

Oplossing: Verwijder alle virtuele machines die zijn gekoppeld aan de schaalset in de flexibele indelingsmodus en vervolgens kunt u de schaalset verwijderen.

InvalidParameter. De waarde 'True' van de parameter 'singlePlacementGroup' is niet toegestaan. Toegestane waarden zijn: Onwaar.

InvalidParameter. The value 'True' of parameter 'singlePlacementGroup' is not allowed. Allowed values are: False.

Oorzaak: De singlePlacementGroup parameter is ingesteld op True.

Oplossing: De singlePlacementGroup naam moet zijn ingesteld op Onwaar.

OutboundConnectivityNotEnabledOnVM. Er is geen uitgaande connectiviteit geconfigureerd voor virtuele machine.

OutboundConnectivityNotEnabledOnVM. No outbound connectivity configured for virtual machine.

Oorzaak: Er wordt geprobeerd een virtuele-machineschaalset te maken in de flexibele indelingsmodus zonder uitgaande internetverbinding.

Oplossing: Veilige uitgaande toegang inschakelen voor uw virtuele-machineschaalset op de manier die het meest geschikt is voor uw toepassing. Uitgaande toegang kan worden ingeschakeld met een NAT-gateway op uw subnet, het toevoegen van exemplaren aan een Load Balancer back-endpool of het toevoegen van een expliciet openbaar IP-adres per exemplaar. Voor zeer veilige toepassingen kunt u aangepaste door de gebruiker gedefinieerde routes opgeven via uw firewall- of virtuele netwerktoepassingen. Zie Standaard uitgaande toegang voor meer informatie.

Aan de slag met de flexibele indelingsmodus

Registreer en ga aan de slag met de flexibele indelingsmodus voor uw virtuele-machineschaalsets.

Veelgestelde vragen

  • Hoeveel schaal ondersteunt Flexibele indeling?

    U kunt maximaal 1000 VM's toevoegen aan een schaalset in de flexibele indelingsmodus.

  • Hoe verhoudt beschikbaarheid met flexibele indeling zich tot beschikbaarheidssets of uniforme indeling?

    Beschikbaarheidskenmerk Flexibele indeling Uniforme indeling Beschikbaarheidssets
    Implementeren in beschikbaarheidszones Ja Ja Nee
    Beschikbaarheidsgaranties voor foutdomeinen binnen een regio Ja, maximaal 1000 exemplaren kunnen worden verdeeld over maximaal 3 foutdomeinen in de regio. Maximumaantal foutdomeinen verschilt per regio Ja, maximaal 100 exemplaren Ja, maximaal 200 exemplaren
    Plaatsingsgroepen De flexibele modus maakt altijd gebruik van meerdere plaatsingsgroepen (singlePlacementGroup = false) U kunt één plaatsingsgroep of meerdere plaatsingsgroepen kiezen N.v.t.
    Updatedomeinen Geen, onderhoud of hostupdates worden uitgevoerd foutdomein per foutdomein Maximaal 5 updatedomeinen Maximaal 20 updatedomeinen
  • Wat is het absolute maximumaantal exemplaren met gegarandeerde beschikbaarheid van foutdomeinen?

    Functie Ondersteund door flexibele indeling Ondersteund door uniforme indeling (algemene beschikbaarheid) Ondersteund door AvSets (algemene beschikbaarheid)
    Maximum aantal exemplaren (met FD-beschikbaarheidsgarantie) 1000 3000 200

Volgende stappen