Nadmierna alokacja rezerwacji pojemności
Dotyczy: ✔️ Maszyny wirtualne z systemem Linux Maszyny wirtualne z systemem Windows Jednolite zestawy ✔️ ✔️ skalowania elastyczne zestawy ✔️ skalowania
Platforma Azure zezwala na skojarzenie dodatkowych maszyn wirtualnych powyżej liczby rezerwacji pojemności. Te maszyny wirtualne są dostępne w celu umożliwienia scenariuszy zwiększania szybkości i innych scenariuszy skalowania w poziomie bez limitów pojemności zarezerwowanej. Jedyną różnicą jest to, że liczba maszyn wirtualnych poza zarezerwowaną ilością nie otrzymuje korzyści z umowy dotyczącej poziomu usług (SLA) dotyczącej dostępności pojemności. Jeśli platforma Azure ma dostępną pojemność spełniającą wymagania dotyczące maszyny wirtualnej, dodatkowa alokacja zakończy się pomyślnie.
Widok wystąpienia grupy rezerwacji pojemności zawiera migawkę użycia dla każdej rezerwacji pojemności składowej. Widok wystąpienia umożliwia sprawdzenie, jak działa nadmierna alokacja.
W tym artykule założono, że utworzono grupę rezerwacji pojemności (myCapacityReservationGroup
), rezerwację pojemności składowej (myCapacityReservation
) i maszynę wirtualną (myVM1), która jest skojarzona z grupą. Aby uzyskać więcej informacji, zobacz Tworzenie rezerwacji pojemności i Kojarzenie maszyny wirtualnej z rezerwacją pojemności.
Widok wystąpienia dla grupy rezerwacji pojemności
Widok wystąpienia dla grupy rezerwacji pojemności wygląda następująco:
GET
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/myCapacityReservationGroup?$expand=instanceview&api-version=2021-04-01
{
"name": "myCapacityReservationGroup",
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup",
"type": "Microsoft.Compute/capacityReservationGroups",
"location": "eastus",
"properties": {
"capacityReservations": [
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/MYCAPACITYRESERVATIONGROUP/capacityReservations/MYCAPACITYRESERVATION"
}
],
"virtualMachinesAssociated": [
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/myVM1"
}
],
"instanceView": {
"capacityReservations": [
{
"name": "myCapacityReservation",
"utilizationInfo": {
"virtualMachinesAllocated": [
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/myVM1"
}
]
},
"statuses": [
{
"code": "ProvisioningState/succeeded",
"level": "Info",
"displayStatus": "Provisioning succeeded",
"time": "<time>"
}
]
}
]
}
}
}
Załóżmy, że utworzymy inną maszynę wirtualną o nazwie myVM2 i skojarzymy ją z poprzednią grupą rezerwacji pojemności.
Widok wystąpienia dla grupy rezerwacji pojemności wygląda teraz następująco:
{
"name": "myCapacityReservationGroup",
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup",
"type": "Microsoft.Compute/capacityReservationGroups",
"location": "eastus",
"properties": {
"capacityReservations": [
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/MYCAPACITYRESERVATIONGROUP/capacityReservations/MYCAPACITYRESERVATION"
}
],
"virtualMachinesAssociated": [
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/myVM1"
},
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/myVM2"
}
],
"instanceView": {
"capacityReservations": [
{
"name": "myCapacityReservation",
"utilizationInfo": {
"virtualMachinesAllocated": [
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/myVM1"
},
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/myVM2"
}
]
},
"statuses": [
{
"code": "ProvisioningState/succeeded",
"level": "Info",
"displayStatus": "Provisioning succeeded",
"time": "<time>"
}
]
}
]
}
}
}
Długość virtualMachinesAllocated
(2) jest większa niż capacity
(1). Ten prawidłowy stan jest określany jako nadmiernie alokowany.
Ważne
Platforma Azure nie zatrzyma alokacji, ponieważ rezerwacja pojemności jest w pełni zużywana. Reguły skalowania automatycznego, tymczasowe skalowanie w poziomie i powiązane wymagania wykraczają poza ilość pojemności zarezerwowanej, jeśli platforma Azure ma dostępną pojemność i inne ograniczenia, takie jak dostępny limit przydziału, są spełnione.
Stany i zagadnienia
Istnieją trzy prawidłowe stany dla określonej rezerwacji pojemności:
Stan | Stan | Kwestie wymagające rozważenia |
---|---|---|
Dostępna pojemność zarezerwowana | Długość virtualMachinesAllocated <capacity |
Czy potrzebna jest cała pojemność zarezerwowana? Opcjonalnie zmniejsz pojemność, aby zmniejszyć koszty. |
Zużytą rezerwację | Długość virtualMachinesAllocated == capacity |
Więcej maszyn wirtualnych nie otrzyma umowy SLA pojemności, chyba że niektóre istniejące maszyny wirtualne zostaną cofnięto przydział. Opcjonalnie spróbuj zwiększyć pojemność, aby dodatkowe planowane maszyny wirtualne otrzymały umowę SLA. |
Nadmierna alokacja rezerwacji | Długość virtualMachinesAllocated >capacity |
Więcej maszyn wirtualnych nie otrzyma umowy SLA dotyczącej pojemności. Ponadto ilość maszyn wirtualnych (długość virtualMachinesAllocated – capacity ) nie otrzyma umowy SLA pojemności w przypadku cofnięcia przydziału. Opcjonalnie zwiększ pojemność, aby dodać umowę SLA pojemności do większej liczby istniejących maszyn wirtualnych. |