Udostępnij za pośrednictwem


Modyfikowanie rezerwacji pojemności

Dotyczy: ✔️ Maszyny wirtualne z systemem Linux Maszyny wirtualne z systemem Windows Jednolite zestawy ✔️ ✔️ skalowania elastyczne zestawy ✔️ skalowania

Po utworzeniu grupy rezerwacji pojemności i rezerwacji pojemności warto zmodyfikować rezerwacje. W tym artykule wyjaśniono, jak wykonywać następujące akcje przy użyciu interfejsu API, witryny Azure Portal i programu PowerShell.

  • Zaktualizuj liczbę wystąpień zarezerwowanych w rezerwacji pojemności.
  • Zmienianie rozmiaru maszyn wirtualnych skojarzonych z grupą rezerwacji pojemności.
  • Usuń grupę rezerwacji pojemności i rezerwację pojemności.

Aktualizowanie liczby wystąpień zarezerwowanych

Zaktualizuj liczbę wystąpień maszyn wirtualnych zarezerwowanych w rezerwacji pojemności.

Ważne

W rzadkich przypadkach, gdy platforma Azure nie może spełnić żądania zwiększenia ilości zarezerwowanej dla istniejących rezerwacji pojemności, rezerwacja może przejść do stanu Niepowodzenie i stać się niedostępna, dopóki ilość nie zostanie przywrócona do pierwotnej kwoty.

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

W treści żądania zaktualizuj capacity właściwość do nowej liczby, którą chcesz zarezerwować:

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

W tym przykładzie capacity właściwość jest teraz ustawiona na 5wartość .

Zmienianie rozmiaru maszyn wirtualnych skojarzonych z grupą rezerwacji pojemności

Należy wykonać jedną z następujących opcji, jeśli zmiana rozmiaru maszyny wirtualnej jest obecnie dołączona do grupy rezerwacji pojemności, a ta grupa nie ma rezerwacji dla rozmiaru docelowego:

  • Utwórz nową rezerwację dla tego rozmiaru.
  • Przed zmianą rozmiaru usuń maszynę wirtualną z grupy rezerwacji.

Sprawdź, czy rozmiar docelowy jest częścią grupy rezerwacji.

  1. Pobierz nazwy wszystkich rezerwacji pojemności w grupie.

        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. Dowiedz się, jak rozmiar maszyny wirtualnej jest zarezerwowany dla każdej rezerwacji. Poniższy przykład dotyczy capacityReservationName1elementu , ale można powtórzyć ten krok dla innych rezerwacji.

        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. Rozważ następujące scenariusze:

Usuwanie grupy rezerwacji pojemności i rezerwacji pojemności

Platforma Azure umożliwia usunięcie grupy, gdy wszystkie rezerwacje pojemności składowej zostaną usunięte, a żadne maszyny wirtualne nie są skojarzone z grupą.

Aby usunąć rezerwację pojemności, najpierw znajdź wszystkie skojarzone z nią maszyny wirtualne. Lista maszyn wirtualnych jest dostępna we virtualMachinesAssociated właściwości .

Najpierw znajdź wszystkie maszyny wirtualne skojarzone z grupą rezerwacji pojemności i usuń ich skojarzenie:

    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>" 
                        } 
                    ] 
                } 
            ] 
        } 
    } 
}  

W poprzedniej odpowiedzi znajdź nazwy wszystkich maszyn wirtualnych w ramach virtualMachinesAssociated właściwości . Usuń je z grupy rezerwacji pojemności, wykonując kroki opisane w temacie Usuwanie skojarzenia maszyny wirtualnej z rezerwacją pojemności.

Po usunięciu wszystkich maszyn wirtualnych z grupy rezerwacji pojemności usuń rezerwacje pojemności składowej:

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

Na koniec usuń nadrzędną grupę rezerwacji pojemności:

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

Przywracanie ilości wystąpienia

Dobrze sformułowane żądanie zmniejszenia ilości zarezerwowanej zawsze powinno zakończyć się powodzeniem niezależnie od liczby maszyn wirtualnych skojarzonych z rezerwacją. Jednak zwiększenie ilości zarezerwowanej może wymagać większego limitu przydziału, a platforma Azure spełni żądanie zwiększenia pojemności. W rzadkim scenariuszu, w którym platforma Azure nie może spełnić żądania zwiększenia zarezerwowanej ilości dla istniejących rezerwacji, rezerwacja może przejść do stanu Niepowodzenie i stać się niedostępna, dopóki ilość zarezerwowana nie zostanie przywrócona do pierwotnej kwoty.

Uwaga

Jeśli rezerwacja jest w stanie Niepowodzenie , wszystkie maszyny wirtualne skojarzone z rezerwacją będą nadal działać normalnie.

Załóżmy myCapacityReservation na przykład, że 5 wystąpień jest zarezerwowanych. Żądasz 5 dodatkowych wystąpień, co sprawia, że łączna ilość zarezerwowana jest równa 10. Jednak ze względu na sytuację ograniczonej pojemności w regionie platforma Azure nie może spełnić dodatkowych 5 wystąpień, których zażądano. W takim przypadku myCapacityReservation nie można spełnić zamierzonego stanu 10 wystąpień zarezerwowanych i przechodzi w stan Niepowodzenie .

Aby rozwiązać ten problem, wykonaj następujące kroki, aby zlokalizować starą wartość zarezerwowaną ilości:

  1. W witrynie Azure Portal przejdź do pozycji Analiza zmian aplikacji.
  2. Wybierz odpowiednie ustawienia Subskrypcja, Grupa zasobów i Zakres czasu w filtrach. Możesz wrócić do 14 dni w przeszłości w filtrze Zakres czasu.
  3. Wyszukaj nazwę rezerwacji pojemności.
  4. Wyszukaj zmianę sku.capacity właściwości dla tej rezerwacji. Stara ilość zarezerwowana jest wartością w kolumnie Stara wartość .

Zaktualizuj myCapacityReservation do starej ilości zarezerwowanej. Po jej zaktualizowaniu rezerwacja jest dostępna natychmiast do użycia z maszynami wirtualnymi.

Następny krok