L'objectif principal de Google est de résoudre les incidents de production le plus rapidement possible. Pour ce faire, nous nous efforçons de comprendre votre configuration, d'analyser les journaux et les métriques et de collaborer avec nos partenaires pour résoudre rapidement les incidents.
Le service client Cloud propose différentes formules d'assistance adaptées à vos besoins. Toutes les formules de Cloud Customer Care incluent la compatibilité avec l'édition Enterprise de Google Kubernetes Engine (GKE) et Google Distributed Cloud. Si vous avez souscrit à une formule d'assistance Cloud Customer Care, vous bénéficiez déjà de la compatibilité avec GKE Enterprise et Google Distributed Cloud.
Pour en savoir plus, consultez le hub Cloud Customer Care.
Exigences concernant la prise en charge de Google Distributed Cloud
Pour résoudre efficacement les incidents critiques, vous devez effectuer les actions suivantes:
- Vérifiez que votre environnement est à jour et conforme aux délais de fin de service publiés. Pour en savoir plus, consultez la section Politique de compatibilité avec les versions.
- Activez Cloud Logging et Cloud Monitoring pour les composants système. Pour en savoir plus, consultez la section Outils d'assistance suivante.
Outils d'assistance
Pour résoudre un incident Google Distributed Cloud, l'assistance Cloud Customer Care s'appuie sur trois éléments d'information:
- La configuration de votre environnement
- Les journaux de vos clusters
- Les métriques de vos clusters
Configuration de votre environnement
Lorsque vous ouvrez une demande d'assistance, fournissez des informations clés sur la configuration de votre cluster en exécutant les commandes suivantes:
Pour tous les types de clusters, capturez des informations sur Kubernetes et vos nœuds en exécutant la commande
bmctl check cluster --snapshot
. Joignez le fichier tar obtenu à la demande d'assistance.Pour les clusters d'administrateur, hybrides et autonomes, vérifiez l'état de fonctionnement du cluster et des nœuds en exécutant la commande
bmctl check cluster
. Joignez les journaux générés à la demande d'assistance. Les journaux doivent exister dans le répertoirebmctl-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é :
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 nomscluster-user1
:apiVersion: baremetal.cluster.gke.io/v1 kind: HealthCheck metadata: generateName: healthcheck- namespace: cluster-user1 spec: clusterName: user1
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 qui utilise le fichier YAML créé à l'étape précédente. Dans l'exemple, la variableADMIN_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
Attendez que la tâche de vérification de l'état soit terminée. Pour ce faire, vérifiez si la tâche de vérification de l'état;é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 qui utilise la commandekubectl
et qui attend 30 minutes que la tâche de vérification de l'état#39;état se termine:kubectl --kubeconfig ADMIN_KUBECONFIG wait healthcheck healthcheck-7c4qf \ -n cluster-user1 --for=condition=Reconciling=False --timeout=30m
Une fois la tâche de vérification de l'état;état terminée, la commande
kubectl
précédente renvoie: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
Rassemblez tous les journaux du pod de la tâche de vérification de l'état l'état dans un fichier local à l'aide de la commande
kubectl
. Voici un exemple qui utilise l'exemple précédent de tâche de vérification de l'état'é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
Vous pouvez interroger les journaux à partir de l'explorateur de journaux.
Pour en savoir plus, consultez la section Configurer la journalisation et la surveillance.
Google Cloud CLI et accès distant au cluster
Si vous ouvrez une demande d'assistance, Cloud Customer Care peut vous demander un accès en lecture seule à distance à vos clusters, afin de diagnostiquer et de résoudre plus efficacement les problèmes. Pour que le service client Cloud 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 version de Google Cloud CLI doit être la version 401.0.0 ou ultérieure pour pouvoir accorder les autorisations nécessaires à Cloud Customer Care. 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 la 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 à distance pour les clusters GKE Enterprise.
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 la section Journaux du cluster.
Pour en savoir plus, consultez la section Configurer la journalisation et la surveillance.
Comment nous dépannons votre environnement
Voici un exemple type d'incident nécessitant une assistance :
L'administrateur du cluster ouvre une demande d'assistance dans la Google Cloud console auprès de Cloud Customer Care. Il sélectionne ensuite l'édition Enterprise de Google Kubernetes Engine (GKE) et Google Distributed Cloud comme Catégorie et Composant, respectivement. Il saisit les informations requises et joint à sa demande la sortie produite par
bmctl
.La demande d'assistance est transmise à un ingénieur d'assistance technique spécialisé dans Google Distributed Cloud.
L'ingénieur d'assistance examine le contenu de l'instantané pour connaître le contexte de l'environnement.
L'ingénieur d'assistance examine les journaux et les métriques du projet Google Cloud. Il saisit le numéro de la demande d'assistance comme justification de l'entreprise, laquelle est consignée en interne.
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'Cloud Customer Care prend en charge tous les composants logiciels fournis dans le cadre de Google Distributed Cloud et de Cloud Service Mesh, Policy Controller, Config Sync et Config Controller. Le tableau suivant fournit une liste plus complète des éléments compatibles et non compatibles:
Google Cloud pris en charge | 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) |
Google Cloud opérations, 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 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.
Modèle de responsabilité partagée
Pour exécuter 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 des différentes parties.
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 de cluster (par exemple, 1.30 → 1.31 → 1.32, mais pas 1.30 → 1.32). Lorsque vous mettez à niveau des pools de nœuds, vous pouvez parfois ignorer une version mineure. Pour en savoir plus sur la logique de mise à niveau, consultez la section Règles de version.
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 vos charges de travail d'applications. Cependant, nous proposons une assistance aux développeurs, 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.
Cette assistance aux développeurs optimale est disponible pour les clients disposant d'une formule d'assistance payante. Elle est traitée en tant que priorité P3 pour un problème bloquant un lancement, ou en tant que priorité P4 pour une consultation générale. Dans cette classification, les priorités de niveau 0 sont les plus élevées.