Obtenir de l'aide

L'objectif principal de Google est de résoudre les incidents de production le plus rapidement possible. La compréhension de votre configuration, l'analyse des journaux et des métriques et la collaboration avec des partenaires nous aident à résoudre rapidement les incidents.

Google Cloud propose plusieurs formules d'assistance adaptées à vos besoins. Toutes les formules d'assistance Google Cloud sont compatibles avec Google Kubernetes Engine (GKE) Enterprise et Google Distributed Cloud. Si vous avez souscrit à une formule d'assistance Google Cloud, vous bénéficiez déjà de la compatibilité avec GKE Enterprise et Google Distributed Cloud.

Pour en savoir plus, consultez la documentation de l'assistance Google Cloud.

Conditions requises pour l'assistance Google Distributed Cloud

Pour résoudre efficacement les incidents critiques, vous devez effectuer les actions suivantes :

Outils d'assistance

Pour résoudre un incident dans Google Distributed Cloud, l'assistance de Google Cloud s'appuie sur trois éléments d'information:

Configuration de votre environnement

Lorsque vous ouvrez une demande d'assistance, l'exécution des commandes suivantes fournit des informations clés sur la configuration de votre cluster :

  • Pour tous les types de clusters, exécutez la commande bmctl check cluster --snapshot pour capturer des informations sur Kubernetes et vos nœuds. Joignez le fichier tar obtenu à la demande d'assistance.

  • Pour les clusters d'administrateur, hybrides et autonomes, exécutez la commande bmctl check cluster pour vérifier l'état de fonctionnement du cluster et des nœuds. Joignez les journaux générés à la demande d'assistance. Ils doivent exister dans le répertoire bmctl-workspace/[CLUSTER_NAME]/log/check-cluster-[TIMESTAMP].

  • Pour les clusters d'utilisateur, créez d'abord un fichier YAML de vérification d'état avec le nom et l'espace de noms du cluster, puis appliquez-le dans le cluster d'administrateur approprié :

    1. Créez un fichier YAML avec les propriétés healthcheck suivantes : Voici un exemple de contenu pour un cluster nommé user1 dans l'espace de noms cluster-user1 :

      apiVersion: baremetal.cluster.gke.io/v1
      kind: HealthCheck
      metadata:
        generateName: healthcheck-
        namespace: cluster-user1
      spec:
        clusterName: user1
      
    2. Après avoir créé le fichier YAML, appliquez la ressource personnalisée dans le cluster d'administrateur qui gère le cluster d'utilisateur à l'aide de la commande kubectl. Voici un exemple de commande utilisant le fichier YAML créé à l'étape précédente. Dans l'exemple, la variable ADMIN_KUBECONFIG spécifie le chemin d'accès au fichier kubeconfig du cluster d'administrateur :

      kubectl --kubeconfig ADMIN_KUBECONFIG create -f healthcheck-user1.yaml
      

      La commande renvoie la réponse suivante :

      healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf created
      
    3. Attendez que la tâche de vérification de l'état soit terminée en effectuant un test pour vérifier si la tâche de vérification de l'état est terminée. Dans l'exemple précédent, le nom de la tâche de vérification de l'état est healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf. Voici un exemple de test avec la commande kubectl qui attend 30 minutes que la tâche de vérification de l'état se termine :

      kubectl --kubeconfig ADMIN_KUBECONFIG wait healthcheck healthcheck-7c4qf \
          -n cluster-user1 --for=condition=Reconciling=False --timeout=30m
      

      Une fois l'opération terminée, cette commande renvoie le résultat suivant :

      healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf condition met
      

      Vous pouvez afficher les résultats de la vérification de l'état à l'aide de la commande suivante :

      kubectl --kubeconfig ADMIN_KUBECONFIG get healthcheck healthcheck-7c4qf \
          -n cluster-user1
      

      La commande renvoie le résultat suivant :

      NAME                PASS   AGE
      healthcheck-7c4qf   true   17m
      
    4. Rassemblez tous les journaux des pods de la tâche de vérification de l'état dans un fichier local à l'aide de la commande kubectl. Voici un exemple utilisant la tâche précédente de vérification de l'état :

      kubectl --kubeconfig ADMIN_KUBECONFIG logs -n cluster-user1 \
          -l baremetal.cluster.gke.io/check-name=healthcheck-7c4qf --tail=-1 > \
          healthcheck-7c4qf.log
      

