Exemplaarbeveiliging voor exemplaren van virtuele-machineschaalsets in Azure
Van toepassing op: ✔️ Linux-VM's ✔️ Windows-VM's ✔️ Flexibele schaalsets ✔️ Uniforme schaalsets
Virtuele-machineschaalsets van Azure bieden een betere elasticiteit voor uw workloads via automatisch schalen, zodat u kunt configureren wanneer uw infrastructuur wordt uitschalen en wanneer deze wordt inschalen. Met schaalsets kunt u een groot aantal VM's ook centraal beheren, configureren en bijwerken via verschillende upgradebeleidsinstellingen. U kunt een update voor het schaalsetmodel configureren en de nieuwe configuratie wordt automatisch toegepast op elk exemplaar van de schaalset als u het upgradebeleid hebt ingesteld op Automatisch of Rollend.
Terwijl uw toepassing verkeer verwerkt, kunnen er situaties zijn waarin u wilt dat specifieke exemplaren anders worden behandeld dan de rest van het schaalset-exemplaar. Bepaalde exemplaren in de schaalset kunnen bijvoorbeeld langlopende bewerkingen uitvoeren en u wilt niet dat deze exemplaren worden inschalen totdat de bewerkingen zijn voltooid. Mogelijk hebt u ook enkele instanties in de schaalset gespecialiseerd om extra of andere taken uit te voeren dan de andere leden van de schaalset. U wilt dat deze 'speciale' VM's niet worden gewijzigd met de andere exemplaren in de schaalset. Exemplaarbeveiliging biedt de extra besturingselementen om deze en andere scenario's voor uw toepassing mogelijk te maken.
In dit artikel wordt beschreven hoe u de verschillende mogelijkheden voor exemplaarbeveiliging kunt toepassen en gebruiken met instanties van schaalsets.
Typen exemplaarbeveiliging
Schaalsets bieden twee typen mogelijkheden voor exemplaarbeveiliging:
Beveiligen tegen inschalen
- Ingeschakeld via de eigenschap protectFromScaleIn op het exemplaar van de schaalset
- Beschermt exemplaar tegen automatisch schalen geïnitieerde inschalen
- Door de gebruiker geïnitieerde exemplaarbewerkingen (inclusief het verwijderen van exemplaren) worden niet geblokkeerd
- Bewerkingen die zijn gestart op de schaalset (upgraden, opnieuw maken, toewijzing van de toewijzing verwijderen, enzovoort) worden niet geblokkeerd
Beveiligen tegen schaalsetacties
- Ingeschakeld via de eigenschap protectFromScaleSetActions op het exemplaar van de schaalset
- Beschermt exemplaar tegen automatisch schalen geïnitieerde inschalen
- Beschermt de instantie tegen bewerkingen die zijn gestart op de schaalset (zoals upgraden, opnieuw instellen, toewijzing van de toewijzing in de hand nemen, enzovoort)
- Door de gebruiker geïnitieerde exemplaarbewerkingen (inclusief het verwijderen van exemplaren) worden niet geblokkeerd
- Verwijderen van de volledige schaalset wordt niet geblokkeerd
Beveiligen tegen inschalen
Exemplaarbeveiliging kan worden toegepast op instanties van schaalsets nadat de exemplaren zijn gemaakt. Beveiliging wordt alleen toegepast en gewijzigd op het exemplaarmodel en niet op het schaalsetmodel.
Er zijn meerdere manieren om schaalbeveiliging toe te passen op uw schaalset-exemplaren, zoals beschreven in de onderstaande voorbeelden.
Azure Portal
U kunt inschaalbeveiliging toepassen via de Azure Portal op een exemplaar in de schaalset. U kunt niet meer dan één exemplaar tegelijk aanpassen. Herhaal de stappen voor elk exemplaar dat u wilt beveiligen.
- Ga naar een bestaande virtuele-machineschaalset.
- Selecteer Exemplaren in het menu aan de linkerkant, onder Instellingen.
- Selecteer de naam van het exemplaar dat u wilt beveiligen.
- Selecteer het tabblad Beveiligingsbeleid.
- Selecteer op de blade Beveiligingsbeleid de optie Beveiligen tegen inschalen.
- Selecteer Opslaan.
REST-API
In het volgende voorbeeld wordt inschaalbeveiliging toegepast op een exemplaar in de schaalset.
PUT on `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instance-id}?api-version=2019-03-01`
{
"properties": {
"protectionPolicy": {
"protectFromScaleIn": true
}
}
}
Notitie
Exemplaarbeveiliging wordt alleen ondersteund met API-versie 2019-03-01 en hoger
Azure PowerShell
Gebruik de cmdlet Update-AzVmssVM om schaalbeveiliging toe te passen op uw exemplaar van de schaalset.
In het volgende voorbeeld wordt inschaalbeveiliging toegepast op een exemplaar in de schaalset met exemplaar-id 0.
Update-AzVmssVM `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myVMScaleSet" `
-InstanceId 0 `
-ProtectFromScaleIn $true
Azure CLI 2.0
Gebruik az vmss update om schaalbeveiliging toe te passen op uw schaalset-exemplaar.
In het volgende voorbeeld wordt inschaalbeveiliging toegepast op een exemplaar in de schaalset met exemplaar-id 0.
az vmss update \
--resource-group <myResourceGroup> \
--name <myVMScaleSet> \
--instance-id 0 \
--protect-from-scale-in true
Beveiligen tegen acties in schaalsets
Exemplaarbeveiliging kan worden toegepast op instanties van schaalsets nadat de exemplaren zijn gemaakt. Beveiliging wordt alleen toegepast en gewijzigd op het exemplaarmodel en niet op het schaalsetmodel.
Door een exemplaar te beveiligen tegen schaalsetacties wordt het exemplaar ook beschermd tegen automatisch inschalen geïnitieerde inschalen.
Er zijn meerdere manieren om beveiliging van schaalsetacties toe te passen op uw schaalset-exemplaren, zoals beschreven in de onderstaande voorbeelden.
Azure Portal
U kunt beveiliging van schaalsetacties via de Azure Portal op een exemplaar in de schaalset. U kunt niet meer dan één exemplaar tegelijk aanpassen. Herhaal de stappen voor elk exemplaar dat u wilt beveiligen.
- Ga naar een bestaande virtuele-machineschaalset.
- Selecteer Exemplaren in het menu aan de linkerkant, onder Instellingen.
- Selecteer de naam van het exemplaar dat u wilt beveiligen.
- Selecteer het tabblad Beveiligingsbeleid.
- Selecteer op de blade Beveiligingsbeleid de optie Beveiligen tegen schaalsetacties.
- Selecteer Opslaan.
REST-API
In het volgende voorbeeld wordt beveiliging van schaalsetacties toegepast op een exemplaar in de schaalset.
PUT on `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vMScaleSetName}/virtualMachines/{instance-id}?api-version=2019-03-01`
{
"properties": {
"protectionPolicy": {
"protectFromScaleIn": true,
"protectFromScaleSetActions": true
}
}
}
Notitie
Exemplaarbeveiliging wordt alleen ondersteund met API-versie 2019-03-01 en hoger. Door een exemplaar te beveiligen tegen schaalsetacties wordt het exemplaar ook beschermd tegen automatisch inschalen geïnitieerde inschalen. U kunt 'protectFromScaleIn': false niet opgeven bij het instellen van 'protectFromScaleSetActions': true
Azure PowerShell
Gebruik de cmdlet Update-AzVmssVM om beveiliging van schaalsetacties toe te passen op uw schaalset-exemplaar.
In het volgende voorbeeld wordt beveiliging van schaalsetacties toegepast op een exemplaar in de schaalset met exemplaar-id 0.
Update-AzVmssVM `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myVMScaleSet" `
-InstanceId 0 `
-ProtectFromScaleIn $true `
-ProtectFromScaleSetAction $true
Azure CLI 2.0
Gebruik az vmss update om beveiliging van schaalsetacties toe te passen op uw schaalset-exemplaar.
In het volgende voorbeeld wordt beveiliging van schaalsetacties toegepast op een exemplaar in de schaalset met exemplaar-id 0.
az vmss update \
--resource-group <myResourceGroup> \
--name <myVMScaleSet> \
--instance-id 0 \
--protect-from-scale-in true \
--protect-from-scale-set-actions true
Problemen oplossen
Geen beveiligingBeleid voor schaalsetmodel
Exemplaarbeveiliging is alleen van toepassing op instanties van schaalsets en niet op het schaalsetmodel.
Geen beveiligingBeleid op model van schaalset-exemplaar
Standaard wordt het beveiligingsbeleid niet toegepast op een exemplaar wanneer het wordt gemaakt.
Nadat de exemplaren zijn gemaakt, kunt u exemplaarbeveiliging toepassen op instanties van schaalsets.
Kan geen exemplaarbeveiliging toepassen
Exemplaarbeveiliging wordt alleen ondersteund met API-versie 2019-03-01 en hoger. Controleer de API-versie die wordt gebruikt en werk deze indien nodig bij. Mogelijk moet u ook uw PowerShell of CLI bijwerken naar de nieuwste versie.
Volgende stappen
Meer informatie over het implementeren van uw toepassing op virtuele-machineschaalsets.