Configurer l’environnement de l’agent
Utilisateurs de Centreon Cloud: l'agent CMA est encore en phase bêta pour la version Cloud. Pour obtenir de l'aide ou échanger sur les évolutions de l'agent Centreon, visitez notre groupe dédié sur The Watch.
Étape 1: Configurez Centreon
Cette étape s'effectue via l'interface du serveur central. (Il est également possible de réaliser ces étapes via l'API Centreon Web.)
Installez le connecteur de supervision nécessaire (version onPrem)
Sur votre serveur central, installez le connecteur de supervision qui fournira les modèles et les commandes qui vous permettront de configurer les hôtes et les services supervisés dans Centreon. Dans le cas d'une plateforme Cloud, ces connecteurs sont déjà installés.
- Linux
- Windows
- Sur votre serveur central, allez à la page Configuration > Connecteurs > Connecteurs de supervision.
- Installez le connecteur de supervision Linux Centreon Monitoring Agent.
- Sur votre serveur central, allez à la page Configuration > Connecteurs > Connecteurs de supervision.
- Installez le connecteur de supervision Windows Centreon Monitoring Agent.
- Si vous souhaitez superviser une application supportée par CMA, installez le connecteur correspondant sur votre serveur central.
Mettez à jour le connecteur Centreon Monitoring Agent (version onPrem)
-
Allez à la page Configuration > Commandes > Connecteurs.
-
Mettez à jour le connecteur Centreon Monitoring Agent de la façon suivante : dans le champ Utilisé par la commande, entrez Centreon-Monitoring-Agent puis cliquez sur Select all.
Créez un jeton d'authentification
-
Allez à la page Administration > Jetons d'authentification.
-
Créez un jeton de type Centreon Monitoring Agent.
- Vous pouvez sélectionner une durée d'expiration. Par défaut, les jetons n'expirent pas.
- Conservez le jeton généré pour la configuration de l'agent. Au besoin, vous pouvez le copier dans le presse-papiers à tout moment, depuis la liste des jetons.
- Il est possible de n'utiliser qu'un jeton pour tous vos collecteurs et agents, ou d'en gérer plusieurs, pour un contrôle plus fin.
Comportement des jetons d'authentification CMA : désactivation/expiration/révocation
- L'agent se connecte au collecteur
- Le collecteur se connecte à l'agent
- Le moteur de collecte vérifie la présence et la validité du jeton, et coupe la connexion en cas d'absence du jeton (car désactivé ou révoqué) ou d'expiration de celui-ci. La mention Token expired apparaît dans les logs collecteur et agent.
- L'agent vérifie la présence et la validité du jeton, et coupe la connexion en cas d'absence du jeton (car désactivé ou révoqué) ou d'expiration de celui-ci. La mention Token expired apparaît dans les logs collecteur et agent.
-
Lorsque vous désactivez ou révoquez un jeton, déployez la configuration pour que cette action soit prise en compte.
-
L'expiration est prise en compte immédiatement, sans nécessiter d'action utilisateur.
Créez l'hôte et les services
- 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. Le modèle comprend l'option Activer les contrôles passifs qui est définie sur On.
Créez les services associés au modèle d'hôte.
Sur le serveur central, créez l'hôte et appliquez-lui le modèle d'hôte OS-Windows-Centreon-Monitoring-Agent-custom. Le modèle comprend l'option Activer les contrôles passifs qui est définie sur On.
Créez les services associés au modèle d'hôte.
Configurez la communication collecteur/agent
- Allez à la page Configuration > Collecteurs > Configurations d'agent, puis cliquez sur Ajouter.
- Dans la fenêtre qui s'ouvre, sélectionnez le type d'agent Centreon Monitoring Agent. Des champs supplémentaires apparaissent.
- Sélectionnez le sens de connexion (par défaut : l'agent se connecte au collecteur).
- L'agent se connecte au collecteur
- Le collecteur se connecte à l'agent
- Dans la section Paramètres, sélectionnez le ou les collecteurs qui recevront des données en provenance de l'agent.
- Dans la section Récepteur OTLP, renseignez les chemins des fichiers de certificat. Voir page dédiée pour déterminer quels fichiers sont nécessaires, selon votre configuration et le sens de connexion souhaité.
Si vous configurez plusieurs collecteurs en même temps, assurez-vous que tous les fichiers de certificat aient le même nom.
- Cliquez sur Sauvegarder.
- Déployez la configuration en redémarrant le moteur de collecte.
- Dans la section Paramètres, sélectionnez le collecteur qui se connectera aux agents.
- Dans la section Hôtes supervisés, sélectionnez l'hôte créé précédemment. Son adresse IP s'affiche, et un port par défaut est renseigné. Modifiez ces informations si nécessaire.
- Renseignez les chemins des fichiers de certificat. Voir page dédiée pour déterminer quels fichiers sont nécessaires, selon votre configuration et le sens de connexion souhaité.
- Sélectionnez le jeton d'authentification créé précédemment. Il est aussi possible de créer un jeton depuis cet écran.
- Ajoutez l'hôte.
- Répétez l'opération pour chaque hôte devant être lié à ce collecteur. Pour configurer de fortes volumétries, il est recommandé de passer par les API dédiées.
- Déployez la configuration en redémarrant le moteur de collecte.
Cette configuration est déployée sur le collecteur dans le fichier /etc/centreon-engine/otl_server.json. Attention, ce fichier ne doit pas être édité à la main car il est écrasé à chaque déploiement de la configuration.
Étape 2 : Préparez le collecteur
Cette étape s'effectue sur le collecteur.
Configurez le firewall
- L'agent se connecte au collecteur
- Le collecteur se connecte à l'agent
Exécutez les commandes suivantes :
firewall-cmd --zone=public --add-port=4317/tcp --permanent
firewall-cmd --reload
Pas d'action nécessaire.
Configurez les paramètres de chiffrement
Voir section dédiée pour déterminer quels fichiers sont nécessaires, selon votre configuration et le sens de connexion souhaité.
Ajoutez les commandes CMA à vos listes blanches personnalisées
Si vous utilisez des listes blanches sur votre collecteur (les collecteurs Cloud ont des listes blanches par défaut), celles-ci doivent autoriser les commandes CMA. Sur le collecteur, dans votre fichier personnalisé de liste blanche (par exemple, /etc/centreon-engine-whitelist/my-whitelist.yml), incluez les lignes suivantes dans le bloc cma-whitelist :
whitelist:
regex:
- \/usr\/lib(64)?\/nagios\/plugins\/.*
- \/usr\/lib(64)?\/nagios\/plugins\/.check_.*
cma-whitelist:
default:
regex:
- \/usr\/lib(?:64)?\/nagios\/plugins\/.*
- \/usr\/lib(?:64)?\/centreon\/plugins\/.*
- \/usr\/lib(?:64)?\/centreon\/plugins\/check_centreon_bam.*
- \"C:\/Program Files\/Centreon\/Plugins\/centreon_plugins.exe\"\s+.+
- ^\{\s*"check":".*\}$
- \/usr\/bin\/echo\s+Host\s+alive
- cmd\.exe\s+\/C\s+echo\s+.*
Vous pouvez au besoin spécifier des liste blanches par hôte. La syntaxe sera :
whitelist:
regex:
- \/usr\/lib(64)?\/nagios\/plugins\/.*
- \/usr\/lib(64)?\/nagios\/plugins\/.check_.*
cma-whitelist:
default:
regex:
- \/usr\/lib(?:64)?\/nagios\/plugins\/.*
- \/usr\/lib(?:64)?\/centreon\/plugins\/.*
- \/usr\/lib(?:64)?\/centreon\/plugins\/check_centreon_bam.*
- \"C:\/Program Files\/Centreon\/Plugins\/centreon_plugins.exe\"\s+.+
- ^\{\s*"check":".*\}$
- \/usr\/bin\/echo\s+Host\s+alive
- cmd\.exe\s+\/C\s+echo\s+.*
hosts:
- hostname:Host_1
regex:
- ...
- hostname:Host_2
regex:
- ...
Assurez-vous que les droits d'accès corrects sont définis sur tous les fichiers de liste blanche :
chown root:centreon-engine /etc/centreon-engine-whitelist/my-whitelist.yml
chmod 0640 /etc/centreon-engine-whitelist/my-whitelist.yml
chown root:centreon-engine /etc/centreon-engine-whitelist
chmod 750 /etc/centreon-engine-whitelist
Le comportement est le suivant :
- Si le bloc whitelist est renseigné et le bloc cma-whitelist est absent, le moteur de collecte appliquera sa liste blanche (il n'autorisera que les commandes spécifiées) et CMA n'appliquera pas de liste blanche (toutes les commandes seront autorisées).
- Si les blocs whitelist et cma-whitelist sont renseignés, le moteur de collecte appliquera le bloc whitelist et CMA appliquera le bloc cma-whitelist (ils n'autoriseront que les commandes spécifiées).
- Si le bloc whitelist est absent et le bloc cma-whitelist est renseigné, le moteur de collecte n'appliquera pas de liste blanche (toutes les commandes seront autorisées) et CMA appliquera le bloc cma-whitelist (il n'autorisera que les commandes spécifiées).
- Si aucun bloc n'est renseigné, aucune liste blanche ne sera appliquée : toutes les commandes seront autorisées.
Étape 3 : Préparez l'hôte
Cette étape s'effectue sur l'hôte supervisé.
Téléchargez et installez l'agent
- Linux
- Windows
Installer le dépôt Centreon et l'agent
Installez le dépôt Centreon puis l'agent à l'aide des commandes suivantes :
- Alma / RHEL / Oracle Linux 8
- Alma / RHEL / Oracle Linux 9
- Debian 11 & 12
- Ubuntu 22.04 & 24.04
dnf install -y dnf-plugins-core
dnf config-manager --add-repo https://packages.centreon.com/rpm-standard/24.10/el8/centreon-24.10.repo
dnf install centreon-monitoring-agent
dnf install -y dnf-plugins-core
dnf config-manager --add-repo https://packages.centreon.com/rpm-standard/24.10/el9/centreon-24.10.repo
dnf install compat-openssl11 centreon-monitoring-agent
apt-get update
apt-get -y install lsb-release gpg wget
echo "deb https://packages.centreon.com/apt-standard-24.10-stable $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/centreon.list
echo "deb https://packages.centreon.com/apt-plugins-stable/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/centreon-plugins.list
Ensuite, importez la clé du dépôt :
wget -O- https://apt-key.centreon.com | gpg --dearmor | tee /etc/apt/trusted.gpg.d/centreon.gpg > /dev/null 2>&1
Ensuite, installez l'agent :
apt-get update
apt install centreon-monitoring-agent
- Exécutez les commandes suivantes :
apt-get update
apt-get -y install lsb-release gpg wget
echo "deb https://packages.centreon.com/ubuntu-standard-24.10-stable $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/centreon.list
echo "deb https://packages.centreon.com/ubuntu-plugins-stable/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/centreon-plugins.list
- Importez la clé du dépôt :
wget -O- https://apt-key.centreon.com | gpg --dearmor | tee /etc/apt/trusted.gpg.d/centreon.gpg > /dev/null 2>&1
- Installez l'agent :
apt-get update
apt install centreon-monitoring-agent
Configurez centreon-monitoring-agent
- Remplacez le contenu du fichier /etc/centreon-monitoring-agent/centagent.json par le contenu suivant :
- L'agent se connecte au collecteur
- Le collecteur se connecte à l'agent
{
"log_level":"info",
"endpoint":"<IP/DNS COLLECTEUR>:4317",
"host":"host_1",
"log_type":"file",
"log_file":"/var/log/centreon-monitoring-agent/centagent.log" ,
"encryption":true,
"ca_certificate":"/tmp/ca_1234.crt",
"token":"<JETON>"
}
{
"log_level":"info",
"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",
"token":"<JETON>"
}
Important : dans le champ host, entrez le nom de l'hôte à superviser tel que vous l'avez saisi dans l'interface Centreon. Si absent, l'agent utilisera le hostname de la machine. Ce nom sera la clé de correspondance permettant de remonter les données sur l'hôte Centreon.
Configurez les paramètres de chiffrement
Voir section dédiée pour déterminer quels fichiers sont nécessaires, selon votre configuration et le sens de connexion souhaité.
Configurez les logs
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:
- off: aucun log
- critical: erreurs critiques
- error: toutes les erreurs
- info: quelques informations supplémentaires
- debug: quelques informations sur les connections en plus
- trace: le niveau de trace le plus verbeux, permet de voir les messages échangés avec le collecteur
Redémarrez l'agent
systemctl restart centagent
Vous pouvez vérifier que l'agent a bien redémarré, avec la commande suivante :
systemctl status centagent
Téléchargez l'installer de l'agent (onglet Custom Platform, puis onglet Monitoring Agent), sur tous les serveurs que vous voulez superviser.
Le programme d'installation de l'agent peut s'utiliser suivant deux modes:
- Mode interactif
- Mode silencieux (console)
-
Lancez l'installer (durant la configuration, vous pourrez cliquer sur les (i) pour avoir de l'aide). Si vous installez les plugins Centreon, l'installer tentera de télécharger et d'installer la dernière version des plugins Centreon. Si l'installer ne peut pas les télécharger (pas d'accès web, problème réseau), une popup vous demandera confirmation pour installer les plugins Centreon embarqués dans l'installer. Si vous souhaitez utiliser uniquement des contrôles natifs, il est inutile d'installer les plugins.
Les résultats seront affichés dans la fenêtre de l'installer.
-
Configurez le Host name, l'endpoint/listening interface et le sens 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.
Important : Ce nom sera la clé de correspondance permettant de remonter les données sur l'hôte Centreon. Il doit être strictement identique au nom d'hôte Centreon (sensible à la casse).
- L'agent se connecte au collecteur
- Le collecteur se connecte à l'agent
- Dans le champ Poller endpoint, saisissez l'adresse IP ou le nom DNS du collecteur, suivi du port d'écoute CMA (4317 par défaut), sous la forme <adresse IP ou nom DNS>:port, par exemple 192.168.45.32:4317.
- Le champ Listening interface pourra rester à sa valeur par défaut (0.0.0.0:4317), et correspond à l'interface sur laquelle l'agent va accepter les connections venant du collecteur. La valeur par défaut (0.0.0.0) correspond à "toutes les interfaces", et peut être restreinte pour des raisons de sécurité.
Dans ce mode, aucune interface n'est lancée. Comme cet installer n'est pas un programme console, il rend immédiatement la main même s'il n'a pas encore fini. Vous devez attendre de voir apparaître dans la console le message indiquant qu'il a terminé. Si vous voulez tester le succès de l'installation, vous devez récupérer l'exit status. Vous pouvez le lancer dans un powershell et attendre la fin du processus. L'exit status vaudra 0 si tout s'est bien passé.
Pour le lancer en mode silencieux, vous devez mettre en premier argument /S. Vous pouvez afficher une liste des arguments avec la ligne de commande suivante :
centreon-monitoring-agent.exe /S --help
Les différents arguments sont:
flag | description |
---|---|
--install_cma | Si ce flag est présent, l'agent sera installé |
--install_plugins | Si ce flag est présent, la dernière version des plugins sera téléchargée et installée |
--install_embedded_plugins | Utilisez ce flag pour installer les plugins fournis par l'installer (cas d'un hôte n'ayant pas accès à internet) |
--hostname | Le nom de l'hôte à superviser tel que vous l'avez saisi dans l'interface Centreon. Ce nom sera la clé de correspondance permettant de remonter les données sur l'hôte Centreon. |
--endpoint | Dans le cas le plus courant (l'agent se connecte au collecteur), saisissez l'adresse IP ou le nom DNS suivi du port OpenTelemetry sur lequel écoute le collecteur, sous la forme <adresse IP ou nom DNS>:port, par exemple 192.168.45.32:4317. Si vous activez l'option --reverse (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. |
--reverse | Si ce flag est présent, l'agent accepte les connections venant du collecteur |
--log_type | event_log ou file. Si vous choisissez file, le paramètre log_file est obligatoire |
--log_level | Choisir parmi: off, critical, error, warning, debug ou trace |
--log_file | Chemin du fichier de log |
--log_max_file_size | Taille maximale du fichier de log avant rotation, en Mo. |
--log_max_files | Nombre maximal de fichiers de log. Pour que la rotation des logs soit activée, ces deux paramètres sont nécessaires. |
--encryption | Si ce flag est présent le chiffrement est activé. |
--private_key | Chemin du fichier contenant la clé privée. Obligatoire si le chiffrement et le mode reverse sont activés. |
--public_cert | Chemin du fichier contenant la clé publique. Obligatoire si le chiffrement et le mode reverse sont activés. |
--ca | Chemin du fichier contenant le certificat de confiance. |
--ca_name | TLS certificate common name (CN). |
--token | Jeton d'authentification. |
Si vous utilisez l'option --install_plugins et que le téléchargement échoue, l'installer va installer les plugins fournis par l'installer.
Données de configuration
Les données renseignées via l'installer ou le mode silencieux sont écrites en base de registre :
\HKEY_LOCAL_MACHINE\SOFTWARE\Centreon\CentreonMonitoringAgent
Configurez les paramètres de chiffrement
Voir section dédiée pour déterminer quels fichiers sont nécessaires, selon votre configuration et le sens de connexion souhaité.
Configurez les logs
Deux types de log sont disponibles :
- eventlog : les logs sont envoyés vers les journaux d'évènements Windows.
- file : les logs sont écrits dans un fichier Si vous choisissez file, vous pouvez configurer le chemin du fichier dans Log file, et la rotation de logs en renseignant Max File Size et Max number of files.
Les niveaux de logs possibles sont:
- off: aucun log
- critical: erreurs critiques
- error: toutes les erreurs
- info: ajout d'informations supplémentaires
- debug: ajout d'informations sur les connexions
- trace: permet de voir les messages échangés avec le collecteur
Déployer les plugins Centreon agent sur l'hôte (Linux)
Si vous utilisez des connecteurs Centreon et des contrôles non natifs sous Linux :
- Activez les dépôts Centreon et installez les plugins :
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
dnf -y install dnf-plugins-core epel-release
dnf config-manager --set-enabled powertools
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
dnf install dnf-plugins-core
dnf install epel-release
dnf config-manager --set-enabled crb
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
apt update && apt install lsb-release ca-certificates apt-transport-https software-properties-common wget gnupg2 curl
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
Étape 4 : Tester le fonctionnement de l'agent
Voir section dédiée.