Journaux de cluster

Lorsque vous créez un cluster Google Distributed Cloud, les agents Cloud Logging sont activés par défaut et ne concernent que les composants au niveau du système. Cette opération permet de répliquer les journaux système dans le projet Google Cloud associé au cluster. Les journaux au niveau du système proviennent des pods Kubernetes se trouvant dans les espaces de noms suivants :

  • kube-system
  • gke-system
  • gke-connect
  • istio-system
  • config-management-system
  • gatekeeper-system
  • cnrm-system
  • knative-serving

Les journaux peuvent être interrogés à partir de la console Cloud Logging.

Pour en savoir plus, consultez la page Logging et Monitoring.

Google Cloud CLI et accès distant au cluster

Si vous ouvrez une demande d'assistance, le Cloud Customer Care peut vous demander un accès en lecture seule à distance à vos clusters afin de diagnostiquer et de résoudre les problèmes plus efficacement. Pour que l'équipe d'assistance dispose d'un accès suffisant pour résoudre à distance le problème de votre cluster, assurez-vous d'avoir installé et mis à jour la dernière version de la Google Cloud CLI. La Google Cloud CLI doit être à la version 401.0.0 ou ultérieure pour accorder au Cloud Customer Care les autorisations nécessaires. Nous vous recommandons de mettre à jour régulièrement Google Cloud CLI afin de bénéficier des autorisations ajoutées et d'autres améliorations.

Pour installer les derniers composants de gcloud CLI, utilisez la commande gcloud components update. Pour en savoir plus sur l'octroi à Cloud Customer Care d'un accès en lecture seule et à distance à vos clusters, consultez la page Assistance Google Cloud pour vos clusters enregistrés.

Métriques de cluster

En plus des journaux, l'agent Cloud Monitoring capture également les métriques. Cette opération permet de répliquer les métriques au niveau du système dans le projet Google Cloud associé au cluster. Les métriques au niveau du système proviennent de pods Kubernetes exécutés dans les mêmes espaces de noms que ceux répertoriés dans les journaux.

Pour en savoir plus, consultez la page Logging et Monitoring.

Comment nous dépannons votre environnement

Voici un exemple type d'incident nécessitant une assistance :

  1. L'administrateur du cluster ouvre une demande d'assistance dans la console Google Cloud ou dans le centre d'assistance Google Cloud, et sélectionne respectivement Google Kubernetes Engine (GKE) Enterprise et Google Distributed Cloud comme catégorie et composant. Ils saisissent les informations requises et joignent le résultat des commandes bmctl pertinentes au cas.

  2. Cette demande d'assistance est transmise à un ingénieur d'assistance technique spécialiste de Google Distributed Cloud.

  3. L'ingénieur d'assistance examine le contenu de l'instantané pour connaître le contexte de l'environnement.

  4. L'ingénieur d'assistance examine les journaux et les métriques du projet Google Cloud, en saisissant le numéro de la demande d'assistance comme justification de l'entreprise, laquelle est consignée en interne.

  5. L'ingénieur d'assistance répond à la demande par une évaluation et une recommandation. L'ingénieur d'assistance et l'utilisateur continuent de tenter de résoudre le problème jusqu'à ce qu'ils trouvent une solution.

Quelles sont les fonctionnalités acceptées par Google ?

