Résoudre les problèmes liés aux clusters enregistrés dans l'API GKE On-Prem

Cette page explique comment examiner les problèmes liés à la création d'un cluster d'utilisateur Google Distributed Cloud dans la console Google Cloud.

L'API GKE On-Prem est une API hébergée par Google Cloud qui vous permet de gérer le cycle de vie de vos clusters sur site à l'aide de Terraform et des outils Google Cloud standards. L'API GKE On-Prem s'exécute dans l'infrastructure de Google Cloud. Terraform, la console Google Cloud et la Google Cloud CLI sont des clients de l'API qui l'utilisent pour créer, mettre à jour, mettre à niveau et supprimer des clusters dans votre centre de données. Si vous avez créé le cluster à l'aide d'un client standard, il est enregistré dans l'API GKE On-Prem, ce qui signifie que vous pouvez utiliser les clients standards pour gérer le cycle de vie du cluster (à quelques exceptions près).

Si vous avez besoin d'une aide supplémentaire, contactez Cloud Customer Care.

Le cluster d'administrateur ne figure pas dans la liste déroulante Paramètres de base du cluster.

Vous devez enregistrer le cluster d'administrateur dans un parc avant de pouvoir créer des clusters d'utilisateur dans la console Google Cloud. Si le cluster d'administrateur ne figure pas dans la liste déroulante de la section Paramètres de base du cluster de la console Google Cloud, le cluster d'administrateur n'est pas enregistré ou a été enregistré avec la commande gcloud container fleet memberships register. Cette commande gcloud n'enregistre pas correctement les clusters d'administrateur.

Vérifiez l'état d'enregistrement :

  • Dans la console Google Cloud, accédez à la page Kubernetes Engine > Clusters, puis sélectionnez le projet Google Cloud dans lequel vous avez tenté de créer le cluster d'utilisateur.

    Accéder à la page "Clusters GKE"

    • Si le cluster d'administrateur n'apparaît pas dans la liste, consultez la section Enregistrer un cluster d'administrateur.

    • Si le cluster d'administrateur figure dans la liste, ce comportement indique qu'il a été enregistré à l'aide de la commande gcloud container hub memberships register. Cette commande gcloud n'enregistre pas correctement les clusters d'administrateur.

Pour résoudre le problème d'enregistrement, procédez comme suit:

  1. Supprimez l'appartenance au parc du cluster d'administrateur.

    gcloud container fleet memberships delete ADMIN_CLUSTER_NAME \
      --project=PROJECT_ID \
      --location=global
    
    • ADMIN_CLUSTER_NAME: nom du cluster d'administrateur.
    • PROJECT_ID: ID de votre projet hôte de parc. Il s'agit du projet que vous avez sélectionné lors de la tentative de création du cluster d'utilisateur dans la console Google Cloud.
  2. Suivez les étapes de la section Enregistrer un cluster d'administrateur pour réenregistrer le cluster.

Erreurs de création de cluster

Cette section décrit certaines erreurs qui se produisent lors de la création du cluster dans la console Google Cloud.

Erreur : La ressource existe déjà

La création du cluster d'utilisateur échoue et un message d'erreur semblable à celui-ci s'affiche :

Resource 'projects/1234567890/[...]/user-cluster1'
already exists
Request ID: 129290123128705826

Ce message d'erreur indique que le nom du cluster est déjà utilisé.

Pour résoudre ce problème, vous pouvez supprimer et recréer le cluster:

  1. Supprimez le cluster.
  2. Recréez le cluster avec un autre nom qui n'entre pas en conflit avec un cluster existant.

Erreur des groupes d'anti-affinité

La création du cluster d'utilisateur échoue et un message d'erreur semblable à celui-ci s'affiche :

- Validation Category: VCenter
    - [FATAL] Hosts for AntiAffinityGroups: Anti-affinity groups enabled with
    available vsphere host number 1 less than 3, please add more vsphere hosts
    or disable anti-affinity groups.

Les règles d'anti-affinité VMware Distributed Resource Scheduler (DRS) nécessitent au moins trois hôtes physiques dans votre environnement vSphere. Pour résoudre le problème, désactivez les groupes d'anti-affinité dans la section Fonctionnalités de la page Détails du cluster de votre cluster, comme suit :

  1. Dans la console Google Cloud, accédez à la page des clusters GKE.

    Accéder à la page "Clusters GKE"

  2. Sélectionnez le projet Google Cloud dans lequel se trouve le cluster d'utilisateur.

  3. Dans la liste des clusters, cliquez sur le nom du cluster, puis sur Afficher les détails dans le panneau Détails.

  4. Dans la section Fonctionnalités, cliquez sur Modifier.

  5. Désactivez l'option Activer les groupes d'anti-affinités, puis cliquez sur OK.

  6. La console Google Cloud affiche État du cluster : modifications en cours. Cliquez sur Afficher les détails pour afficher la Condition d'état de la ressource et les Messages d'état.

Erreur de conflit d'adresses IP

