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