Journalisation pour les clusters

Pour les journaux de cluster et d'application, les clusters Red Hat® OpenShift® on IBM Cloud® incluent des outils intégrés destinés à vous aider à gérer la santé de votre instance de cluster unique. Vous pouvez également configurer des outils d' IBM Cloud s pour l'analyse multi-clusters ou d'autres cas d'utilisation, tels que les modules complémentaires pour les clusters d' IBM Cloud Kubernetes Service: IBM Cloud Logs et IBM Cloud Monitoring.

Description des options de journalisation

Pour vous aider à comprendre quand utiliser les outils Red Hat OpenShift intégrés ou les intégrations IBM Cloud, passez en revue les informations ci-après.

IBM Cloud Logs

Interface utilisateur personnalisable pour la diffusion en direct des journaux, les alertes de problèmes de dépannage en temps réel et l'archivage des journaux.

  • Intégration rapide dans le cluster au moyen d'un script.
  • Journaux agrégés sur différents clusters et fournisseurs de cloud.
  • Accès à l'historique des journaux basé sur le plan de votre choix.
  • Haute disponibilité, évolutivité et conformité aux normes de sécurité de l'industrie.
  • Intégration avec IBM Cloud IAM pour la gestion des accès utilisateur.

Afficher les événements de gestion de cluster générés par l’API Red Hat OpenShift on IBM Cloud. Pour accéder à ces journaux, mettez à disposition une instance d'IBM Cloud Logs. Pour plus d'informations sur les types d'événement IBM Cloud Kubernetes Service dont vous pouvez assurer le suivi, voir Evénements Activity Tracker.

Outils de journalisation Red Hat OpenShift intégrés

Vue intégrée des journaux de pod dans la console Web Red Hat OpenShift.

  • Les journaux de pod intégrés ne sont pas configurés avec du stockage persistant. Vous devez effectuer l'intégration à une base de données cloud pour sauvegarder les données de journalisation et les rendre hautement disponibles, et gérer les journaux vous-même.

Pour configurer une pile OpenShift Container Platform Elasticsearch, Fluentd et Kibana EFK, consultez la section consacrée à l'installation de l'opérateur de journalisation du cluster. N'oubliez pas que vos noeuds worker doivent avoir au moins 4 coeurs et 32 Go de mémoire pour exécuter la pile de journalisation du cluster.

Outils de journalisation d'audit Red Hat OpenShift intégrés

La journalisation d'audit d'API permettant de surveiller les activités initiées par l'utilisateur n'est pas prise en charge actuellement.

Migration des agents de journalisation et de surveillance vers Cloud Logs

Le plug-in CLI d'observabilité ibmcloud ob et les points d'extrémité v2/observe ne sont plus pris en charge. Il n'existe pas de remplacement direct, mais vous pouvez désormais gérer vos intégrations de journalisation et de surveillance depuis la console ou via les Helm graphiques. Pour les dernières étapes, Déployer l'agent de journalisation pour OpenShift les clusters et Surveiller un Red Hat OpenShift cluster.

Vous ne pouvez plus utiliser le plug-in ob, Terraform ou l'API pour installer des agents d'observabilité sur un cluster ou pour modifier votre configuration existante. Les agents Sysdig continuent d'envoyer des métriques à l'instance IBM Cloud Monitoring spécifiée.

Révision des agents d'observabilité

Le plug-in d'observabilité installe des agents Sysdig dans l'espace de noms ibm-observe.

  1. Accédez à votre cluster Red Hat OpenShift.
  1. Examinez les cartes de configuration dans l'espace de noms ibm-observe.
    kubectl get cm -n ibm-observe
    
    Example output
    NAME                                   DATA   AGE
    e405f1fc-feba-4350-9337-e7e249af871c   6      25m
    f59851a6-ede6-4719-afa0-eee7ce65eeb5   6      20m
    
  1. Les agents d’observabilité installés par le plug-in d’observabilité utilisent une carte de configuration (configmap) contenant le GUID de l’instance d’ IBM Cloud Monitoring vers laquelle les métriques sont envoyées. Si votre cluster a des agents dans un espace de noms autre que ibm-observe ou si les configmaps dans ibm-observe ne sont pas nommés avec les GUID d'instance, alors ces agents n'ont pas été installés avec le plug-in d'observabilité IKS (ob).

