Configurer la journalisation et la surveillance

Les clusters Anthos sur Bare Metal comprennent plusieurs options pour la journalisation et la surveillance de clusters, y compris les services gérés basés sur le cloud et des outils Open Source, mais aussi une compatibilité validée avec des solutions commerciales tierces. Cette page décrit ces options et fournit des conseils de base pour sélectionner la solution adaptée à votre environnement.

Options pour les clusters Anthos sur Bare Metal

Vous disposez de plusieurs options de journalisation et de surveillance pour vos clusters Anthos sur Bare Metal :

  • Cloud Logging et Cloud Monitoring, activés par défaut sur les composants du système Bare Metal
  • Prometheus et Grafana, disponibles depuis Cloud Marketplace
  • Configurations validées avec des solutions tierces

Cloud Logging et Cloud Monitoring

La suite Google Cloud Operations est la solution d'observabilité intégrée pour Google Cloud. Elle offre une solution de journalisation entièrement gérée, la collecte de métriques, la surveillance, la création de tableaux de bord et les alertes. Cloud Monitoring surveille les clusters Anthos sur Bare Metal de la même manière que les clusters GKE basés sur le cloud.

Les agents peuvent être configurés avec deux niveaux différents de journalisation et de surveillance :

  • Composants système uniquement (mode par défaut)
  • Composants système et applications

La journalisation et la surveillance offrent une solution idéale si vous recherchez une solution d'observabilité unique et facile à configurer, puissante et basée sur le cloud. Nous vous recommandons vivement d'utiliser Logging et Monitoring lorsque vous exécutez des charges de travail sur les clusters Anthos sur Bare Metal seulement ou lorsque vous les exécutez sur GKE et les clusters Anthos sur Bare Metal. Pour les applications avec des composants s'exécutant sur une infrastructure standard traditionnelle sur site et sur les clusters Anthos sur Bare Metal, vous pouvez envisager d'autres solutions pour une vue de bout en bout de ces applications.

Prometheus et Grafana

Prometheus et Grafana sont deux produits de surveillance Open Source populaires disponibles dans Cloud Marketplace :

  • Prometheus recueille des métriques sur les applications et le système.

  • Alertmanager gère l'envoi d'alertes à l'aide de différents mécanismes.

  • Grafana est un outil de création de tableaux de bord.

Prometheus et Grafana peuvent être activés sur chaque cluster d'administrateur et d'utilisateur. Prometheus et Grafana sont recommandés pour les équipes d'application ayant déjà une expérience de ces produits, ou pour les équipes opérationnelles qui préfèrent conserver les métriques d'application dans le cluster à des fins de dépannage des problèmes de connexion réseau.

Solutions tierces

Google a travaillé avec plusieurs fournisseurs de solutions tierces de journalisation et de surveillance pour faire en sorte que leurs produits fonctionnent correctement avec les clusters Anthos sur Bare Metal. Ces fournisseurs incluent notamment Datadog, Elastic et Splunk. D'autres solutions tierces validées seront ajoutées ultérieurement.

Les guides de solution suivants sont disponibles pour utiliser des solutions tierces avec les clusters Anthos sur Bare Metal :

Fonctionnement de Logging et Monitoring pour les clusters Anthos sur Bare Metal

Cloud Logging et Cloud Monitoring sont installés et activés dans chaque cluster dès la création d'un cluster d'administrateur ou d'utilisateur.

Les agents Stackdriver incluent plusieurs composants sur chaque cluster :

  • Opérateur Stackdriver (stackdriver-operator-*). Gère le cycle de vie de tous les autres agents Stackdriver déployés sur le cluster.

  • Ressource personnalisée Stackdriver. Ressource créée automatiquement dans le cadre du processus d'installation des clusters Anthos sur Bare Metal.

  • Aggrégateur de journaux Stackdriver (stackdriver-log-aggregator-*). Un objet Fluentd StatefulSet qui envoie des journaux à l'API Cloud Logging. Si les journaux ne peuvent pas être envoyés, Log Aggregator met les entrées de journal en mémoire tampon, jusqu'à 200 Go, et tente de les renvoyer pendant 24 heures maximum. Si le tampon est plein ou si Log Aggregator ne peut pas accéder à l'API Logging pendant plus de 24 heures, les journaux sont ignorés.

  • Agent de transfert de journaux Stackdriver (stackdriver-log-forwarder-*). Un DaemonSet Fluentbit qui transfère les journaux de chaque machine vers Stackdriver Log Aggregator.

  • Collecteur de métadonnées Stackdriver (stackdriver-metadata-agent-). Un déploiement qui envoie des métadonnées pour des ressources Kubernetes telles que des pods, des déploiements ou des nœuds à l'API Stackdriver Resource Metadata. Ces données sont utilisées pour enrichir les requêtes de métriques en vous permettant d'effectuer des requêtes par nom de déploiement, par nom de nœud ou même par nom de service Kubernetes.

