Le Agent de journalisation
Vous pouvez configurer le Agent de journalisation pour collecter et envoyer directement les journaux d'infrastructure et d'application à une instance IBM Cloud Logs.
Le Agent de journalisation est basé sur l'agent open-source Fluent Bit qui est utilisé pour collecter et traiter les données de log. Vous pouvez déployer le Agent de journalisation dans les environnements pris en charge et gérer des données provenant de sources et de formats divers.
Le diagramme suivant montre la vue de haut niveau lorsque la destination est une instance IBM Cloud Logs:
A propos d'Agent de journalisation
Lorsque vous utilisez le Agent de journalisation pour envoyer des logs au service IBM Cloud Logs, les logs que vous envoyez doivent inclure une valeur pour les champs de métadonnées 'applicationName et 'subsystemName Par défaut, lorsque vous configurez l'agent Agent de journalisation, l'agent définit des valeurs par défaut pour ces champs. Vous pouvez configurer vos propres valeurs personnalisées pour remplacer les valeurs par défaut.
- Pour plus d'informations sur les valeurs par défaut, voir Champs de métadonnées.
- Pour plus d'informations sur la configuration de l'agent, voir Configuration de l'agent pour définir des valeurs personnalisées pour les champs de métadonnées applicationName et subsystemName.
- Pour plus d'informations sur la façon dont Agent de journalisation analyse les sévérités, voir Comprendre comment Agent de journalisation analyse les sévérités.
Agent de journalisation pour les environnements orchestrés
Vous pouvez déployer le Agent de journalisation sur un Red Hat OpenShift on IBM Cloud ou IBM Cloud Kubernetes Service cluster.
Vous pouvez déployer l'agent sur des clusters que vous exécutez sur site, dans IBM Cloud, ou dans un nuage différent.
Le Agent de journalisation est un ensemble de démons conçu pour qu'un pod s'exécute sur chaque nœud d'un cluster. Chaque module collectera les journaux pertinents pour le nœud sur lequel il s'exécute. Le Agent de journalisation transmet alors ces journaux au service IBM Cloud Logs.
Par défaut, l'Agent de journalisation surveille et collecte les données de connexion des fichiers correspondant au modèle de chemin spécifié dans " /var/log/containers/, en excluant les données de connexion des fichiers correspondant
au modèle d'exclusion. L'intervalle de rafraîchissement est fixé à 10 secondes. Vous pouvez modifier ces valeurs et d'autres encore dans la carte de configuration logger-agent-config. Pour plus d'informations, voir Filtrage des journaux.
Vous pouvez déployer l'agent dans les plateformes suivantes :
-
Clusters Kubernetes
Pour plus d'informations, voir Déploiement du Agent de journalisation sur un Kubernetes cluster à l'aide d'un Helm graphique.
-
Clusters OpenShift
Pour plus d'informations, voir Déploiement du Agent de journalisation sur OpenShift à l'aide d'un Helm graphique.
Le diagramme suivant montre la vue de haut niveau lorsque la source des journaux est un Kubernetes ou OpenShift cluster :
Agent de journalisation pour les environnements non orchestrés
Vous pouvez déployer le Agent de journalisation dans les environnements Linux et Windows.
Vous devez configurer les fichiers journaux que l'Agent de journalisation surveille et transmet ses données à votre instance IBM Cloud Logs.
L'agent s'exécute en tant que démon Linux en utilisant systemd. Vous pouvez gérer l'agent en utilisant systemctl.
Les plateformes suivantes sont prises en charge :
- RHEL 8
- RHEL 9
- Ubuntu 20
- Ubuntu 22
- Debian 11
- Debian 12
- Windows Server 2016
- Windows Server 2019
- Serveur Windows 2022
- Windows 10 Enterprise
- Windows 11 Enterprise
Pour plus d'informations, voir Gestion de l'agent dans les environnements Linux ou Gestion de l'agent dans les environnements Windows.
Méthodes d'autorisation
Vous pouvez utiliser un identifiant de service ou un profil de confiance comme identité utilisée par l'agent pour s'authentifier auprès du service IBM® Cloud Logs
Choisissez une méthode d'autorisation prise en charge pour l'environnement dans lequel vous prévoyez de déployer l'agent :
| Environnement | Clé d'API de l'ID de service | Profil sécurisé |
|---|---|---|
| IBM Cloud Cluster Kubernetes | Pris en charge | Pris en charge |
| IBM Cloud Cluster OpenShift | Pris en charge | Pris en charge |
| IBM Cloud Linux VSI | Pris en charge | Pris en charge |
| IBM Cloud VSI Windows | Pris en charge | Pris en charge |
| Cluster Kubernetes sur site | Pris en charge | Non pris en charge |
| Cluster OpenShift sur site | Pris en charge | Non pris en charge |
| Serveur Linux sur site | Pris en charge | Non pris en charge |
| Autres clusters Kubernetes dans le nuage | Pris en charge | Non pris en charge |
| Autres clusters Cloud OpenShift | Pris en charge | Non pris en charge |
| Autres serveurs Linux en nuage | Pris en charge | Non pris en charge |
Vous ne pouvez utiliser les profils de confiance pour authentifier les ressources IBM Cloud avec une instance IBM Cloud Logs que lorsque la ressource de calcul et l'instance sont situées dans le même compte.
Pour envoyer des journaux à partir d'un cluster Kubernetes provisionné dans un compte IBM Cloud différent de l'instance IBM Cloud Logs, vous ne pouvez utiliser qu'une clé API d'identification de service comme méthode d'autorisation de l'agent.
Pour plus d'informations sur la manière de générer une clé API, voir Générer une clé API pour l'ingestion en utilisant un identifiant de service pour l'authentification.
Pour plus d'informations sur la création du profil de confiance, voir Générer un profil de confiance pour l'ingestion.
Formats pris en charge
L'agent prend en charge les formats d'entrée suivants :
- JSON
- apache
- apache2
- apache_error
- nginx
- docker (JSON avec le format d'horodatage spécifique à docker)
- cri
- syslog