Rechercher

Chapitre 5. Installation du sous-système de journalisation pour Red Hat OpenShift

download PDF

Vous pouvez installer le sous-système de journalisation pour Red Hat OpenShift en déployant les opérateurs OpenShift Elasticsearch et Red Hat OpenShift Logging. L'opérateur OpenShift Elasticsearch crée et gère le cluster Elasticsearch utilisé par OpenShift Logging. L'opérateur du sous-système de journalisation crée et gère les composants de la pile de journalisation.

Le processus de déploiement du sous-système de journalisation sur OpenShift Container Platform est le suivant :

5.1. Installation du sous-système de journalisation pour Red Hat OpenShift à l'aide de la console web

Vous pouvez utiliser la console web d'OpenShift Container Platform pour installer les opérateurs OpenShift Elasticsearch et Red Hat OpenShift Logging.

Note

Si vous ne souhaitez pas utiliser le magasin de logs Elasticsearch par défaut, vous pouvez supprimer les composants internes Elasticsearch logStore et Kibana visualization de la ressource personnalisée (CR) ClusterLogging. La suppression de ces composants est facultative mais permet d'économiser des ressources. Pour plus d'informations, voir les ressources supplémentaires de cette section.

Conditions préalables

  • Assurez-vous que vous disposez du stockage persistant nécessaire pour Elasticsearch. Notez que chaque nœud Elasticsearch nécessite son propre volume de stockage.

    Note

    Si vous utilisez un volume local pour le stockage persistant, n'utilisez pas de volume de blocs bruts, qui est décrit avec volumeMode: block dans l'objet LocalVolume. Elasticsearch ne peut pas utiliser de volumes de blocs bruts.

    Elasticsearch est une application gourmande en mémoire. Par défaut, OpenShift Container Platform installe trois nœuds Elasticsearch avec des demandes de mémoire et des limites de 16 Go. Cet ensemble initial de trois nœuds OpenShift Container Platform peut ne pas avoir assez de mémoire pour faire fonctionner Elasticsearch dans votre cluster. Si vous rencontrez des problèmes de mémoire liés à Elasticsearch, ajoutez des nœuds Elasticsearch supplémentaires à votre cluster plutôt que d'augmenter la mémoire des nœuds existants.

Procédure

