Delen via


Een virtuele-machineschaalset beheren met de Azure CLI

Notitie

Veel van de stappen in dit document zijn van toepassing op virtuele-machineschaalsets met behulp van de modus Uniform Orchestration. We raden u aan Flexibele indeling te gebruiken voor nieuwe workloads. Zie Orchesration-modi voor virtuele-machineschaalsets in Azure voor meer informatie.

Gedurende de levenscyclus van een virtuele-machineschaalset moet u mogelijk een of meer beheertaken uitvoeren. Bovendien wilt u misschien scripts maken die verschillende levenscyclustaken automatiseren. In dit artikel worden enkele algemene Azure CLI-opdrachten beschreven waarmee u deze taken kunt uitvoeren.

Als u deze beheertaken wilt uitvoeren, hebt u de nieuwste Azure CLI nodig. Zie De Azure CLI installeren voor meer informatie. Als u een virtuele-machineschaalset wilt maken, kunt u een schaalset maken met de Azure CLI.

Informatie over een schaalset weergeven

Als u de algemene informatie over een schaalset wilt weergeven, gebruikt u az vmss show. In het volgende voorbeeld wordt informatie opgehaald over de schaalset met de naam myScaleSet in de resourcegroep myResourceGroup . Voer als volgt uw eigen namen in:

az vmss show --resource-group myResourceGroup --name myScaleSet

Virtuele machines weergeven in een schaalset

Als u een lijst met VM-exemplaren in een schaalset wilt weergeven, gebruikt u az vmss list-instances. In het volgende voorbeeld ziet u alle VM-exemplaren in de schaalset met de naam myScaleSet in de resourcegroep myResourceGroup . Geef uw eigen waarden op voor deze namen:

az vmss list-instances \
    --resource-group myResourceGroup \
    --name myScaleSet \
    --output table

Als u aanvullende informatie over een specifiek VM-exemplaar wilt weergeven, voegt u de --instance-id parameter toe aan az vmss get-instance-view en geeft u een exemplaar op dat u wilt weergeven. In het volgende voorbeeld ziet u informatie over vm-exemplaar 0 in de schaalset met de naam myScaleSet en de resourcegroep myResourceGroup . Voer als volgt uw eigen namen in:

az vmss get-instance-view \
    --resource-group myResourceGroup \
    --name myScaleSet \
    --instance-id 0

U kunt ook gedetailleerde instanceView-informatie ophalen voor alle exemplaren in één API-aanroep, waardoor API-beperking voor grote installaties kan worden voorkomen. Geef uw eigen waarden op voor --resource-group, --subscriptionen --name.

az vmss list-instances \
    --expand instanceView \
    --select instanceView \
    --resource-group <resourceGroupName> \
    --subscription <subID> \
    --name <vmssName>
GET "https://management.azure.com/subscriptions/<sub-id>/resourceGroups/<resourceGroupName>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSSName>/virtualMachines?api-version=2019-03-01&%24expand=instanceView"

Verbindingsgegevens voor VM's weergeven

Als u verbinding wilt maken met de VIRTUELE machines in een schaalset, gaat u met SSH of RDP naar een toegewezen openbaar IP-adres en poortnummer. Nat-regels (Network Address Translation) worden standaard toegevoegd aan de Azure Load Balancer waarmee verkeer van externe verbindingen naar elke VIRTUELE machine wordt doorgestuurd. Als u het adres en de poorten wilt weergeven om verbinding te maken met VM-exemplaren in een schaalset, gebruikt u az vmss list-instance-connection-info. In het volgende voorbeeld ziet u verbindingsgegevens voor VM-exemplaren in de schaalset met de naam myScaleSet en in de resourcegroep myResourceGroup . Geef uw eigen waarden op voor deze namen:

az vmss list-instance-connection-info \
    --resource-group myResourceGroup \
    --name myScaleSet

De capaciteit van een schaalset wijzigen

De voorgaande opdrachten bevatten informatie over uw schaalset en de VM-exemplaren. Als u het aantal exemplaren in de schaalset wilt vergroten of verkleinen, kunt u de capaciteit wijzigen. De schaalset maakt of verwijdert het vereiste aantal VIRTUELE machines en configureert vervolgens de VM's voor het ontvangen van toepassingsverkeer.

Als u het aantal instanties wilt weergeven dat zich momenteel in een schaalset bevindt, gebruikt u az vmss show en voert u een query uit op sku.capacity:

