Centreon Monitoring Agent
Introduction​
L'Agent de supervision Centreon (Centreon Monitoring Agent, CMA) collecte des métriques et calcule des statuts sur les serveurs qu'il supervise, et les envoie à Centreon. Les plugins Centreon comme les plugins personnalisés basés sur Nagios sont compatibles avec l'agent.
Limitations​
L'Agent de supervision Centreon est en phase Beta. Les limitations suivantes s'appliquent :
- Le périmètre de supervision supporté est limité, de nouveaux contrôles (natifs) seront apportés dans la version définitive.
- Une configuration manuelle est à réaliser. Dans la version définitive, celle-ci sera possible via l'interface utilisateur, et largement automatisée.
OS supportés​
L'agent peut être installé sur et superviser les OS suivants :
- Linux
- Windows
- Alma 8
- Alma 9
- Debian 11
- Debian 12
- Ubuntu 22.04 LTS
- Windows 10
- Windows 11
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
Étape 1: Configurez Centreon​
Installez le connecteur de supervision​
- Linux
- Windows
- Sur votre serveur central, allez Ă la page Configuration > Gestionnaire de connecteurs de supervision.
- Installez le connecteur de supervision Linux Centreon Monitoring Agent.
- Sur votre serveur central, allez Ă la page Configuration > Gestionnaire de connecteurs de supervision.
- Installez le connecteur de supervision Windows Centreon Monitoring Agent.
Créez le connecteur Centreon Monitoring Agent​
Sur votre serveur central :
- Allez Ă la page Configuration > Commandes > Connecteurs.
- Créez un nouveau connecteur avec les données suivantes :
Paramètre | Valeur |
---|---|
Nom du connecteur | Centreon Monitoring Agent |
Description du connecteur | Centreon Monitoring Agent |
Ligne de commande | opentelemetry --processor=centreon_agent --extractor=attributes --host_path=resource_metrics.resource.attributes.host.name --service_path=resource_metrics.resource.attributes.service.name |
Utilisé par la commande | Entrez Centreon-Monitoring-Agent et cliquez sur Sélectionner tout |
Statut du connecteur | Activé |
Configurez Engine​
Sur le collecteur qui recevra les données de l'agent, installez le paquet centreon-engine-opentelemetry.
Sur le collecteur qui recevra les données de l'agent, créez le fichier suivant :
touch /etc/centreon-engine/otl_server.json
Entrez le contenu suivant. Cela permettra au collecteur de recevoir les données en provenance de l'agent.
Le collecteur permet de fonctionner dans les deux modes simultanément (certains agents se connectent au collecteur alors que le collecteur se connecte à d'autres agents).
- No encryption, agent connects to poller
- Encryption, agent connects to poller
- No encryption, poller connects to agent
- Encryption, poller connects to agent
{
"otel_server":{
"host":"0.0.0.0",
"port":4317
},
"max_length_grpc_log":0,
"centreon_agent":{
"check_interval":60,
"export_period":10
}
}
chown centreon-engine: /etc/centreon-engine/otl_server.json
{
"otel_server":{
"host":"0.0.0.0",
"port":4317,
"encryption":true,
"public_cert":"<CERTIFICATE PATH>",
"private_key":"<KEY PATH>",
"ca_certificate":"<CA PATH>"
},
"max_length_grpc_log":0,
"centreon_agent":{
"check_interval":60,
"export_period":10
}
}
Cette configuration est à utiliser lorsque l'agent ne peut pas se connecter au collecteur, pour des raisons de sécurité (ex : agent situé dans une DMZ). Dans ce mode, le collecteur se connecte à l'agent.
{
"max_length_grpc_log":0,
"centreon_agent":{
"check_interval":60,
"export_period":15,
"reverse_connections":[
{
"host":"<HOST ADDRESS>",
"port":<PORT>
}
]
}
}
chown centreon-engine: /etc/centreon-engine/otl_server.json
- Entrez l'adresse IP de l'hôte sur lequel est installé l'agent dans les champs host et port. Cette adresse doit être accessible depuis le collecteur.
- Le champ check_interval correspond à la fréquence des contrôles effectués par l'Agent de supervision Centreon.
Cette configuration est à utiliser lorsque l'agent ne peut pas se connecter au collecteur, pour des raisons de sécurité (ex : agent situé dans une DMZ). Dans ce mode, le collecteur se connecte à l'agent.
{
"max_length_grpc_log":0,
"centreon_agent":{
"check_interval":60,
"export_period":15,
"reverse_connections":[
{
"host":"localhost",
"port":4317,
"encryption":true,
"ca_certificate":"<CERTIFICATE PATH>",
"ca_name":"<CA NAME>"
}
]
}
}
- Entrez l'adresse IP de l'hôte sur lequel est installé l'agent dans les champs host et port. Cette adresse doit être accessible depuis le collecteur.
- Le champ check_interval correspond à la fréquence des contrôles effectués par l'Agent de supervision Centreon.
Ajoutez un nouveau module Broker​
Allez Ă la page Configuration > Collecteurs > Configuration du moteur de collecte, puis cliquez sur le collecteur qui supervisera les ressources.
Dans l'onglet Données, dans la section Commande de lancement du module, dans le paramètre Multiple Broker Module, cliquez sur Ajouter une nouvelle entrée.
Ajoutez l'entrée suivante :
/usr/lib64/centreon-engine/libopentelemetry.so /etc/centreon-engine/otl_server.json
Exportez la configuration.
Redémarrez le moteur de collecte.
systemctl restart centengine
L'Agent de supervision Centreon est maintenant capable de communiquer avec Centreon. Vous pouvez mettre vos hĂ´tes en supervision.
Étape 2 : Préparez l'hôte​
Téléchargez et installez l'agent sur l'hôte​
- Linux
- Windows
- Installez le paquet centreon-monitoring-agent.
- Modifiez le fichier /etc/centreon-monitoring-agent/centagent.json local (4 cas) :
- Non chiffré, l'agent se connecte au collecteur
- Chiffré, l'agent se connecte au collecteur
- Non chiffré, le collecteur se connecte à l'agent
- Chiffré, le collecteur se connecte à l'agent
{
"log_level":"trace",
"endpoint":"<IP POLLER>:4317",
"host":"host_1",
"log_type":"file",
"log_file":"/var/log/centreon-monitoring-agent/centagent.log"
}
{
"log_level":"trace",
"endpoint":"<IP POLLER>:4317",
"host":"host_1",
"log_type":"file",
"log_file":"/var/log/centreon-monitoring-agent/centagent.log" ,
"encryption":true,
"ca_certificate":"/tmp/ca_1234.crt"
}
{
"log_level":"trace",
"endpoint":"0.0.0.0:4317",
"host":"host_1",
"log_type":"file",
"log_file":"/var/log/centreon-monitoring-agent/centagent.log" ,
"reversed_grpc_streaming":true
}
{
"log_level":"trace",
"endpoint":"0.0.0.0:4317",
"host":"host_1",
"log_type":"file",
"log_file":"/var/log/centreon-monitoring-agent/centagent.log" ,
"reversed_grpc_streaming":true,
"encryption":true,
"private_key":"/tmp/server_1234.key",
"public_cert":"/tmp/server_1234.crt",
"ca_certificate":"/tmp/ca_1234.crt"
}
Options de log​
Deux types de log sont disponibles :
- file: l'agent loggue dans le fichier dont le chemin est donné par log_file.
- stdout: l'agent loggue vers la sortie standard de l'exe.
Dans le cas de logging vers un fichier, une rotation peut être paramétrée avec les clés log_max_file_size et log_max_files.
Les niveaux de logs possibles sont: trace, debug, info, warning, error, critical et off.
- Redémarrer l'agent :
systemctl restart centagent
[Téléchargez l'installer de l'agent] (https://github.com/centreon/centreon-collect/releases/download/centreon-collect-24.04.6/centreon-monitoring-agent-24.10.0.exe) sur tous les serveurs que vous voulez superviser.
Lancez l'installer (durant la configuration, vous pourrez cliquer sur les (i) pour avoir de l'aide).
Configurez l'endpoint et le type de connexion :
- Dans le champ Host name in Centreon, entrez le nom de l'hĂ´te Ă superviser tel que vous l'avez saisi dans l'interface Centreon.
- Dans le cas le plus courant (l'agent se connecte au poller), saisissez l'adresse IP ou le nom DNS suivi du port OpenTelemetry sur lequel Ă©coute le poller, sous la forme \<adresse IP ou nom DNS>:port, par exemple 192.168.45.32:4317.
- Si vous activez l'option Poller-initiated connection (le collecteur se connecte à l'agent), vous devez choisir l'interface (toutes les interfaces : 0.0.0.0) et le port (généralement 4317) sur lequel l'agent va accepter les connections venant du collecteur.
Configurez les options de log. Deux types de log sont disponibles :
- File : les logs sont Ă©crits dans un fichier
- EventLog : les logs sont envoyés vers les journaux d'évènements. Si vous choisissez de logger dans un fichier, vous pouvez configurer la rotation de logs en renseignant Max File Size et Max number of files. Les niveaux de logs possibles sont: trace, debug, info, warning, error, critical et off.
Configurez les paramètres de chiffrement. Le chiffrement est activé par défaut. Dans le cas où l'option Poller-initiated connection est activée, renseignez Max File Size et Max number of files.
Déployer les plugins Centreon sur l'hôte​
Les plugins Centreon exécuteront les contrôles sur l'hôte.
- Linux
- Windows
Activez les dépôts Centreon et installez le plugin​
Ce dépôt permettra d'installer les plugins Centreon ainsi que les dépendances qui ne peuvent pas être satisfaites par les dépôts standard des distributions.
- Alma / RHEL / Oracle Linux 8
- Alma / RHEL / Oracle Linux 9
- Debian 11 & 12
cat >/etc/yum.repos.d/centreon-plugins.repo <<'EOF'
[centreon-plugins-stable]
name=Centreon plugins repository.
baseurl=https://packages.centreon.com/rpm-plugins/el8/stable/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-stable-noarch]
name=Centreon plugins repository.
baseurl=https://packages.centreon.com/rpm-plugins/el8/stable/noarch/
enabled=1
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-testing]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el8/testing/$basearch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-testing-noarch]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el8/testing/noarch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-unstable]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el8/unstable/$basearch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-unstable-noarch]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el8/unstable/noarch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
EOF
Installez le plugin :
dnf install -y centreon-plugin-Operatingsystems-Linux-Local.noarch
cat >/etc/yum.repos.d/centreon-plugins.repo <<'EOF'
[centreon-plugins-stable]
name=Centreon plugins repository.
baseurl=https://packages.centreon.com/rpm-plugins/el9/stable/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-stable-noarch]
name=Centreon plugins repository.
baseurl=https://packages.centreon.com/rpm-plugins/el9/stable/noarch/
enabled=1
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-testing]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el9/testing/$basearch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-testing-noarch]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el9/testing/noarch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-unstable]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el9/unstable/$basearch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
[centreon-plugins-unstable-noarch]
name=Centreon plugins repository. (UNSUPPORTED)
baseurl=https://packages.centreon.com/rpm-plugins/el9/unstable/noarch/
enabled=0
gpgcheck=1
gpgkey=https://yum-gpg.centreon.com/RPM-GPG-KEY-CES
module_hotfixes=1
EOF
Installez le plugin :
dnf install -y centreon-plugin-Operatingsystems-Linux-Local.noarch
wget -O- https://apt-key.centreon.com | gpg --dearmor | tee /etc/apt/trusted.gpg.d/centreon.gpg > /dev/null 2>&1
echo "deb https://packages.centreon.com/apt-plugins-stable/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/centreon-plugins.list
apt-get update
Installez le plugin :
apt -y install centreon-plugin-operatingsystems-linux-local
Sur les hôtes que vous voulez superviser, le plugins est déjà installé par l'installer du Centreon Monitoring Agent.
Étape 3 : Mettez l'hôte en supervision​
Créez l'hôte en utilisant le bon modèle​
- Linux
- Windows
Sur le serveur central, créez l'hôte et appliquez-lui le modèle d'hôte OS-Linux-Centreon-Monitoring-Agent-custom.
Sur le serveur central, créez l'hôte et appliquez-lui le modèle d'hôte OS-Windows-Centreon-Monitoring-Agent-custom.