Overallocating Capacity Reservation

Aplica-se a: ✔️ Conjuntos de escala uniforme de escala ✔️ flexível Linux VMs ✔️ VMs ✔️

O Azure permite a associação de VM extra para além da contagem reservada de uma Reserva de Capacidade para facilitar a explosão e outros cenários de escala, sem a sobrecarga de gestão em torno dos limites da capacidade reservada. A única diferença é que a contagem de VMs para além da quantidade reservada não recebe o benefício da disponibilidade de capacidade SLA. Enquanto a Azure tiver capacidade disponível que satisfaça os requisitos da máquina virtual, as dotações extra serão bem sucedidas.

A Visão de Exemplo de um grupo de Reserva de Capacidade fornece uma imagem de utilização para cada membro Reserva de Capacidade. Pode utilizar o Exemplo view para ver como funciona a overallocation.

Este artigo pressupõe que criou um grupo de Reserva de Capacidade (myCapacityReservationGroup), uma Reserva de Capacidade de membro (myCapacityReservation), e uma máquina virtual (myVM1) que está associada ao grupo. Vá criar uma Reserva de Capacidade e associe um VM a uma Reserva de Capacidade para mais detalhes.

Visualização de exemplo para grupo de reserva de capacidade

O Exemplo View for a Capacity Reservation group será assim:

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

Digamos que criamos outra máquina virtual chamada myVM2 e associámo-la ao grupo de Reserva de Capacidade acima.

A Visão de Exemplo para o grupo de Reserva de Capacidade será agora assim:

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

Note que o comprimento do virtualMachinesAllocated (2) é maior do que capacity (1). Este estado válido é referido como globalizado.

Importante

O Azure não vai parar as dotações apenas porque uma Reserva de Capacidade é totalmente consumida. As regras de escala automática, a escala temporária e os requisitos conexos funcionarão para além da quantidade de capacidade reservada, desde que a Azure tenha capacidade disponível e sejam cumpridos outros constrangimentos, tais como o contingente disponível.

Estados e considerações

Existem três estados válidos para uma determinada Reserva de Capacidade:

Estado Estado Considerações
Capacidade reservada disponível Comprimento de virtualMachinesAllocated<capacity É necessária toda a capacidade reservada? Opcionalmente reduza a capacidade de reduzir custos.
Reserva consumida Comprimento de virtualMachinesAllocated == capacity Os VM adicionais não receberão a capacidade SLA a menos que alguns VM existentes sejam transabilitados. Opcionalmente tente aumentar a capacidade para que os VMs extra planeados recebam um SLA.
Reserva globalizada Comprimento de virtualMachinesAllocated>capacity Os VM adicionais não receberão a capacidade SLA. Além disso, a quantidade de VMs (Comprimento de virtualMachinesAllocatedcapacity) não receberá uma capacidade SLA se forlotada. Opcionalmente aumentar a capacidade de adicionar capacidade SLA a mais dos VM existentes.

Passos seguintes