Vous êtes ici:

Menu


Stacks Image 8983
Nous allons découvrir quelques aspects de l'utilitaire CentCTL. Notre but étant de migrer une configuration spécifique pour superviser un vieux serveur 2003 ( pour info je n'avais sous la main qu'un 2008, mais la démarche est la même ) sur une nouvelle plateforme avec un minimum d'effort.

1 Plantons le décor

La configuration est installée sur une plateforme 20.10.x. On supervise un serveur 2003 équipé d'un agent NSClient 0.39 et ne pouvant migrer sur la version 0.5x. Il faudra donc récupérer le maximum de configuration spécifique : commandes de vérification, modèles d'hôte et de service. Voici d'ailleurs ce qu'il faudra récupérer.

1.1 Les commandes de vérifications

Stacks Image 294445

1.2 Le modèle d'hôte

Stacks Image 294498

1.3 Les modèles de services

Stacks Image 294501

2 Exportation de la configuration

Si vous ne connaissez pas centctl, je vous conseille de lire ce tutoriel CentCTL, administrez facilement votre Centreon en ligne de commande. Je pars du principe que votre fichier de configuration centctl.yaml est bien configuré. Nous commencerons par l'exportation des commandes. La recherche des commandes se fera avec le suffixe old donc en regex on notera old$.
./centctl --server=centos export command -r 'old$' -t check -f confignrpe3.csv
Le paramètre -r représente une recherche en regex, le paramètre -t demande le type de commande à exporter et le paramètre -f est utilisé pour indiquer le fichier d'exportation.
Nous continuons avec le template d'hôte. Nous rechercherons le suffixe 03-NRPE-custom et nous utiliserons le paramètre append pour ajouter l'exportation dans le même fichier.
./centctl --server=centos export template host -r '03-NRPE-custom$' --append -f confignrpe3.csv
Et nous terminerons avec les modèles de service en recherchant le suffixe NRPE-03-custom.
./centctl --server=centos export template service -r 'NRPE-03-custom$' --append -f confignrpe3.csv
Nous avons notre fichier confignrpe3.csv qui nous servira à importer toute la configuration sur la nouvelle plateforme. Malheureusement, un bug de l'API Rest de Centreon provoquerait une erreur lors de l'exportation pour les macros personnalisées. SI nous lançons cette recherche dans le fichier :
cat confignrpe3.csv | grep -e "\"\$_SERVICE"
modify,templateService,"OS-Windows-Memory-NRPE-03-custom",macro,"$_SERVICEWARNING$|80%|0|"
modify,templateService,"OS-Windows-Memory-NRPE-03-custom",macro,"$_SERVICECRITICAL$|90%|0|"
modify,templateService,"OS-Windows-Memory-NRPE-03-custom",macro,"$_SERVICEEXTRAOPTIONS$|ShowAll=long type=physical|0|"
modify,templateService,"OS-Windows-Swap-NRPE-03-custom",macro,"$_SERVICEWARNING$|80%|0|"
modify,templateService,"OS-Windows-Swap-NRPE-03-custom",macro,"$_SERVICECRITICAL$|90%|0|"
modify,templateService,"OS-Windows-Swap-NRPE-03-custom",macro,"$_SERVICEEXTRAOPTIONS$|ShowAll=long type=virtual type=paged type=page|0|"
modify,templateService,"OS-Windows-Disks-NRPE-03-custom",macro,"$_SERVICEWARNING$|10%|0|"
modify,templateService,"OS-Windows-Disks-NRPE-03-custom",macro,"$_SERVICECRITICAL$|5%|0|"
modify,templateService,"OS-Windows-Disks-NRPE-03-custom",macro,"$_SERVICEEXTRAOPTIONS$|CheckAll FilterType=FIXED|0|"
modify,templateService,"OS-Windows-Uptime-NRPE-03-custom",macro,"$_SERVICEWARNING$|1d|0|"
modify,templateService,"OS-Windows-Uptime-NRPE-03-custom",macro,"$_SERVICECRITICAL$|1h|0|"
modify,templateService,"OS-Windows-Cpu-NRPE-03-custom",macro,"$_SERVICEWARNING$|80|0|"
modify,templateService,"OS-Windows-Cpu-NRPE-03-custom",macro,"$_SERVICECRITICAL$|90|0|"
modify,templateService,"OS-Windows-Cpu-NRPE-03-custom",macro,"$_SERVICEEXTRAOPTIONS$|time=5m time=1m time=30s|0|"
Les macros ne devraient pas avoir le préfixe $_SERVICE. Donc, avant de passez à l'exportation, nous allons modifier le fichier.
sed -i -e "s/\"\$_SERVICE/\"/g" confignrpe3.csv
sed -i -e "s/\$|/|/g" confignrpe3.csv
Il est possible de lancer les commandes en une seule commande comme ceci.
sed -i -e "s/\"\$_SERVICE/\"/g" -e "s/\$|/|/g" confignrpe3.csv
Si vous recherchez la chaine précédente $_SERVICE, la réponse doit être nulle.

3 Exportation de la configuration

Maintenant, nous allons injecter cette configuration dans la nouvelle plateforme.
./centctl --server=centreon2104 import -f confignrpe3.csv
Stacks Image 294429
Nous aurons des warnings mais cela ne remet pas en cause notre configuration.

3.1 Ajout du serveur sur la nouvelle configuration

Il nous reste à configurer notre hôte dans l'interface Web de la nouvelle plateforme.
Stacks Image 294524
Après application de la configuration Centreon, notre serveur est prêt à être supervisé.
Stacks Image 294529
Néanmoins, il faudra vérifier que le client NRPE sur le Central correspond à celui de l'ancienne plateforme. Dans la négative, vous risquez d'avoir ce type d'erreur.
Stacks Image 294536
Après cette vérification, il faudra aussi ajouter le nouveau serveur dans la configuration de nsc.ini (version 0.39) avec le paramètre allowed_hosts
Stacks Image 294541
Si vous avez réalisé les bons paramétrages, votre supervision devrait être opérationnelle. Le status Critical de l'Uptime étant normal, la VM étant démarrée depuis peu.
Stacks Image 294546
C'est terminé pour ce petit tutoriel, l'utilitaire centctl vous permet d'exporter facilement une configuration spécifique afin de l'importer dans une nouvelle configuration.
comments powered by Disqus
 Vous êtes ici:

Nous utilisons des cookies pour nous permettre de mieux comprendre comment le site est utilisé. En continuant à utiliser ce site, vous acceptez cette politique.