En règle générale, l'équipe d'assistance Cloud accepte tous les composants logiciels fournis dans le cadre de Google Distributed Cloud et Cloud Service Mesh, Policy Controller, Config Sync et Config Controller. Consultez le tableau suivant pour obtenir une liste plus complète des éléments compatibles et non compatibles :

Compatibilité Google Cloud Non compatible
Kubernetes et l'environnement d'exécution des conteneurs Choix de l'équilibreur de charge (équilibrage de charge manuel) par le client
Connexion et l'agent Connect Code client (voir Assistance aux développeurs)
Opérations Google Cloud, Monitoring, Logging et agents Choix du système d'exploitation par le client
Équilibreur de charge groupé Serveur physique ou virtuel, stockage et réseau
Contrôleur d'entrée Systèmes externes de DNS, de DHCP et de gestion des identités
Service d'identité GKE
Cloud Service Mesh
Policy Controller
Config Sync
Config Controller

Politique de compatibilité avec les versions

La compatibilité de Google Distributed Cloud est conforme à la politique d'assistance GKE Enterprise. Google est compatible avec chaque version mineure de Google Distributed Cloud au dernier des termes suivants :

  • 12 mois après la publication initiale de la version mineure.
  • Publication de la troisième version mineure suivante.
Pour connaître les dates de publication des versions mineures les plus récentes de GKE Enterprise et les premières dates de fin de vie, consultez la période d'assistance GKE Enterprise.

Pour obtenir la liste des versions compatibles et non compatibles de Google Distributed Cloud, consultez la section Gestion des versions.

Pour obtenir des informations sur les versions liées aux mises à niveau de cluster, consultez la section Règles de version pour les mises à niveau.

Modèle de responsabilité partagée

Pour gérer une application de production critique sur Google Distributed Cloud, différentes responsabilités doivent être assumées par plusieurs groupes. Bien que cette liste ne soit pas exhaustive, les sections suivantes répertorient les rôles et les responsabilités concernés.

Responsabilités de Google

  • Maintenance et distribution du package logiciel Google Distributed Cloud.
  • Informer les utilisateurs des mises à niveau disponibles pour Google Distributed Cloud et produire des scripts de mise à niveau pour la version précédente ; Google Distributed Cloud n'est compatible qu'avec les mises à niveau séquentielles (exemple : 1.2 → 1.3 → 1.4, et non 1.2 → 1.4).
  • Opération des services Connect et Cloud Operations
  • Résolution des problèmes, solutions palliatives et correction de la cause principale des problèmes liés aux composants fournis par Google.

Responsabilités des utilisateurs

  • Administration globale du système pour les clusters sur site
  • Gestion de toute charge de travail d'application déployée sur le cluster
  • Exécution, maintenance et correction de l'infrastructure du centre de données, y compris les réseaux, les serveurs, le système d'exploitation, le stockage et la connectivité à Google Cloud
  • Exécution, gestion et correction des équilibreurs de charge réseau si l'option d'équilibrage de charge manuel est choisie
  • Mise à niveau régulière des versions de Google Distributed Cloud.
  • Surveillance du cluster et des applications et réponse aux incidents éventuels
  • Déploiement des agents Cloud Operations dans les clusters
  • Partage avec Google des informations concernant l'environnement à des fins de dépannage

Assistance aux développeurs

Google ne propose pas d'assistance spécifique pour les charges de travail de vos applications. Cependant, nous proposons une assistance aux développeurs au mieux, afin que votre équipe puisse exécuter des applications sur Google Distributed Cloud. Une implication à un stade précoce du développement peut prévenir des incidents critiques ultérieurs au cours du déploiement.

L'assistance aux développeurs, optimisée, est disponible pour les clients bénéficiant d'une formule d'assistance payante. Elle est traitée en tant que priorité P3 pour un problème bloquant un lancement, ou P4 pour une consultation générale. Dans cette classification, les priorités de niveau 0 sont les plus élevées.