Resolver problemas de consumo de reserva


Este documento descreve como resolver problemas com o consumo de reservas de recursos zonais do Compute Engine.

Dificuldade em acompanhar o consumo de reserva

Problema: não é possível rastrear quais VMs estão consumindo uma reserva, mesmo que seja possível conferir quantas VMs estão consumindo uma reserva verificando o consumo de reserva.

Resolução: se for possível criar uma VM que visa uma reserva específica, a VM consumirá a reserva especificada na propriedade de afinidade (reservationAffinity) da VM. Caso contrário, a criação da VM falhará porque as propriedades não correspondem ou não há recursos disponíveis na zona da VM.

Para mais informações sobre como acompanhar o consumo de reservas, consulte Verificar o consumo de reservas.

Menos VMs disponíveis para consumo

Problema: o número de VMs reservadas fisicamente (campo assuredCount) não corresponde ao número de VMs reservadas especificado em uma reserva (campo count). Isso significa que menos VMs são reservadas para seu projeto e para todos os projetos com que uma reserva compartilhada é compartilhada.

Esse problema pode ocorrer por um ou mais dos seguintes motivos:

  • O projeto de consumidor de uma reserva compartilhada foi suspenso ou migrado para outra organização. Nesse caso, o Compute Engine diminui o campo assuredCount pelo número de VMs que o projeto consumidor está consumindo.

  • O projeto em que a reserva foi criada foi suspenso. Nesse caso, o Compute Engine define o campo assuredCount como 0.

  • Um erro do anfitrião afetou a reserva.

Solução: a menos que o projeto em que a reserva foi criada tenha sido suspenso, o Compute Engine faz o possível para resolver automaticamente uma discrepância entre os campos assuredCount e count em uma reserva em até 24 horas. Além disso, até que essa discrepância seja resolvida, o Google Cloud vai cobrar apenas pela capacidade reservada fisicamente.

Problemas de VMs que não consomem reservas

Se uma VM não conseguir consumir uma reserva, talvez seja por um ou mais dos seguintes problemas:

Esta seção descreve como identificar e resolver cada um desses problemas e verificar o consumo de reservas.

Propriedades de VM incompatíveis

Problema: uma VM não pode consumir uma reserva com diferentes Propriedades da VM.

Para identificar quais propriedades não correspondem entre a VM e a reserva, confira as propriedades da reserva e da VM:

  1. Ver os detalhes da reserva

  2. Conferir detalhes da VM

Em seguida, compare as duas saídas para verificar se as seguintes propriedades correspondem exatamente:

  • project

    • Se a reserva for compartilhada com vários projetos (especificamente, se o campo shareType estiver definido como SPECIFIC_PROJECTS), as VMs poderão estar localizadas no projeto em que a reserva foi criada (o projeto do proprietário) ou em qualquer projeto com que a reserva for compartilhada (projetos de consumidor).
  • zone

  • machineType

  • guestAccelerators.acceleratorType (se for o caso)

  • guestAccelerators.acceleratorCount (se for o caso)

  • minCpuPlatform

    • A VM e a reserva precisam ter exatamente a mesma configuração de minCpuPlatform. Por exemplo, definir minCpuPlatform como Intel Broadwell ao criar uma VM não corresponde a minCpuPlatform de Automatic em uma reserva.
  • localSsds.interface (se for o caso)

    • A reserva e a VM precisam ter o mesmo número de discos SSD locais com uma propriedade localSsds.interface correspondente para cada disco SSD local.
  • resourcePolicies (se for o caso)

  • locationHint (se for o caso)

    • Apenas se uma reserva especificar o campo locationHint. É possível especificar o campo locationHint apenas ao criar VMs usando REST.