az vmss show \
    --resource-group myResourceGroup \
    --name myScaleSet \
    --query [sku.capacity] \
    --output table

U kunt vervolgens het aantal virtuele machines in de schaalset handmatig vergroten of verkleinen met az vmss scale. In het volgende voorbeeld wordt het aantal VIRTUELE machines in uw schaalset ingesteld op 5:

az vmss scale \
    --resource-group myResourceGroup \
    --name myScaleSet \
    --new-capacity 5

Het duurt een paar minuten om de capaciteit van de schaalset bij te werken. Als u de capaciteit van een schaalset verlaagt, worden de VM's met de hoogste exemplaar-id's eerst verwijderd.

VM’s in een schaalset stoppen en opstarten

Als u een of meer VM's in een schaalset wilt stoppen, gebruikt u az vmss stop. Met de parameter --instance-ids kunt u een of meer VM's opgeven om te stoppen. Als u geen exemplaar-id opgeeft, worden alle VM's in de schaalset gestopt. Als u meerdere VM's wilt stoppen, scheidt u elke exemplaar-id met een spatie.

In het volgende voorbeeld wordt instantie 0 gestopt in de schaalset met de naam myScaleSet en de resourcegroep myResourceGroup . Geef als volgt uw eigen waarden op:

az vmss stop --resource-group myResourceGroup --name myScaleSet --instance-ids 0

Gestopte VM's blijven toegewezen en blijven rekenkosten in rekening brengen. Als u in plaats daarvan wilt dat de toewijzing van de VIRTUELE machines ongedaan wordt gemaakt en alleen opslagkosten in rekening worden gebracht, gebruikt u az vmss deallocate. Als u de toewijzing van meerdere VM's ongedaan wilt maken, scheidt u elke exemplaar-id met een spatie. In het volgende voorbeeld wordt exemplaar 0 gestopt en ongedaan gemaakt in de schaalset met de naam myScaleSet en de resourcegroep myResourceGroup . Geef als volgt uw eigen waarden op:

az vmss deallocate --resource-group myResourceGroup --name myScaleSet --instance-ids 0

VM's in een schaalset starten

Als u een of meer VM's in een schaalset wilt starten, gebruikt u az vmss start. Met de parameter --instance-ids kunt u een of meer VM's opgeven om te starten. Als u geen exemplaar-id opgeeft, worden alle VM's in de schaalset gestart. Als u meerdere VM's wilt starten, scheidt u elke exemplaar-id met een spatie.

In het volgende voorbeeld wordt instantie 0 gestart in de schaalset met de naam myScaleSet en de resourcegroep myResourceGroup . Geef als volgt uw eigen waarden op:

az vmss start --resource-group myResourceGroup --name myScaleSet --instance-ids 0

VM’s in een schaalset opnieuw opstarten

Als u een of meer VM's in een schaalset opnieuw wilt starten, gebruikt u az vmss restart. Met de parameter --instance-ids kunt u een of meer VM's opgeven om opnieuw op te starten. Als u geen exemplaar-id opgeeft, worden alle VM's in de schaalset opnieuw opgestart. Als u meerdere VM's opnieuw wilt opstarten, scheidt u elke exemplaar-id met een spatie.

In het volgende voorbeeld wordt exemplaar 0 opnieuw gestart in de schaalset met de naam myScaleSet en de resourcegroep myResourceGroup . Geef als volgt uw eigen waarden op:

az vmss restart --resource-group myResourceGroup --name myScaleSet --instance-ids 0

VM's uit een schaalset verwijderen

Als u een of meer VM's in een schaalset wilt verwijderen, gebruikt u az vmss delete-instances. Met de --instance-ids parameter kunt u een of meer VM's opgeven die moeten worden verwijderd. Als u * opgeeft voor de exemplaar-id, worden alle VM's in de schaalset verwijderd. Als u meerdere VM's wilt verwijderen, scheidt u elke exemplaar-id met een spatie.

In het volgende voorbeeld wordt exemplaar 0 verwijderd in de schaalset met de naam myScaleSet en de resourcegroep myResourceGroup . Geef als volgt uw eigen waarden op:

az vmss delete-instances --resource-group myResourceGroup --name myScaleSet --instance-ids 0

Volgende stappen

Andere algemene taken voor schaalsets zijn het implementeren van een toepassing en het upgraden van VM-exemplaren. U kunt azure CLI ook gebruiken om regels voor automatisch schalen te configureren.