La création du cluster d'utilisateur échoue et un message d'erreur semblable à celui-ci s'affiche :

- Validation Category: Network Configuration
- [FAILURE] CIDR, VIP and static IP (availability and overlapping): user: user
  cluster control plane VIP "10.251.133.132" overlaps with
  example-cluster1/control plane VIP "10.251.133.132"

Vous ne pouvez pas modifier des champs tels que l'adresse IP virtuelle du plan de contrôle et l'adresse IP virtuelle d'entrée dans la section Équilibreur de charge de la page Détails du cluster de la console Google Cloud. Pour résoudre les problèmes d'adresses IP en conflit, supprimez et recréez le cluster:

  1. Supprimez le cluster.
  2. Créez à nouveau le cluster en utilisant des adresses IP qui n'entrent pas en conflit avec un cluster existant.

Supprimer les clusters non opérationnels

Un cluster peut se retrouver dans un état non opérationnel pour de nombreuses raisons, par exemple:

  • Problèmes de connectivité avec l'agent Connect ou l'environnement sur site.
  • Le cluster d'administrateur d'un cluster d'utilisateur a été supprimé, ou il existe des problèmes de connectivité entre les clusters d'administrateur et d'utilisateur.
  • La VM du cluster a été supprimée avant de supprimer le cluster.

Si la console ne parvient pas à supprimer un cluster, utilisez les commandes de gcloud CLI pour supprimer les ressources Google Cloud des clusters non opérationnels. Si vous n'avez pas récemment mis à jour la gcloud CLI, exécutez la commande suivante pour mettre à jour les composants:

gcloud components update

Supprimez ensuite les ressources Google Cloud.

Cluster d'utilisateur

  1. Supprimez le cluster d'utilisateur:

    gcloud container vmware clusters delete USER_CLUSTER_NAME \
      --project=PROJECT_ID \
      --location=REGION \
      --force \
      --allow-missing \
      --ignore-errors

    Remplacez les éléments suivants :

    • USER_CLUSTER_NAME: nom du cluster d'utilisateur à supprimer.

    • PROJECT_ID: ID du projet dans lequel le cluster est enregistré.

    • REGION: emplacement Google Cloud associé au cluster d'utilisateur. L'emplacement s'affiche dans la console.

      L'option --force supprime un cluster comportant des pools de nœuds. Sans l'option --force, vous devez d'abord supprimer les pools de nœuds, puis supprimer le cluster.

      L'option --allow-missing permet à la commande de se poursuivre si le cluster est introuvable.

      L'option --ignore-errors supprime les ressources Google Cloud lorsque les clusters d'administrateur et d'utilisateur sont inaccessibles. Certaines ressources F5 ou vSphere peuvent persister. Consultez la section Nettoyer les ressources pour en savoir plus sur le nettoyage des ressources restantes.

      Cette commande supprime le cluster s'il existe, ainsi que l'API GKE On-Prem et les ressources d'appartenance à un parc de Google Cloud.

  2. Vérifiez que les ressources de l'API GKE On-Prem ont été supprimées:

    gcloud container vmware clusters list \
      --project=PROJECT_ID \
      --location=-

    Lorsque vous définissez --location=-, cela signifie que tous les clusters de toutes les régions sont listés. Si vous devez limiter le champ d'application de la liste, définissez --location sur une région spécifique.

  3. Vérifiez que les ressources d'appartenance au parc ont été supprimées:

    gcloud container fleet memberships list \
      --project=PROJECT_ID

Cluster d'administrateur

  1. Si vous avez enregistré le cluster d'administrateur dans l'API GKE On-Prem, annulez-le:

    gcloud container vmware admin-clusters unenroll ADMIN_CLUSTER_NAME \
     --project=PROJECT_ID \
     --location=REGION \
     --allow-missing 
    

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_NAME: nom du cluster d'administrateur.
    • PROJECT_ID: ID du projet hôte du parc.
    • REGION: région Google Cloud.

    L'option --allow-missing annule l'enregistrement du cluster si l'appartenance au parc est introuvable.

    Cette commande supprime les ressources de l'API GKE On-Prem de Google Cloud.

  2. Supprimez le cluster du parc:

    gcloud container fleet memberships delete ADMIN_CLUSTER_NAME \
     --project=PROJECT_ID \
     --location=global

    Cette commande supprime les ressources d'appartenance à un parc de Google Cloud.

  3. Vérifiez que les ressources de l'API GKE On-Prem ont été supprimées:

    gcloud container fleet memberships delete ADMIN_CLUSTER_NAME --project=FLEET_HOST_PROJECT_ID
    

    Lorsque vous définissez --location=-, cela signifie que tous les clusters de toutes les régions sont listés. Si vous devez limiter le champ d'application de la liste, définissez --location sur une région spécifique.

  4. Vérifiez que les ressources d'appartenance au parc ont été supprimées:

    gcloud container fleet memberships list \
      --project=PROJECT_ID

Étapes suivantes

Si vous avez besoin d'une aide supplémentaire, contactez Cloud Customer Care.