Ontwerpoverwegingen voor schaalsets
Van toepassing op: ✔️ Linux-VM's ✔️ Windows VM's ✔️ Uniforme schaalsets
In dit artikel worden ontwerpoverwegingen voor Virtual Machine Scale Sets. Raadpleeg overzicht voor Virtual Machine Scale Sets informatie over wat Virtual Machine Scale Sets zijn.
Wanneer gebruikt u schaalsets in plaats van virtuele machines?
Over het algemeen zijn schaalsets handig voor het implementeren van een infrastructuur met hoge beschikbare gegevens, waarbij een set computers een vergelijkbare configuratie heeft. Sommige functies zijn echter alleen beschikbaar in schaalsets, terwijl andere functies alleen beschikbaar zijn in VM's. Als u een weloverwogen beslissing wilt nemen over het gebruik van elke technologie, moet u eerst enkele veelgebruikte functies bekijken die beschikbaar zijn in schaalsets, maar niet in VM's:
Schaalsetspecifieke functies
- Zodra u de schaalsetconfiguratie hebt opgegeven, kunt u de capaciteits eigenschap bijwerken om meer VM's parallel te implementeren. Dit proces is beter dan het schrijven van een script om de implementatie van veel afzonderlijke VM's parallel te orkestreren.
- U kunt Automatisch schalen van Azure gebruiken om automatisch een schaalset te schalen, maar niet afzonderlijke VM's.
- U kunt de VM's van de schaalset opnieuw maken, maar niet afzonderlijke VM's.
- U kunt VM's in schaalsets te veel inschalen voor een grotere betrouwbaarheid en snellere implementatietijden. U kunt afzonderlijke VM's niet overprovisionen, tenzij u aangepaste code schrijft om deze actie uit te voeren.
- U kunt een upgradebeleid opgeven om het eenvoudig te maken upgrades uit te rollen tussen VM's in uw schaalset. Met afzonderlijke VM's moet u updates zelf ins orchestrateren.
VM-specifieke functies
Sommige functies zijn momenteel alleen beschikbaar in VM's:
- U kunt een afbeelding van een afzonderlijke VM vastleggen, maar niet van een VM in een schaalset.
- U kunt een afzonderlijke VM migreren van native schijven naar beheerde schijven, maar u kunt geen VM-exemplaren in een schaalset migreren.
- U kunt openbare IP-adressen van IPv6 toewijzen aan afzonderlijke virtuele netwerkinterfacekaarten (NIC's) van virtuele machines, maar dit kan niet voor VM-exemplaren in een schaalset. U kunt openbare IPv6-IP-adressen toewijzen aan load balancers vóór afzonderlijke VM's of schaalset-VM's.
Storage
Schaalsets met Azure Managed Disks
Schaalsets kunnen worden gemaakt met Azure Managed Disks in plaats van traditionele Azure-opslagaccounts. Managed Disks bieden de volgende voordelen:
- U hoeft niet vooraf een set Azure-opslagaccounts te maken voor de schaalset-VM's.
- U kunt gekoppelde gegevensschijven definiëren voor de VM's in uw schaalset.
- Schaalsets kunnen worden geconfigureerd voor ondersteuning van maximaal 1000 VM's in een set.
Als u een bestaande sjabloon hebt, kunt u de sjabloon ook bijwerken om deze te Managed Disks.
Door de gebruiker beheerde Storage
Een schaalset die niet is gedefinieerd met Azure Managed Disks is afhankelijk van door de gebruiker gemaakte opslagaccounts voor het opslaan van de besturingssysteemschijven van de VM's in de set. Een verhouding van 20 VM's per opslagaccount of minder wordt aanbevolen om een maximale IO te bereiken en ook te profiteren van overprovisioning (zie hieronder). Het wordt ook aanbevolen dat u de begintekens van de namen van het opslagaccount over het alfabet verspreidt. Dit helpt bij het spreiden van de belasting over verschillende interne systemen.
Overprovisioning
Schaalsets worden momenteel standaard ingesteld op 'overprovisioning' VM's. Als overprovisioning is ingeschakeld, worden er in de schaalset meer VM's ingericht dan u hebt gevraagd. Vervolgens worden de extra VM's verwijderd zodra het aangevraagde aantal VM's is ingericht. Overprovisioning verbetert het slagingspercentage van de inrichting en vermindert de implementatietijd. U wordt niet gefactureerd voor de extra VM's en ze tellen niet mee voor uw quotumlimieten.
Hoewel overprovisioning de succespercentages voor inrichting verbetert, kan dit verwarrend gedrag veroorzaken voor een toepassing die niet is ontworpen voor het afhandelen van extra VM's die worden weergegeven en vervolgens verdwijnen. Als u overprovisioning wilt uitschakelen, moet u ervoor zorgen dat uw sjabloon de volgende tekenreeks bevat: "overprovision": "false" . Meer informatie vindt u in de documentatie REST API schaalset.
Als uw schaalset gebruikmaakt van door de gebruiker beheerde opslag en u overprovisioning uit schakelen, kunt u meer dan 20 VM's per opslagaccount hebben, maar het wordt niet aanbevolen om hoger te gaan dan 40 om prestatieredenen van I/O.
Limieten
Een schaalset die is gebouwd op een Marketplace-afbeelding (ook wel een platformafbeelding genoemd) en is geconfigureerd voor het gebruik van Azure Managed Disks ondersteunt een capaciteit van maximaal 1000 VM's. Als u uw schaalset configureert voor de ondersteuning van meer dan 100 VM's, werken niet alle scenario's hetzelfde (bijvoorbeeld taakverdeling). Zie Werken met grote virtuele-machineschaalsets voor meer informatie.
Een schaalset die is geconfigureerd met door de gebruiker beheerde opslagaccounts is momenteel beperkt tot 100 VM's (en 5 opslagaccounts worden aanbevolen voor deze schaal).
Een schaalset die is gebouwd op een aangepaste afbeelding (een door u gebouwd) kan een capaciteit van maximaal 600 VM's hebben wanneer deze is geconfigureerd met Azure Managed Disks. Als de schaalset is geconfigureerd met door de gebruiker beheerde opslagaccounts, moet deze alle VHD's van besturingssysteemschijven binnen één opslagaccount maken. Als gevolg hiervan is het maximum aantal aanbevolen VM's in een schaalset die is gebouwd op basis van een aangepaste afbeelding en door de gebruiker beheerde opslag 20. Als u overprovisioning uit schakelen, kunt u tot 40 gaan.