Aller au contenu principal

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.

  1. Sur votre serveur central, allez à la page Configuration > Connecteurs > Connecteurs de supervision.
  2. Installez le connecteur de supervision Linux Centreon Monitoring Agent.
  1. 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)

  1. Allez à la page Configuration > Commandes > Connecteurs.

  2. 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

  1. Allez à la page Administration > Jetons d'authentification.

  2. 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

  • 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.
  • 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

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.

Configurez la communication collecteur/agent

  1. Allez à la page Configuration > Collecteurs > Configurations d'agent, puis cliquez sur Ajouter.
  2. Dans la fenêtre qui s'ouvre, sélectionnez le type d'agent Centreon Monitoring Agent. Des champs supplémentaires apparaissent.
  3. Sélectionnez le sens de connexion (par défaut : l'agent se connecte au collecteur).
  1. Dans la section Paramètres, sélectionnez le ou les collecteurs qui recevront des données en provenance de l'agent.
  2. 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.

  3. Cliquez sur Sauvegarder.
  4. 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

Exécutez les commandes suivantes :

firewall-cmd --zone=public --add-port=4317/tcp --permanent
firewall-cmd --reload 

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

Installer le dépôt Centreon et l'agent

Installez le dépôt Centreon puis l'agent à l'aide des commandes suivantes :

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

Configurez centreon-monitoring-agent

  1. Remplacez le contenu du fichier /etc/centreon-monitoring-agent/centagent.json par le contenu suivant :
{
"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>"
}

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

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 :

  1. 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.


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
  1. Installez le plugin :
dnf install -y centreon-plugin-Operatingsystems-Linux-Local.noarch

Étape 4 : Tester le fonctionnement de l'agent

Voir section dédiée.