Vous pouvez afficher tous les agents installés par Stackdriver en exécutant la commande suivante :

  kubectl -n kube-system get pods | grep stackdriver

La sortie de la commande ressemble à ceci :

stackdriver-log-aggregator-0                  1/1     Running   0   4h31m
stackdriver-log-aggregator-1                  1/1     Running   0   4h28m
stackdriver-log-forwarder-bpf8g               1/1     Running   0   4h31m
stackdriver-log-forwarder-cht4m               1/1     Running   0   4h31m
stackdriver-log-forwarder-fth5s               1/1     Running   0   4h31m
stackdriver-log-forwarder-kw4j2               1/1     Running   0   4h29m
stackdriver-metadata-agent-cluster-level...   1/1     Running   0   4h31m
stackdriver-operator-76ddb64d57-4tcj9         1/1     Running   0   4h37m

Métriques Cloud Monitoring

Pour obtenir la liste des métriques collectées par Cloud Monitoring, consultez la section métriques Anthos On-Prem et Anthos sur Bare Metal.

Configurer des agents Stackdriver pour les clusters Anthos sur Bare Metal

Les agents Stackdriver installés avec les clusters Anthos sur Bare Metal collectent des données sur les composants du système, en fonction de vos paramètres et de votre configuration, afin de maintenir et de résoudre les problèmes liés à vos clusters Anthos sur Bare Metal, dans l'un des modes suivants.

Composants système uniquement (mode par défaut)

Lors de l'installation, les agents Stackdriver sont configurés par défaut pour collecter les journaux et les métriques, y compris les détails des performances (par exemple, l'utilisation du processeur et de la mémoire), ainsi que des métadonnées similaires pour les composants système fournis par Google. Celles-ci comprennent toutes les charges de travail du cluster d'administrateur, ainsi que les charges de travail des clusters d'utilisateur dans les espaces de noms du système kube-system, gke-system, gke-connect, istio-system et config-management-system.

Stackdriver désactivé

Vous pouvez désactiver complètement les agents Stackdriver en supprimant la ressource personnalisée Stackdriver. Attention : Nous vous recommandons de ne pas gérer directement les ressources personnalisées Stackdriver.

Avant de désactiver Stackdriver, consultez la page d'assistance pour en savoir plus sur les conséquences que cela peut avoir sur les contrats de niveau de service de l'assistance Google Cloud.

Pour désactiver Stackdriver pour les clusters Anthos sur Bare Metal :

kubectl -n kube-system delete stackdrivers stackdriver

Les agents Stackdriver capturent les données stockées localement, suivant votre configuration de stockage et de conservation. Les données sont dupliquées dans le projet Google Cloud spécifié lors de l'installation, à l'aide d'un compte de service autorisé à écrire des données dans ce projet. Les agents Stackdriver peuvent être désactivés à tout moment, comme décrit précédemment. Les données collectées par les agents Stackdriver peuvent être gérées et supprimées comme n'importe quelle autre métrique ou n'importe quel élément de données de journal, comme décrit dans la documentation de Cloud Monitoring.

Configuration requise pour Logging et Monitoring

Plusieurs conditions de configuration sont requises pour activer Cloud Logging et Cloud Monitoring avec les clusters Anthos sur Bare Metal. Ces étapes sont incluses dans la section Configurer un compte de service à utiliser avec Logging et Monitoring sur la page "Activer les services Google" et dans la liste suivante :

  1. Vous devez créer un espace de travail Cloud Monitoring dans le projet Google Cloud. Pour ce faire, cliquez sur Monitoring dans la console Google Cloud et suivez le workflow.
  2. Vous devez activer les API Stackdriver suivantes :

  3. Vous devez attribuer les rôles IAM suivants au compte de service utilisé par les agents Stackdriver :

    • logging.logWriter
    • monitoring.metricWriter
    • stackdriver.resourceMetadata.writer
    • monitoring.dashboardEditor

Tarifs

Aucuns frais ne s'appliquent pour les journaux système et les métriques Anthos.

Dans un cluster Anthos sur Bare Metal, les journaux et les métriques du système Anthos incluent les éléments suivants :

  • Journaux et métriques de tous les composants d'un cluster d'administrateur
  • Journaux et métriques des composants de ces espaces de noms dans un cluster d'utilisateur : kube-system, gke-system, gke-connect, knative-serving, istio-system, monitoring-system, config-management-system, gatekeeper-system, cnrm-system

Pour en savoir plus, consultez la section Tarifs de la suite Google Cloud Operations.

Pour en savoir plus sur l'attribution de crédits pour les métriques Cloud Logging, contactez le service commercial au sujet des tarifs.