Solucionar problemas de consumo de reserva


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

Dificuldade em rastrear o consumo de reservas

Problema : não é possível rastrear quais VMs estão consumindo uma reserva, embora você possa visualizar quantas VMs estão consumindo uma reserva verificando o consumo da reserva .

Solução : se você conseguir criar com êxito uma VM direcionada a uma reserva específica , a VM estará consumindo 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 obter mais informações sobre como rastrear o consumo de reservas, consulte Verificar o consumo de reservas .

Menos VMs disponíveis para consumo

Problema : o número de VMs reservadas fisicamente (o campo assuredCount ) não corresponde ao número de VMs reservadas especificadas em uma reserva (o campo count ). Isto significa que menos VMs são reservadas para o seu projeto e quaisquer projetos com os quais uma reserva partilhada é partilhada.

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

  • O projeto 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 no qual 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 no qual a reserva foi criada tenha sido suspenso, o Compute Engine fará o possível para resolver automaticamente uma discrepância entre os campos assuredCount e count em uma reserva dentro de 24 horas. Além disso, até que esta discrepância seja resolvida, Google Cloudcobra apenas pela capacidade fisicamente reservada.

Problemas para VMs que não consomem reservas

Se uma VM não conseguir consumir uma reserva, isso poderá ocorrer devido a um ou mais dos seguintes problemas:

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

Propriedades de VM incompatíveis

Problema : uma VM não pode consumir uma reserva com propriedades de VM diferentes.

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

  1. Veja os detalhes da reserva

  2. Ver os detalhes da VM

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

  • project

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

  • machineType

  • guestAccelerators.acceleratorType (se houver)

  • guestAccelerators.acceleratorCount (se houver)

  • minCpuPlatform

    • A VM e a reserva devem ter exatamente a mesma configuração minCpuPlatform . Por exemplo, definir minCpuPlatform como Intel Broadwell ao criar uma VM não corresponderá ao valor minCpuPlatform de Automatic em uma reserva.
  • localSsds.interface (se houver)

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

  • locationHint (se houver)

    • Somente se uma reserva especificar o campo locationHint . Você pode especificar o campo locationHint somente ao criar VMs usando REST.

Soluçã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, siga um destes procedimentos:

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

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

  • Se as propriedades da reserva corresponderem às propriedades da VM, exclua a reserva e crie uma nova reserva que corresponda às propriedades da VM. Opcionalmente, você pode criar uma reserva específica . Ao criar VMs para consumir uma reserva específica, você encontrará erros se as propriedades da VM não corresponderem às propriedades da reserva.

Após atualizar a VM ou criar uma nova reserva, verifique se a VM está consumindo a reserva verificando o consumo da reserva .

A afinidade da reserva está incorreta

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

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

  2. Veja os detalhes da VM e verifique a afinidade da reserva.

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

  • Crie uma nova VM com uma propriedade de afinidade de reserva que corresponda ao tipo da 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, você deve reiniciar a VM.

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

A reserva já foi totalmente consumida

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

Resolução : para verificar se a reserva foi totalmente consumida, visualize os detalhes da reserva e verifique se o número de VMs que consomem a reserva corresponde ao número total de VMs reservadas na reserva.

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

Se a reserva não for totalmente consumida, mas a VM não estiver consumindo a reserva, você poderá solucionar 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 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.

Solução : As reservas compartilhadas têm requisitos de cota adicionais . Se você precisar aumentar a cota em seu projeto para consumir os recursos reservados, consulte Solicitar uma cota maior na documentação do Cloud Quotas.

A contagem de VMs não foi restaurada após interromper ou excluir uma VM

Problema : se você interromper, suspender ou excluir uma VM que esteja consumindo uma reserva, a operação deverá ser concluída antes que a VM não seja mais contabilizada na reserva e os recursos consumidos anteriormente estejam novamente disponíveis 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 alteração nas medidas da reserva.

  • Visualize os detalhes da reserva e verifique se o valor do campo inUseCount diminuiu. Se o seu valor não diminuiu, então um ou mais VMs começaram a consumir a reserva enquanto a operação de parar, suspender ou eliminar estava a ser concluída.

VM consumindo reservas involuntariamente

Problema : quando você cria reservas que são consumidas automaticamente (padrão), uma VM pode consumir essas reservas involuntariamente.

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