Dela via


Ändra en kapacitetsreservation

Gäller för: ✔️ Virtuella Linux-datorer Med virtuella Windows-datorer ✔️ ✔️ Enhetlig skalningsuppsättning ✔️ – flexibla skalningsuppsättningar

När du har skapat en kapacitetsreservationsgrupp och kapacitetsreservation kanske du vill ändra dina reservationer. Den här artikeln beskriver hur du utför följande åtgärder med hjälp av API, Azure-portalen och PowerShell.

  • Uppdatera antalet instanser som är reserverade i en kapacitetsreservation
  • Ändra storlek på virtuella datorer som är associerade med en kapacitetsreservationsgrupp
  • Ta bort kapacitetsreservationsgruppen och kapacitetsreservationen

Uppdatera antalet reserverade instanser

Uppdatera antalet virtuella datorinstanser som är reserverade i en kapacitetsreservation.

Viktigt!

I sällsynta fall när Azure inte kan uppfylla begäran om att öka antalet reserverade för befintliga kapacitetsreservationer är det möjligt att en reservation hamnar i ett feltillstånd och blir otillgänglig tills kvantiteten återställs till det ursprungliga beloppet.

    PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{capacityReservationName}?api-version=2021-04-01

I begärandetexten capacity uppdaterar du egenskapen till det nya antal som du vill reservera:

{
    "sku":
    {
        "capacity": 5
    }
} 

Observera att egenskapen är inställd på capacity 5 nu i det här exemplet.

Ändra storlek på virtuella datorer som är associerade med en kapacitetsreservationsgrupp

Du måste göra något av följande alternativ om den virtuella datorn som storleksändras för närvarande är kopplad till en kapacitetsreservationsgrupp och den gruppen inte har någon reservation för målstorleken:

  • Skapa en ny reservation för den storleken
  • Ta bort den virtuella datorn från reservationsgruppen innan du ändrar storlek.

Kontrollera om målstorleken är en del av reservationsgruppen:

  1. Hämta namnen på alla kapacitetsreservationer i gruppen.

        GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}?api-version=2021-04-01
    
    { 
        "name": "<CapacityReservationGroupName>", 
        "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}", 
        "type": "Microsoft.Compute/capacityReservationGroups", 
        "location": "eastUS", 
        "zones": [ 
            "1" 
        ], 
        "properties": { 
            "capacityReservations": [ 
                { 
                    "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{capacityReservationName1}" 
                }, 
    { 
                    "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{capacityReservationName2}" 
                } 
            ] 
        } 
    } 
    
  2. Ta reda på storleken på den virtuella datorn som är reserverad för varje reservation. Följande exempel är för capacityReservationName1, men du kan upprepa det här steget för andra reservationer.

        GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{capacityReservationName1}?api-version=2021-04-01
    
    { 
        "name": "capacityReservationName1", 
        "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{capacityReservationName1}", 
        "type": "Microsoft.Compute/capacityReservationGroups/capacityReservations", 
        "location": "eastUS", 
        "sku": { 
            "name": "Standard_D2s_v3", 
            "capacity": 3 
        }, 
        "zones": [ 
            "1" 
        ], 
        "properties": { 
            "reservationId": "<reservationId>", 
            "provisioningTime": "<provisioningTime>", 
            "provisioningState": "Succeeded" 
        } 
    }  
    
  3. Föreställ dig följande scenarier:

    1. Om den virtuella måldatorns storlek inte ingår i gruppen skapar du en ny kapacitetsreservation för den virtuella måldatorn
    2. Om mål-VM-storleken redan finns i gruppen ändrar du storlek på den virtuella datorn

Ta bort en kapacitetsreservationsgrupp och kapacitetsreservation

Azure tillåter att en grupp tas bort när alla medlemskapacitetsreservationer har tagits bort och inga virtuella datorer är associerade till gruppen.

Om du vill ta bort en kapacitetsreservation tar du först reda på alla virtuella datorer som är kopplade till den. Listan över virtuella datorer är tillgänglig under virtualMachinesAssociated egenskapen .

Leta först upp alla virtuella datorer som är associerade med gruppen Kapacitetsreservation och koppla bort dem.

    GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}?$expand=instanceView&api-version=2021-04-01
{ 
    "name": "<capacityReservationGroupName>", 
    "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", 
    "type": "Microsoft.Compute/capacityReservationGroups", 
    "location": "eastus", 
    "properties": { 
        "capacityReservations": [ 
            { 
                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}" 
            } 
        ], 
        "virtualMachinesAssociated": [ 
            { 
                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{VirtualMachineName1}" 
            }, 
            { 
                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{VirtualMachineName2}" 
            } 
        ], 
        "instanceView": { 
            "capacityReservations": [ 
                { 
                    "name": "{capacityReservationName}", 
                    "utilizationInfo": { 
                        "virtualMachinesAllocated": [ 
                            { 
                                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{VirtualMachineName1}" 
                            } 
                        ] 
                    }, 
                    "statuses": [ 
                        { 
                            "code": "ProvisioningState/succeeded", 
                            "level": "Info", 
                            "displayStatus": "Provisioning succeeded", 
                            "time": "<time>" 
                        } 
                    ] 
                } 
            ] 
        } 
    } 
}  

I svaret ovan hittar du namnen på alla virtuella datorer under virtualMachinesAssociated egenskapen och tar bort dem från gruppen Kapacitetsreservation med hjälp av stegen i Ta bort en VM-association till en kapacitetsreservation.

När alla virtuella datorer har tagits bort från gruppen Kapacitetsreservation tar du bort medlemmens kapacitetsreservation:

DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{capacityReservationName}?api-version=2021-04-01

Slutligen tar du bort den överordnade kapacitetsreservationsgruppen.

DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}?api-version=2021-04-01

Återställa instanskvantitet

En välformulerad begäran om att minska den reserverade kvantiteten bör alltid lyckas oavsett hur många virtuella datorer som är associerade med reservationen. Att öka den reserverade kvantiteten kan dock kräva mer kvot och för att Azure ska kunna uppfylla den ytterligare kapacitetsbegäran. I ett sällsynt scenario där Azure inte kan uppfylla begäran om att öka antalet reserverade för befintliga reservationer är det möjligt att reservationen hamnar i ett feltillstånd och blir otillgänglig tills den reserverade kvantiteten återställs till det ursprungliga beloppet.

Kommentar

Om en reservation är i ett feltillstånd fortsätter alla virtuella datorer som är associerade med reservationen att fungera som vanligt.

Anta till exempel att myCapacityReservation det finns en reserverad kvantitet 5. Du begär 5 extra instanser, vilket gör den totala reserverade kvantiteten lika med 10. På grund av en begränsad kapacitetssituation i regionen kan Azure dock inte uppfylla de ytterligare 5 begärda kvantiteterna. I det här fallet myCapacityReservation kommer det inte att uppfylla sitt avsedda tillstånd på 10 reserverade kvantiteter och hamnar i ett feltillstånd .

Lös det här felet genom att vidta följande steg för att hitta det gamla reserverade kvantitetsvärdet:

  1. Gå till Programändringsanalys i Azure-portalen
  2. Välj tillämpligt intervall för prenumeration, resursgrupp och tid i filtren
    • Du kan bara gå tillbaka upp till 14 dagar tidigare i tidsintervallfiltret
  3. Sök efter namnet på kapacitetsreservationen
  4. Leta efter ändringen i sku.capacity egenskapen för den reservationen
    • Den gamla reserverade kvantiteten är värdet under kolumnen Gammalt värde

Uppdatera myCapacityReservation till den gamla reserverade kvantiteten. När reservationen har uppdaterats blir den tillgänglig omedelbart för användning med dina virtuella datorer.

Nästa steg