Suppression des agents du plug-in d'observabilité

  1. Nettoyer les daemonsets et les configmaps.
    kubectl delete daemonset sysdig-agent -n ibm-observe
    kubectl delete configmap <sysdig-configmap> -n ibm-observe
    
  2. Optionnel : Supprimer l'espace de noms. Si aucune autre ressource n'est en cours d'exécution dans l'espace de noms.
    kubectl delete namespace ibm-observe
    

Une fois le plug-in supprimé, réinstallez les agents de journalisation et de surveillance dans votre cluster à l'aide du tableau de bord du cluster, de Terraform ou manuellement.

Pour plus d'informations, voir les liens suivants :

Utilisation de l'opérateur de journalisation de cluster

Pour déployer l'opérateur de journalisation de cluster et la pile OpenShift Container Platform sur votre cluster Red Hat OpenShift on IBM Cloud, consultez la documentation Red Hat OpenShift. Vous devez également mettre à jour l'instance de journalisation du cluster pour utiliser une classe de stockage IBM Cloud Block Storage.

  1. Préparez votre pool de noeuds worker pour exécuter l'opérateur.

    1. Créez un VPC ou un pool de noeuds worker classique en version d'au moins 4 coeurs et 32 Go de mémoire et 3 noeuds worker.
    2. Attribuez un libellé au pool de noeuds worker.
    3. Tacher le pool de travailleurs pour que les autres charges de travail ne puissent pas s'exécuter sur le pool de travailleurs.
  2. Accédez à votre cluster Red Hat OpenShift.

  3. Dans la perspective Administrateur de la console Web Red Hat OpenShift, cliquez sur Opérateurs > Opérateurs installés.

  4. Cliquez sur Journalisation de cluster.

  5. Dans la section API fournies, vignette Journalisation de cluster, cliquez sur Créer une instance.

  6. Modifiez la fichier YAML de configuration pour remplacer la classe de stockage du stockage des journaux ElasticSearch, gp2, par l'une des classes de stockage suivantes, qui varie selon votre fournisseur d'infrastructure de cluster.

    • Clusters classiques : ibmc-block-gold
    • Clusters de VPC : ibmc-vpc-block-10iops-tier
    ...
        elasticsearch:
          nodeCount: 3
          redundancyPolicy: SingleRedundancy
          storage:
            storageClassName: ibmc-block-gold #or ibmc-vpc-block-10iops-tier for VPC clusters
            size: 200G
    ...
    
  7. Modifiez le fichier YAML de configuration pour inclure le sélecteur de noeud et la tolérance pour le libellé du pool de noeuds worker et la teinte précédemment définie. Pour plus d'informations et des exemples, voir les documents Red Hat OpenShift suivants. Les exemples utilisent le libellé et la tolérance logging: clo-efk.

    • Sélecteur deNode. Ajoutez le sélecteur de noeud aux pods Elasticsearch (logstore), Kibana (visualization) et Fluentd (collector.logs).
        spec:
        logStore:
          elasticsearch:
            nodeSelector:
              logging: clo-efk
        ...
        visualization:
          kibana:
            nodeSelector:
              logging: clo-efk
        ...
        collection:
          logs:
            fluentd:
              nodeSelector:
                logging: clo-efk
        ```
    * [Tolérance](https://docs.redhat.com/en/documentation/openshift_container_platform/4.21/html/nodes/controlling-pod-placement-onto-nodes-scheduling#nodes-scheduler-taints-tolerations-about_nodes-scheduler-taints-tolerations){: external}. Ajoutez le sélecteur de noeud aux pods Elasticsearch (`logstore`), Kibana (`visualization`) et Fluentd (`collector.logs`).
    ```yaml {: codeblock}
        spec:
        logStore:
          elasticsearch:
            tolerations:
            - key: app
              value: clo-efk
              operator: "Exists"
              effect: "NoExecute"
        ...
        visualization:
          kibana:
            tolerations:
            - key: app
              value: clo-efk
              operator: "Exists"
              effect: "NoExecute"
        ...
        collection:
          logs:
            fluentd:
              tolerations:
              - key: app
                value: clo-efk
                operator: "Exists"
                effect: "NoExecute"
        ```
    
  8. Cliquez sur Créer.

  9. Vérifiez que les pods d'opérateur, Elasticsearch, Fluentd et Kibana sont tous à l'état En cours d'exécution.