Resolução: depois de identificar as propriedades que não correspondem, tente uma das seguintes opções:

  • Se as propriedades da VM não corresponderem à reserva, faça uma das seguintes ações:

    • Exclua a VM e crie uma uma nova VM com propriedades que correspondem às propriedades da reserva.

    • Atualize a VM para corresponder às propriedades da reserva.

  • Se as propriedades da reserva precisam corresponder às propriedades da VM, exclua a reserva e crie uma nova reserva que corresponda às propriedades da VM. Como alternativa, é possível criar uma reserva específica. Ao criar VMs para consumir uma reserva específica, você encontra erros se as propriedades da VM não corresponderem às propriedades da reserva.

Depois de atualizar a VM ou criar uma nova reserva, verifique se a VM está consumindo a reserva verificando o consumo de reserva.

A afinidade de reserva está incorreta

Problema: a afinidade de reserva da VM está configurada incorretamente. A afinidade de reserva de uma VM controla que uma VM pode consumir. Para verificar a afinidade da reserva da VM, faça o seguinte:

  1. Confira os detalhes de uma reserva e verifique se ela é consumida automaticamente ou específica. Para mais informações, consulte Tipo de consumo.

  2. Confira os detalhes da VM e verifique a afinidade de reserva.

Resolução: se a afinidade da reserva da VM e a reserva não corresponder, siga um destes procedimentos:

  • Crie uma nova VM com uma propriedade de afinidade de reserva que corresponda ao tipo de reserva.

  • Atualize a propriedade reservationAffinity na VM para especificar se a VM pode consumir qualquer reserva correspondente ou uma reserva específica. Para finalizar a atualização da VM, reinicie a VM.

Para verificar se a VM está consumindo a reserva, consulte Verificar o consumo de reserva.

A reserva já foi totalmente consumida

Problema: o número de VMs que consomem essa reserva corresponde ao número total de VMs reservadas. Isso indica que a reserva é totalmente consumida.

Solução: para verificar se a reserva está totalmente consumida, consulte os detalhes da reserva e verifique se o número de VMs que consomem a reserva corresponde ao total de VMs reservadas.

Se a reserva for totalmente consumida, tente uma das seguintes opções:

Se a reserva não estiver totalmente consumida, mas a VM não estiver consumindo a reserva, será possível solucionar ainda mais o problema fazendo o seguinte:

  1. Crie uma reserva específica com propriedades correspondentes.

  2. Crie uma VM para consumir a reserva. Se a VM e as propriedades da reserva não corresponderem, a criação da VM vai falhar.

Cota de recursos excedida para reservas compartilhadas

Problema: uma VM não está consumindo uma reserva compartilhada porque seu projeto não tem cota suficiente para os recursos que você está tentando consumir.

Resolução: as reservas compartilhadas têm requisitos de cota adicionais. Se você precisar aumentar a cota no projeto para consumir os recursos reservados, veja Solicitar uma cota maior na documentação de cotas do Cloud.

Contagem de VMs não restaurada após parar ou excluir uma VM

Problema: se você interromper, suspender ou excluir uma VM que está consumindo uma reserva, a operação precisará ser concluída antes que a VM não seja mais contabilizada na reserva e os recursos consumidos anteriormente estejam disponíveis novamente para consumo.

Resolução: aguarde alguns minutos para que a operação de interrupção, suspensão ou exclusão nas VMs seja concluída. Em seguida, para verificar se as VMs interrompidas, suspensas ou excluídas não contam mais na reserva, verifique o número total de VMs consumidas na reserva usando um dos seguintes métodos:

  • Recomendado: monitore a reserva e procure uma alteração nas medidas dela.

  • Visualize os detalhes da reserva e verifique se o valor do campo inUseCount diminuiu. Se o valor não diminuiu, uma ou mais VMs começaram a consumir a reserva enquanto a operação de interrupção, suspensão ou exclusão estava sendo concluída.

VMs que consomem reservas intencionalmente

Problema: durante a criação das reservas que são consumidas automaticamente (padrão), uma VM pode consumir essas reservas de forma não intencional.

Resolução: para evitar que uma ou mais VMs consumam uma reserva, siga um destes procedimentos: