Résoudre les problèmes d'utilisation des réservations

Ce document explique comment résoudre les problèmes liés à la consommation de réservations de ressources zonales Compute Engine.

Moins d'instances de calcul disponibles pour la consommation

Problème : le nombre d'instances Compute Engine physiquement réservées (champ assuredCount) est inférieur au nombre d'instances de calcul spécifié dans la réservation (champ count). Cette différence signifie que vous disposez de moins d'instances de calcul que prévu pour votre projet et pour tout projet avec lequel une réservation est partagée.

Ce problème peut survenir pour une ou plusieurs des raisons suivantes :

  • Google Cloud a suspendu un projet client ou un utilisateur l'a migré. Google Cloud a suspendu un projet avec lequel la réservation est partagée, un projet client ou un utilisateur a migré le projet client vers une autre organisation. Dans ce cas, Compute Engine diminue le champ assuredCount de la réservation du nombre d'instances de calcul que le projet client utilisait avant la migration ou la suspension.

  • Google Cloud a suspendu le projet propriétaire. Google Cloud a suspendu le projet dans lequel la réservation existe, à savoir le projet propriétaire. Dans ce cas, Compute Engine définit le champ assuredCount de la réservation sur 0.

  • Une erreur matérielle ou d'hôte a affecté la réservation. Dans ce cas, Compute Engine effectue les deux opérations suivantes dans la réservation :

    • Compute Engine définit le champ status sur DEGRADED.

    • Compute Engine diminue la valeur du champ assuredCount du nombre d'hôtes concernés.

Résolution : Sauf si le projet propriétaire de votre réservation est suspendu, Compute Engine s'efforce de résoudre l'écart entre les champs assuredCount et count dans les 24 heures. Pendant cette période,Google Cloud ne vous facture que la capacité réservée physiquement qui est indiquée dans le champ assuredCount. Si le problème n'est pas résolu sous 48 heures, contactez votre équipe chargée de votre compte ou l'assistance.

Problèmes pour les instances de calcul qui ne consomment pas de réservations

Si une instance de calcul ne peut pas consommer de réservation, cela peut être dû à un ou plusieurs des problèmes suivants :

Cette section explique comment identifier et résoudre chacun de ces problèmes, et comment vérifier la consommation des réservations.

Réservation dégradée

Problème : Vous essayez de créer une instance de calcul en utilisant une réservation, mais la création de l'instance de calcul échoue avec l'une des erreurs suivantes :

BACKEND_ERROR
GCE_STOCKOUT
INFEASIBLE
QUOTA_ERROR
ZONE_RESOURCE_POOL_EXHAUSTED

De plus, lorsque vous affichez les détails de la réservation, la valeur du champ status est définie sur DEGRADED. Cette valeur indique que certaines des machines réservées physiquement dans votre réservation ont rencontré une erreur matérielle ou d'hôte. Dans cet état, vous ne pouvez utiliser la réservation que pour créer des instances de calcul jusqu'au nombre spécifié dans le champ assuredCount. Tant que le problème n'est pas résolu, Google Cloud ne vous facture que le nombre d'instances de calcul réservées indiqué dans le champ assuredCount.

Résolution : Compute Engine s'efforce de résoudre le problème dans les 24 heures. Si le champ status de votre réservation est toujours défini sur DEGRADED après 48 heures, contactez votre équipe chargée du compte ou l'assistance pour obtenir de l'aide.

Propriétés d'instance de calcul non concordantes

Problème : une instance de calcul ne peut pas consommer de réservation qui aurait des propriétés d'instance de calcul différentes.

Pour identifier les propriétés qui ne correspondent pas entre l'instance de calcul et la réservation, affichez les propriétés de la réservation et de l'instance de calcul en procédant comme suit :

  1. Affichez les détails de la réservation.

  2. Afficher les détails de l'instance de calcul

Comparez ensuite les deux sorties pour vérifier que les propriétés suivantes correspondent exactement :

  • project

    • Si la réservation est partagée avec plusieurs projets (en particulier, si le champ shareType de la réservation est défini sur SPECIFIC_PROJECTS), les instances de calcul peuvent se trouver dans le projet où la réservation a été créée (le projet propriétaire) ou dans tous les projets avec lesquels la réservation est partagée (les projets clients).
  • zone

  • machineType

  • guestAccelerators.acceleratorType (le cas échéant)

  • guestAccelerators.acceleratorCount (le cas échéant)

  • minCpuPlatform

    • L'instance de calcul et la réservation doivent avoir exactement la même configuration minCpuPlatform. Par exemple, la définition de minCpuPlatform sur Intel Broadwell lors de la création d'une instance de calcul ne correspond pas à la valeur minCpuPlatform de Automatic dans une réservation.
  • localSsds.interface (le cas échéant)

    • La réservation et l'instance de calcul doivent avoir le même nombre de disques SSD locaux, avec une propriété localSsds.interface correspondante pour chaque disque SSD local.
  • resourcePolicies (le cas échéant)

  • locationHint (le cas échéant)

    • Uniquement si une réservation spécifie le champ locationHint. Vous ne pouvez spécifier le champ locationHint que lorsque vous créez des instances de calcul à l'aide de l'API REST.

Solution : après avoir identifié les propriétés qui ne correspondent pas, essayez l'une des solutions suivantes :

  • Si les propriétés de l'instance de calcul ne correspondent pas à celles de la réservation, procédez comme suit :

  • Si les propriétés de la réservation sont censées correspondre à celles de l'instance de calcul, supprimez la réservation et créez une réservation dont les propriétés correspondent à celles de l'instance de calcul. Vous pouvez également créer une réservation spécifique. Lorsque vous créez des instances de calcul pour consommer une réservation spécifique, vous rencontrez des erreurs si les propriétés de l'instance de calcul ne correspondent pas à celles de la réservation.

Après avoir mis à jour l'instance de calcul ou créé une réservation, vérifiez si l'instance de calcul consomme la réservation en vérifiant la consommation de réservations.

L'affinité de réservation est incorrecte

Problème : l'affinité de réservation de l'instance de calcul est mal configurée. L'affinité de réservation d'une instance de calcul contrôle les réservations qu'elle peut consommer. Pour vérifier l'affinité de réservation de votre instance de calcul, procédez comme suit :

  1. Affichez les détails d'une réservation et vérifiez s'il s'agit d'une réservation spécifique ou d'une réservation consommée automatiquement. Pour en savoir plus, consultez la section Type de consommation.

  2. Affichez les détails de l'instance de calcul et vérifiez l'affinité de réservation.

Solution : Si l'affinité de réservation de l'instance de calcul et la réservation ne correspondent pas, essayez l'une des solutions suivantes :

  • Créez une instance de calcul avec une propriété d'affinité de réservation correspondant au type de la réservation.

  • Mettez à jour la propriété reservationAffinity dans l'instance de calcul pour spécifier si l'instance de calcul peut consommer n'importe quelle réservation correspondante ou une réservation spécifique. Pour finaliser la mise à jour de l'instance de calcul, vous devez la redémarrer.

Pour vérifier si l'instance de calcul consomme la réservation, consultez Vérifier la consommation des réservations.

La réservation est déjà entièrement utilisée

Problème : le nombre d'instances de calcul qui consomment cette réservation correspond au nombre total d'instances de calcul réservées pour la réservation. Cela indique que la réservation est entièrement consommée.

Solution : Pour vérifier si la réservation a été entièrement consommée, affichez les détails de la réservation, puis vérifiez que le nombre d'instances de calcul qui consomment la réservation correspond au nombre total d'instances de calcul réservées dans la réservation.

Si la réservation est entièrement consommée, essayez l'une des solutions suivantes :

Si la réservation n'est pas entièrement consommée, mais que l'instance de calcul ne consomme pas la réservation, vous pouvez résoudre le problème en procédant comme suit :

  1. Créez une réservation spécifique dont les propriétés correspondent à celles de la VM.

  2. Créez une instance de calcul pour consommer la réservation. Si les propriétés de l'instance de calcul et de la réservation ne correspondent pas, la création de l'instance de calcul échoue.

Quota de ressources dépassé pour les réservations partagées

Problème : une instance de calcul ne consomme pas de réservation partagée, car votre projet ne dispose pas d'un quota suffisant pour les ressources que vous essayez de consommer.

Solution : les réservations partagées sont soumises à des exigences de quota supplémentaires. Si vous devez augmenter le quota de votre projet pour consommer les ressources réservées, consultez la section Demander un ajustement de quota dans la documentation de Cloud Quotas.

Le nombre d'instances de calcul n'est pas restauré après l'arrêt ou la suppression d'une instance de calcul

Problème : Si vous arrêtez, suspendez ou supprimez une instance de calcul qui consomme une réservation, l'opération doit se terminer avant que l'instance de calcul ne soit plus comptabilisée dans la réservation et que les ressources précédemment consommées soient à nouveau disponibles pour la consommation.

Résolution : Attendez quelques minutes que l'opération d'arrêt, de suspension ou de suppression des instances de calcul se termine. Ensuite, pour vérifier que les instances de calcul arrêtées, suspendues ou supprimées ne sont plus comptabilisées dans la réservation, vérifiez le nombre total d'instances de calcul consommées dans la réservation en utilisant l'une des méthodes suivantes :

  • Recommandé : Surveillez la réservation et recherchez une modification dans les mesures de la réservation.

  • Affichez les détails de la réservation et vérifiez si la valeur du champ inUseCount a diminué. Si sa valeur n'a pas diminué, cela signifie qu'une ou plusieurs instances de calcul ont commencé à consommer la réservation pendant la durée de l'opération d'arrêt, de suspension ou de suppression.

Instance de calcul consommant involontairement des réservations

Problème : lorsque vous créez des réservations consommées automatiquement (sélection par défaut), une instance de calcul peut consommer involontairement ces réservations.

Solution : pour éviter qu'une ou plusieurs instances de calcul consomment involontairement une réservation, essayez l'une des solutions suivantes :