Pour installer OpenShift Elasticsearch Operator et Red Hat OpenShift Logging Operator à l'aide de la console web OpenShift Container Platform :

  1. Installer l'opérateur OpenShift Elasticsearch :

    1. Dans la console web d'OpenShift Container Platform, cliquez sur Operators OperatorHub.
    2. Choisissez OpenShift Elasticsearch Operator dans la liste des opérateurs disponibles et cliquez sur Install.
    3. Assurez-vous que le site All namespaces on the cluster est sélectionné sous Installation Mode.
    4. Assurez-vous que openshift-operators-redhat est sélectionné sous Installed Namespace.

      Vous devez spécifier l'espace de noms openshift-operators-redhat. L'espace de noms openshift-operators peut contenir des opérateurs communautaires, qui ne sont pas fiables et qui pourraient publier une métrique portant le même nom que la métrique, ce qui provoquerait des conflits.

    5. Sélectionnez Enable operator recommended cluster monitoring on this namespace.

      Cette option définit l'étiquette openshift.io/cluster-monitoring: "true" dans l'objet Namespace. Vous devez sélectionner cette option pour vous assurer que la surveillance des clusters récupère l'espace de noms openshift-operators-redhat.

    6. Sélectionnez stable-5.x comme Update Channel.
    7. Sélectionnez un site Approval Strategy.

      • La stratégie Automatic permet à Operator Lifecycle Manager (OLM) de mettre automatiquement à jour l'opérateur lorsqu'une nouvelle version est disponible.
      • La stratégie Manual exige qu'un utilisateur disposant des informations d'identification appropriées approuve la mise à jour de l'opérateur.
    8. Cliquez sur Install.
    9. Vérifiez que l'OpenShift Elasticsearch Operator est installé en passant à la page Operators Installed Operators.
    10. Veillez à ce que OpenShift Elasticsearch Operator figure dans tous les projets dont l'adresse Status est Succeeded.
  2. Installez l'opérateur de journalisation Red Hat OpenShift :

    1. Dans la console web d'OpenShift Container Platform, cliquez sur Operators OperatorHub.
    2. Choisissez Red Hat OpenShift Logging dans la liste des opérateurs disponibles et cliquez sur Install.
    3. Assurez-vous que le site A specific namespace on the cluster est sélectionné sous Installation Mode.
    4. Assurez-vous que Operator recommended namespace est openshift-logging sous Installed Namespace.
    5. Sélectionnez Enable operator recommended cluster monitoring on this namespace.

      Cette option définit l'étiquette openshift.io/cluster-monitoring: "true" dans l'objet Namespace. Vous devez sélectionner cette option pour vous assurer que la surveillance des clusters récupère l'espace de noms openshift-logging.

    6. Sélectionnez stable-5.x comme Update Channel.
    7. Sélectionnez un site Approval Strategy.

      • La stratégie Automatic permet à Operator Lifecycle Manager (OLM) de mettre automatiquement à jour l'opérateur lorsqu'une nouvelle version est disponible.
      • La stratégie Manual exige qu'un utilisateur disposant des informations d'identification appropriées approuve la mise à jour de l'opérateur.
    8. Cliquez sur Install.
    9. Vérifiez que Red Hat OpenShift Logging Operator est installé en passant à la page Operators Installed Operators.
    10. Assurez-vous que Red Hat OpenShift Logging est listé dans le projet openshift-logging avec un Status de Succeeded.

      Si l'opérateur n'apparaît pas tel qu'il a été installé, il convient de poursuivre le dépannage :

      • Passez à la page Operators Installed Operators et vérifiez que la colonne Status ne comporte pas d'erreurs ou de défaillances.
      • Passez à la page Workloads Pods et vérifiez les journaux de tous les pods du projet openshift-logging qui signalent des problèmes.
  3. Créer une instance OpenShift Logging :

    1. Passez à la page Administration Custom Resource Definitions.
    2. Sur la page Custom Resource Definitions, cliquez sur ClusterLogging.
    3. Sur la page Custom Resource Definition details, sélectionnez View Instances dans le menu Actions.
    4. Sur la page ClusterLoggings, cliquez sur Create ClusterLogging.

      Il se peut que vous deviez rafraîchir la page pour charger les données.

    5. Dans le champ YAML, remplacez le code par le suivant :

      Note

      Cette configuration par défaut d'OpenShift Logging devrait prendre en charge un large éventail d'environnements. Consultez les rubriques sur le réglage et la configuration des composants du sous-système de journalisation pour obtenir des informations sur les modifications que vous pouvez apporter à votre cluster OpenShift Logging.

      apiVersion: "logging.openshift.io/v1"
      kind: "ClusterLogging"
      metadata:
        name: "instance" 1
        namespace: "openshift-logging"
      spec:
        managementState: "Managed"  2
        logStore:
          type: "elasticsearch"  3
          retentionPolicy: 4
            application:
              maxAge: 1d
            infra:
              maxAge: 7d
            audit:
              maxAge: 7d
          elasticsearch:
            nodeCount: 3 5
            storage:
              storageClassName: "<storage_class_name>" 6
              size: 200G
            resources: 7
                limits:
                  memory: "16Gi"
                requests:
                  memory: "16Gi"
            proxy: 8
              resources:
                limits:
                  memory: 256Mi
                requests:
                  memory: 256Mi
            redundancyPolicy: "SingleRedundancy"
        visualization:
          type: "kibana"  9
          kibana:
            replicas: 1
        collection:
          logs:
            type: "fluentd"  10
            fluentd: {}
      1
      Le nom doit être instance.
      2
      L'état de gestion d'OpenShift Logging. Dans certains cas, si vous modifiez les paramètres par défaut d'OpenShift Logging, vous devez définir ce paramètre à Unmanaged. Cependant, un déploiement non géré ne reçoit pas de mises à jour jusqu'à ce qu'OpenShift Logging soit replacé dans un état géré.
      3
      Paramètres de configuration d'Elasticsearch. En utilisant le CR, vous pouvez configurer la politique de réplication et le stockage persistant.
      4
      Spécifiez la durée pendant laquelle Elasticsearch doit conserver chaque source de journal. Saisissez un nombre entier et une désignation de temps : semaines(w), heures(h/H), minutes(m) et secondes(s). Par exemple, 7d pour sept jours. Les journaux antérieurs à maxAge sont supprimés. Vous devez spécifier une politique de rétention pour chaque source de logs, sinon les index Elasticsearch ne seront pas créés pour cette source.
      5
      Spécifiez le nombre de nœuds Elasticsearch. Voir la note qui suit cette liste.
      6
      Saisissez le nom d'une classe de stockage existante pour le stockage Elasticsearch. Pour de meilleures performances, spécifiez une classe de stockage qui alloue un stockage en bloc. Si vous ne spécifiez pas de classe de stockage, OpenShift Logging utilise un stockage éphémère.
      7
      Spécifiez les demandes de CPU et de mémoire pour Elasticsearch si nécessaire. Si vous laissez ces valeurs vides, OpenShift Elasticsearch Operator définit des valeurs par défaut qui devraient être suffisantes pour la plupart des déploiements. Les valeurs par défaut sont 16Gi pour la demande de mémoire et 1 pour la demande de CPU.
      8
      Spécifiez les demandes de CPU et de mémoire pour le proxy Elasticsearch si nécessaire. Si vous laissez ces valeurs vides, OpenShift Elasticsearch Operator définit des valeurs par défaut qui devraient être suffisantes pour la plupart des déploiements. Les valeurs par défaut sont 256Mi pour la demande de mémoire et 100m pour la demande de CPU.
      9
      Paramètres de configuration de Kibana. En utilisant le CR, vous pouvez mettre à l'échelle Kibana pour la redondance et configurer le CPU et la mémoire pour vos nœuds Kibana. Pour plus d'informations, voir Configuring the log visualizer.
      10
      Paramètres pour la configuration de Fluentd. En utilisant le CR, vous pouvez configurer les limites de CPU et de mémoire de Fluentd. Pour plus d'informations, voir Configuring Fluentd.
      Note

      Le nombre maximum de nœuds de plan de contrôle Elasticsearch est de trois. Si vous spécifiez une adresse nodeCount supérieure à 3, OpenShift Container Platform crée trois nœuds Elasticsearch qui sont des nœuds éligibles au rôle de maître, avec les rôles de maître, de client et de données. Les nœuds Elasticsearch supplémentaires sont créés en tant que nœuds de données uniquement, avec les rôles de client et de données. Les nœuds du plan de contrôle effectuent des actions à l'échelle du cluster, telles que la création ou la suppression d'un index, l'allocation de shards et le suivi des nœuds. Les nœuds de données détiennent les nuages et effectuent des opérations liées aux données telles que CRUD, la recherche et les agrégations. Les opérations liées aux données sont gourmandes en E/S, en mémoire et en CPU. Il est important de surveiller ces ressources et d'ajouter des nœuds de données supplémentaires si les nœuds actuels sont surchargés.

      Par exemple, si nodeCount=4, les nœuds suivants sont créés :

      $ oc get deployment

      Exemple de sortie

      cluster-logging-operator       1/1     1            1           18h
      elasticsearch-cd-x6kdekli-1    0/1     1            0           6m54s
      elasticsearch-cdm-x6kdekli-1   1/1     1            1           18h
      elasticsearch-cdm-x6kdekli-2   0/1     1            0           6m49s
      elasticsearch-cdm-x6kdekli-3   0/1     1            0           6m44s

      Le nombre d'unités primaires pour les modèles d'index est égal au nombre de nœuds de données Elasticsearch.

    6. Cliquez sur Create. Cela crée les composants du sous-système de journalisation, la ressource personnalisée Elasticsearch et ses composants, ainsi que l'interface Kibana.
  4. Vérifier l'installation :

    1. Passez à la page Workloads Pods.
    2. Sélectionnez le projet openshift-logging.

      Vous devriez voir plusieurs pods pour OpenShift Logging, Elasticsearch, Fluentd, et Kibana similaires à la liste suivante :

      • cluster-logging-operator-cb795f8dc-xkckc
      • collecteur-pb2f8
      • elasticsearch-cdm-b3nqzchd-1-5c6797-67kfz
      • elasticsearch-cdm-b3nqzchd-2-6657f4-wtprv
      • elasticsearch-cdm-b3nqzchd-3-588c65-clg7g
      • fluentd-2c7dg
      • fluentd-9z7kk
      • fluentd-br7r2
      • fluentd-fn2sb
      • fluentd-zqgqx
      • kibana-7fb4fd4cc9-bvt4p
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.