Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| nagios [Le 29/01/2018, 13:47] – [Installation] 192.54.144.229 | nagios [Le 01/03/2023, 18:02] (Version actuelle) – Ajout liens sefran | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag> sécurité serveur supervision BROUILLON}} | + | {{tag> sécurité serveur supervision |
| ---- | ---- | ||
| - | arreter | + | ====== Nagios : moniteur |
| + | |||
| + | // | ||
| + | |||
| + | La gestion d'un parc de serveur est un travail de chaque instant. Un bon administrateur système doit savoir à tout moment l' | ||
| + | |||
| + | L' | ||
| + | |||
| + | Pour simplifier le travail, nous allons utiliser un //moniteur de supervision// | ||
| + | |||
| + | Le moniteur de supervision que nous allons décrire est **Nagios** qui est l'un des plus connus et des plus utilisés. | ||
| ===== Pré-requis ===== | ===== Pré-requis ===== | ||
| - | Avoir un cerveau | + | Pour la suite des opérations, |
| - | Etre une ptite souris | + | * Disposer des [[: |
| + | * Disposer d'une connexion à Internet configurée et activée ; | ||
| + | * Avoir activé l' | ||
| + | * Un [[: | ||
| + | |||
| + | ===== Introduction ===== | ||
| + | |||
| + | L' | ||
| + | |||
| + | Nagios est, avant toute chose, un moteur gérant l' | ||
| + | |||
| + | L' | ||
| + | |||
| + | Les greffons de Nagios (ou sondes ou plugins) sont des petits scripts ou programmes qui sont la base des vérifications. | ||
| + | |||
| + | Pour plus d' | ||
| - | | ||
| - | __/ | ||
| - | / | ||
| - | / / \__/ \ \ | ||
| - | | ||
| - | / | ||
| - | | ||
| - | | ........................ | | ||
| - | / ._________/ | ||
| - | | ./ _________ | ||
| - | |./ //#/ | ||
| - | |/ //#([])##// ~~ \\##([])#\\ \| | ||
| - | | //### | ||
| - | | \\######// | ||
| - | \ / | ||
| - | | ||
| - | /' .___// | ||
| - | | ||
| - | \ ' | ||
| - | | ||
| - | \ ' | _/' | ||
| - | | ||
| - | \ | ||
| - | | ||
| - | \ V | ||
| - | | ||
| - | _V ~~~~\/~~~~ V_ \~~~~~~| | ||
| - | ___/ V\____/ | ||
| - | __/ : | ||
| - | _/' .' .' V .' .' .' | ||
| - | /: | ||
| - | /. `. `. `. `. `. `. `. `. `. `. `. `. `\ |`. `| | ||
| - | / | ||
| - | / .' .' .' .' .' \\ ' | ||
| - | / : : : : : )) | ||
| - | |`. `. `. `. `. `. (( . )) . `. `. `. `. `. `.\ |`. `| | ||
| - | | : : : : : )) | ||
| - | / .' .' | ||
| - | | : : // : : : )) | ||
| - | |. `. || `. `. `. `. (( . )) . `. `. `. ||`. `. `.\ | `. `\ | ||
| - | / | ||
| - | | .' .' || .' .' .' .' (( ' | ||
| - | |: : :|| : | ||
| - | /. `. `. || `. `. `. `. (( . )) . `. `. `. ||\. `. `. `.\ | `. `.| | ||
| - | | : : : \\ : : : : : : _ : | ||
| - | |.' .' .' .' | ||
| - | ./: : : : :\\ : | ||
| - | |. `. `. `. __ `\\_ `. `. // `. `. \\______/_/ `| | `. `. `| `. `.| | ||
| - | | :/ : : / | \_\______// : : : \______/ | ||
| - | .' | ||
| - | | : :| \ : : : : : : : : : : :/ \ : o : | ||
| - | `/ `. `. | |. `. `. `. `. `. `. `. `. `. `.| | o `. `. `.| | ||
| - | | : : / | : : : : : : : : : : | | o : : : | | ||
| - | |' .' .| | ||
| - | : : | | : : : : : : : : : : :\ \ o : : | | ||
| - | `. `. / /`. `. `. I `. `. `. `. ` I . `. `\ \ oo ` o.| | ||
| - | : | /: | ||
| - | .' .' | ||
| - | : / / : : : : I : | ||
| - | `. | | `. `. `. `. I `. `. `. `. I `. `. `. `.\ | ||
| - | :| |: : : : : I : | ||
| - | .' | /' | ||
| - | :| | : : : : : I : H H I : : : : : \ | ||
| - | `. | |`. `. `. `. `. `. I ` L L `. I `. `. `. `. `. \ | ||
| - | :| | : : : : : : I H H I : : :_ : : : \ | ||
| - | .' | |.' .' .' .' .' .' . I ' H H I .' .' .' .\ .' .' .'\ | ||
| - | :| | : :___ : : : | ||
| - | `. | |`. `.| |. `. `. `. I H H . `. ` _`. `.|\. `. `. `| | ||
| - | :| / : | | : : : : IH H : : | _ : | \: : : | | ||
| - | .' | | .' .' | ||
| - | :| | ||
| - | `. / | `. `./ |. `. || `. `. H H . ` // `. `.| |. `. `| | ||
| - | | |: : | | : : \\ : H H :_// : : | | : : | | ||
| - | .' | ||
| - | | | : : | | ||
| - | `.| |. `. `| |`. `. `. \\_. H H . `. `. `. `. | |. `. `| | ||
| - | | | : :/ | ||
| - | .' | ||
| - | | | : :| | : : : : : H H : : : : :| | : : | | ||
| - | `.| /`. `. | |. `. `. `. `. `. `. `. `. `. `. `. | \ `. `| | ||
| - | / |: : :/ / : : __ : : : : : : :__ : | ||
| - | .| | .' .' | ||
| - | .| /: : | | : : \X\: : : : : : /X/ : : | | : | | ||
| - | `| |. `. `.| |`. `. `. \X\_. `. `. `. `._/X/`. `. `.| |`. `.| | ||
| - | .| | : : | | : : : \XX\_ : : : | ||
| - | .| |' .' ./ / | ||
| - | .| | : :| | ||
| - | `| |. `. | | `. `. `. `. `. |XXXXXXX|`. `. `. `. `.| \`. `.| | ||
| - | .| | : :| | ||
| - | .| |' .' | | .' .' .' .' .' | ||
| - | .| / : :| | ||
| - | =||`. `./ | `. `. `. `. `. | |`. `. `. `. `.| |. `.| | ||
| - | ~\| : | | ||
| - | ~~|.' .| \.' .' .' .' .' | | ||
| - | ~~| : | | : : : : :| | ||
| - | ~~|`. `| |. `. `. `. `. | |`. `. `. `. `.| \. `.| | ||
| - | _~| : | \: : : : :| | ||
| - | .||.' .| | ||
| - | .|| : \ | ||
| - | V\. `.| |`. `. `. `. | |`. `. `. `. | |~~~~~\ | ||
| - | |===| | : : : :| | ||
| - | /~~~\ |.' .' .' .' | | ||
| - | / | ||
| - | (~~~~~~/ | ||
| - | | ||
| - | / | ||
| - | (~~~| |~| |: : : :| | ||
| - | \~~| |~| | #. `. `. `\ / `. `. `.#`| |~| | ||
| - | |~| V / : #: : #: ) ( : #: : #: \ |~| | ||
| - | |~| | ||
| - | |~| \ : ###### : ) ( : ######: | ||
| - | |~| /. `# `. #. `( ) `.#`. `# `.\ | ||
| - | | ||
| - | \' .# .' .# ./ \ .# .' .# .'/ | ||
| - | |:# : : :| | ||
| - | | `. `. `. | |`. `. `. `| | ||
| - | | ||
| - | | .' .' .' \ / | ||
| - | | ||
| - | /. `/ |`. `| | `. | \ `.\ | ||
| - | | ||
| - | | ||
| - | | ||
| - | |`. \ /. `| | `.\ /`. | | ||
| - | \ : \ | ||
| - | \ .' .' .' / | ||
| - | | : : | | : : :| | ||
| - | |`. `. `.| |. `. `. | | ||
| - | | : : | | : : :| | ||
| - | | ||
| - | \: : | | : : / | ||
| - | |`. `.| |. `. | | ||
| - | | ||
| - | | ||
| - | | ||
| - | |`. `.| |. `. | | ||
| - | /: : | | : : \ | ||
| - | | ||
| - | | : : | | : : | | ||
| - | |. `. `.| |. `. `.| | ||
| - | | : : | | : : | | ||
| - | | ||
| - | / : : | | : : :\ | ||
| - | / `. `. `./ \. `. `. `\ | ||
| - | / : : : | | ||
| - | / | ||
| - | /: : _/ :/ | ||
| - | /. `._/ |`./ \. | \_. `.\P | ||
| - | / :_/ /: / \: \ \_ :\H | ||
| - | / ._/ /' | ||
| - | /__/ | / | ||
| - | |_/ \_| | ||
| ===== Installation ===== | ===== Installation ===== | ||
| - | . . | + | Avant d' |
| - | . | + | |
| - | . . | + | Ensuite, il ne vous reste plus qu'à installer Nagios proprement dit, [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **nagios-text**. |
| - | | + | |
| - | | + | [[:tutoriel:comment_installer_un_paquet|Installer le paquet]] [[apt://nagios3|nagios3]] (apache2 s' |
| - | | + | |
| - | .. . . . - : : | + | À la fin de l' |
| - | . | + | |
| - | | + | <note warning> |
| - | . | + | |
| - | . | + | Ici nous utilisons la version '' |
| - | :.. . | + | |
| - | . . . .. . .. :\ ######## | + | Pour configurer le serveur Apache de telle manière que Nagios soit accessible, le paquet Nagios fait un lien symbolique « /etc/ |
| - | | + | |
| - | | + | Ensuite, vous devez recharger la configuration d' |
| - | :: . . . . :: | + | |
| - | . | + | sudo /etc/init.d/apache2 reload |
| - | | + | |
| - | . | + | Notez que selon les situations, la configuration a été assurée par le gestionnaire de paquets. |
| - | . | + | |
| - | | + | Vous devriez avoir accès à la page principale de Nagios une fois que vous avez introduit votre mot de passe en consultant l'URL suivante, le login étant « nagiosadmin » : http:// |
| - | + | + | |
| - | | + | Si ce n'est pas le cas, vérifier la configuration de votre serveur HTTP Apache. |
| - | . . . . | + | |
| ===== Configuration ===== | ===== Configuration ===== | ||
| - | ERROR 404 | ||
| - | | + | ==== Ajouter des utilisateurs ==== |
| - | XXXXXXXXXXXX | + | |
| - | XXXXXXXXXXXXXXXXXX | + | La première chose à faire est d' |
| - | XXX XXXXXX | + | |
| - | OOOO XXXXX | + | Pour ajouter un utilisateur, |
| - | | + | |
| - | OOOOO | + | |
| - | | + | |
| - | OOOOO | + | pour le moment vous pouvez utiliser : |
| - | | + | |
| - | XXXXX X XXXX XXXX XXXXXXXXXXXX | + | |
| - | | + | |
| - | | + | Il faut également donner les droits d' |
| - | XXX XXXXX XXXXX XXXXXXX | + | |
| - | XXX | + | | '' |
| - | XXX | + | | '' |
| - | | + | | '' |
| - | XXX | + | | '' |
| - | XXX | + | | '' |
| - | XXX XXXXXXXXXX | + | | '' |
| - | XXX XXXXXXXXXXX | + | | '' |
| - | XXX XXXXXXXXXX | + | |
| - | XXX XXXXXX | + | Une fois que les droits d' |
| - | XXX | + | |
| - | XXX XX XXXXXXXXXXXXXXX | + | |
| - | | + | ==== Configuration de base ==== |
| - | | + | |
| - | XXX | + | La configuration de Nagios peut paraître compliquée au premier abord. Il y a beaucoup de fichiers de configuration qui se trouvent dans « / |
| - | | + | |
| - | XXXX X | + | Il y a peut être deux écoles, mais je vous conseille de mettre tout à plat si vous installez Nagios pour la première fois. |
| - | | + | |
| - | XXX XXXX XXXXX | + | Garder dans le dossier « / |
| - | | + | |
| - | | + | |
| - | XXX XXXXXXXXXX | + | |
| - | | + | Déplacer tous les fichiers « .cfg » (**sauf « nagios.cfg », « cgi.cfg » et « resource.cfg »**) dans ce dossier. |
| - | XXXXXXXXXXXX | + | |
| - | | + | Afin que Nagios retrouve ces petits nous allons lui indiquer que le dossier conf.d est la où se trouvent ces fichiers de configuration. [[: |
| - | | + | |
| - | XXXXXXXXXXXXXXXXX | + | |
| - | | + | |
| - | | + | Ensuite commenter toutes les lignes commençant par « cfg_file ». |
| - | XX XX X XXX XXX | + | |
| - | | + | Cette étape est délicate mais importante pour la suite, c'est vraiment dommage que le paquet soit fait de telle façon. Le gros avantage c'est que vous n' |
| - | | + | |
| - | XX | + | Il y a une idée à bien saisir lorsque l'on commence avec Nagios : je ne décris un « objet » qu'une et une seule fois. |
| - | | + | Cela passe par l' |
| - | | + | On peut créer des modèles pour à peu près tous les objets Nagios. |
| - | | + | |
| - | XX XXXXXXXXXXX | + | Afin de se simplifier la vie, nous allons d' |
| - | | + | |
| - | | + | Après chaque modification d'un fichier, faites un : |
| - | | + | |
| - | | + | sudo nagios3 -v / |
| - | | + | |
| - | | + | Cela vous permettra de voir si vous avez oublié un morceau de configuration, |
| - | XX XXOOOOOXXXXX | + | |
| - | | + | |
| - | XX XX O | + | === Configuration des périodes de temps === |
| - | XX | + | |
| - | | + | Nous allons commencer par configurer les périodes de temps qui préoccupe notre serveur. Ces périodes de temps se configurent dans le fichier « / |
| - | | + | |
| - | XXXXXXXX | + | Vous remarquerez que certaines périodes de temps sont déjà indiquées dans le fichier. Ces périodes sont '' |
| - | XX | + | <note important> |
| - | XX | + | |
| - | XX | + | FIXME Ces périodes peuvent être reconfigurées à votre guise pour coller à l' |
| - | XX | + | |
| - | XXXXXXXXXX | + | < |
| - | XXXXXX | + | define timeperiod{ |
| - | | + | timeperiod_name service_open |
| - | XXX XX | + | alias |
| - | XX | + | |
| - | XX | + | tuesday |
| - | | + | wednesday |
| + | thursday | ||
| + | saturday | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Les mots-clés utilisés pour la configuration d'une plage horaire se passent de commentaires. | ||
| + | |||
| + | Cet horaire indique les périodes d' | ||
| + | |||
| + | === Configuration des personnes de contacts === | ||
| + | |||
| + | Les personnes de contacts sont les personnes physiques à contacter en cas d' | ||
| + | |||
| + | Les personnes de contacts peuvent se configurer dans le fichier « / | ||
| + | ((Le nom peut être changé ou vous pouvez en définir plusieurs : « sys-admins.cfg » et « network-admins.cfg ».)) et les entrées ont un format similaire à celui-ci : | ||
| + | |||
| + | < | ||
| + | define contact{ | ||
| + | contact_name | ||
| + | | ||
| + | service_notification_period | ||
| + | | ||
| + | service_notification_options | ||
| + | host_notification_options | ||
| + | service_notification_commands | ||
| + | host_notification_commands | ||
| + | email | ||
| + | pager | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Voici à quoi servent les différents champs : | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | |||
| + | === Configuration des groupes de contacts === | ||
| + | |||
| + | Les groupes de contacts sont des groupes regroupant plusieurs contacts. On utilisera cette notion de groupe dans les déclarations concernant les hôtes et les services à surveiller. | ||
| + | |||
| + | Les groupes de contacts se définissent dans le fichier « / | ||
| + | Les groupes de contacts se définissent aussi dans le fichier « / | ||
| + | et les entrées ont un format ressemblant à ceci : | ||
| + | |||
| + | < | ||
| + | define contactgroup{ | ||
| + | contactgroup_name | ||
| + | alias | ||
| + | members | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Il n'est pas nécessaire d' | ||
| + | |||
| + | ==== Configuration des surveillance de services et d' | ||
| + | |||
| + | La surveillance de services et d' | ||
| + | |||
| + | Pour utiliser un test de service il faut plusieurs choses : | ||
| + | |||
| + | * un greffon ou plugin utilisable en ligne de commande (le nom commence par check_ ) , il est très intéressant de le tester via la ligne de commande pour voir ses arguments | ||
| + | | ||
| + | | ||
| + | |||
| + | Pour récapituler : | ||
| + | |||
| + | script shell -> chekcommands.cfg -> services.cfg | ||
| + | |||
| + | //Remarque : // Les explications concernant les différentes options sont disponibles sur votre serveur Nagios au travers de l' | ||
| + | |||
| + | Notre exemple consiste en deux hôtes (un serveur mail et un serveur de fichier). Le serveur mail possède un service SMTP et un service IMAP. Le serveur de fichier possède un service NFS. Ces deux hôtes sont connectés sur un routeur-switch qui est le lien vers l' | ||
| + | |||
| + | === Les hôtes === | ||
| + | |||
| + | Tout d' | ||
| + | |||
| + | < | ||
| + | define host{ | ||
| + | use | ||
| + | host_name | ||
| + | alias | ||
| + | address | ||
| + | check_command | ||
| + | } | ||
| + | |||
| + | define host{ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | |||
| + | define host{ | ||
| + | | ||
| + | host_name | ||
| + | alias | ||
| + | address | ||
| + | check_command | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | Ce qu'il est important de remarquer dans ces quelques lignes, c'est le fait que tous utilisent un modèle (// | ||
| + | |||
| + | Une autre chose à laquelle vous devez faire attention, ce sont les noms d' | ||
| + | |||
| + | Enfin, remarquez que pour chaque hôte on a indiqué quelle commande de vérification est utilisée. Ces commandes sont, soit des commandes de bases de Nagios, soit des commandes ajoutées manuellement dans le fichier '' | ||
| + | |||
| + | === Les groupes d' | ||
| + | |||
| + | Pour que les notifications soient effectives pour les hôtes, les hôtes doivent être mis dans des groupes d' | ||
| + | |||
| + | Ici, nous allons déterminer deux groupes d' | ||
| + | < | ||
| + | define hostgroup{ | ||
| + | hostgroup_name | ||
| + | | ||
| + | contact_groups | ||
| + | | ||
| + | } | ||
| + | |||
| + | define hostgroup{ | ||
| + | | ||
| + | | ||
| + | | ||
| + | members | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Avec les groupes d' | ||
| + | |||
| + | === Les services === | ||
| + | |||
| + | L' | ||
| + | |||
| + | |||
| + | < | ||
| + | # Generic service definition template | ||
| + | define service{ | ||
| + | ; The ' | ||
| + | name generic-service | ||
| + | | ||
| + | passive_checks_enabled | ||
| + | parallelize_check | ||
| + | ; (disabling this can lead to major performance problems) | ||
| + | obsess_over_service | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | retain_status_information | ||
| + | retain_nonstatus_information | ||
| + | | ||
| + | check_period | ||
| + | normal_check_interval | ||
| + | | ||
| + | | ||
| + | notification_interval | ||
| + | | ||
| + | notification_options | ||
| + | |||
| + | register | ||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | define service{ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | |||
| + | define service{ | ||
| + | use | ||
| + | hostgroup_name | ||
| + | service_description | ||
| + | contact_groups | ||
| + | check_command | ||
| + | flap_detection_enabled | ||
| + | } | ||
| + | |||
| + | define service{ | ||
| + | use | ||
| + | host_name | ||
| + | service_description | ||
| + | contact_groups | ||
| + | check_command | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Ce qu'il faut noter au travers de ces quelques lignes est la manière dont on peut passer des paramètres aux commandes. Dans la définition du service '' | ||
| + | |||
| + | Les lignes : | ||
| + | normal_check_interval | ||
| + | max_check_attempts | ||
| + | | ||
| + | |||
| + | méritent peut-être un peu d' | ||
| + | |||
| + | Avantages : | ||
| + | |||
| + | * On réduit les chances de fausse alerte : le service a été testé 3 fois comme non OK. | ||
| + | |||
| + | Inconvénients : | ||
| + | |||
| + | * On n'a pas d' | ||
| + | |||
| + | À vous de régler '' | ||
| + | |||
| + | Pensez aussi à la notion de // | ||
| + | |||
| + | | ||
| + | |||
| + | |||
| + | === Escalation === | ||
| + | |||
| + | L' | ||
| + | Scénario simple : vous définissez les contacts pour vous et vos collègues administrateurs : c'est tout ce beau monde qui recevra immédiatement une alerte en cas de soucis, si l' | ||
| + | |||
| + | Cette étape est décrite dans le fichier « / | ||
| + | |||
| + | < | ||
| + | define serviceescalation{ | ||
| + | host_name | ||
| + | service_description | ||
| + | first_notification | ||
| + | last_notification | ||
| + | contact_groups | ||
| + | notification_interval | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Si vous ne voulez pas utiliser l' | ||
| + | |||
| + | === Gestion des informations étendues === | ||
| + | |||
| + | À chacun des hôtes et services peuvent être rattachés des arguments de type liens hypertextes et images. Pour cela, éditer le fichier de configuration cgi.cfg | ||
| + | |||
| + | [[: | ||
| + | |||
| + | |||
| + | |||
| + | < | ||
| + | xedtemplate_config_file=/ | ||
| + | xedtemplate_config_file=/ | ||
| + | </ | ||
| + | |||
| + | Créer les 2 fichiers suivants qui géreront respectivement les informations liées aux hôtes et services : | ||
| + | |||
| + | < | ||
| + | touch / | ||
| + | touch / | ||
| + | </ | ||
| + | |||
| + | Exemple de fichiers et d' | ||
| + | |||
| + | < | ||
| + | define hostextinfo{ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | define serviceextinfo{ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Le paramètre // | ||
| + | |||
| + | Les images doivent être stockées dans le répertoire / | ||
| + | |||
| + | |||
| + | |||
| + | ==== Démarrage et rechargement de Nagios ==== | ||
| + | |||
| + | Pour démarrer ou arrêter Nagios, vous pouvez le faire en ligne de commande de la manière suivante : | ||
| + | |||
| + | | ||
| + | | ||
| + | |||
| + | Pour recharger la configuration de Nagios (et en même temps la tester), utilisez la commande suivante : | ||
| + | |||
| + | | ||
| + | |||
| + | |||
| + | ===== Techniques avancées ===== | ||
| + | |||
| + | |||
| + | ==== Pilotage d'un GSM ==== | ||
| + | |||
| + | Lorsqu' | ||
| + | |||
| + | Cependant, si votre serveur mail ou la ligne internet est inaccessible, | ||
| + | |||
| + | Une solution est d' | ||
| + | |||
| + | Nous avons adopté une solution basique qui fonctionne bien pour les petits volumes; il s'agit de piloter un GSM directement par le serveur Ubuntu en utilisant un câble data USB. La plupart des GSM conviendront à cet usage, l' | ||
| + | |||
| + | //Remarque :// Certains Nokia peuvent poser des problèmes de compatibilités car ils utilisent un protocole propriétaire à la firme finlandaise. | ||
| + | |||
| + | Nous avons choisi un GSM de marque Siemens AX75 et son câble data DCA-510 pour effectuer nos notifications SMS. Il suffit juste d' | ||
| + | |||
| + | Pour piloter le GSM, nous avons besoin de la bibliothèque '' | ||
| + | sudo apt-get install gsm-utils | ||
| + | |||
| + | Ensuite, connectez le GSM //via// son câble data à un des connecteurs USB. Si tout se passe bien, le système //Hotplug// va charger le module '' | ||
| + | sudo ls -al / | ||
| + | |||
| + | Si vous n'avez pas de '' | ||
| + | | ||
| + | |||
| + | Le paquet '' | ||
| + | | ||
| + | |||
| + | Vous devriez obtenir toutes les informations disponibles sur le GSM. | ||
| + | |||
| + | Maintenant, essayez d' | ||
| + | | ||
| + | |||
| + | Si tout se passe bien, vous n'avez plus qu'à configurer Nagios pour qu'il puisse envoyer des SMS (en utilisant le champ '' | ||
| + | |||
| + | * Vous devez autoriser l' | ||
| + | | ||
| + | < | ||
| + | define command{ | ||
| + | command_name | ||
| + | command_line | ||
| + | } | ||
| + | |||
| + | define command{ | ||
| + | command_name | ||
| + | command_line | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | //Remarque :// Il est inutile de me contacter pour des problèmes de compatibilité de GSM, câble et gsmlib. Veuillez directement vous adresser au développeur de gsmlib ([[http:// | ||
| + | ==== Notifications par SMS / Voice call / iPhone push notification : TeamTILT pour Nagios ==== | ||
| + | |||
| + | Une solution très simple existe pour envoyer ses notifications Nagios via SMS ou voice call : le client TeamTILT pour Nagios. | ||
| + | |||
| + | __Brève description :__ | ||
| + | |||
| + | Un client Java est à installer sur le serveur de monitoring. Ce client se connecte via une requête SOAP à un serveur distant qui est chargé de renvoyer les alertes recues par SMS ou voice call selon le schéma d' | ||
| + | |||
| + | | ||
| + | * Fonction heartbeat : la connexion entre le client TeamTILT pour Nagios et TeamTILT est constamment surveillée. Une alerte est envoyée depuis TeamTILT s'il y a une coupure. | ||
| + | | ||
| + | | ||
| + | * Pas de dépendance émail/SMTP : défaillance SMTP? Le pare-feu bloque? Pas de soucis, vous recevrez un SMS ! | ||
| + | |||
| + | __Quelques fonctionnalités :__ | ||
| + | |||
| + | | ||
| + | * Interface web pour visualiser les réponses en temps réel. | ||
| + | | ||
| + | * Support en ligne GRATUIT : vous avez des questions? Un problème? Chattez en direct avec un agent du support à travers le support en ligne. | ||
| + | * Couverture mondiale : recevez vos alertes où que vous soyez dans le monde. | ||
| + | |||
| + | __Procédure d' | ||
| + | |||
| + | * Télécharger l' | ||
| + | //sudo wget http:// | ||
| + | sudo wget http:// | ||
| + | |||
| + | * Décompresser l' | ||
| + | //sudo tar xzvf TeamTILTClientForNagios_CL_JRE_32.tar.gz// | ||
| + | * Entrez dans ce répertoire et lancer le runTeamTILT.sh : | ||
| + | //cd TeamTILTForNagios/ | ||
| + | sudo ./ | ||
| + | * Suivez la procédure d' | ||
| + | |||
| + | \\ | ||
| + | Vous pourrez trouver à cette adresse toutes les procédures d' | ||
| + | |||
| + | |||
| + | ==== Greffons personnalisés ==== | ||
| + | |||
| + | Comme nous l' | ||
| + | |||
| + | La relation entre le moteur et les greffons est assurée d'une part dans la configuration de Nagios (dans les // | ||
| + | |||
| + | En effet, un greffon n'est qu'un script/ | ||
| + | |||
| + | Pour information, | ||
| + | * 0 : OK | ||
| + | * 1 : WARNING | ||
| + | * 2 : CRITICAL | ||
| + | * 3 : UNKNOWN | ||
| + | |||
| + | Ce sont donc ces états qui seront ensuite remontés au moteur qui prendra les décisions et lancera les actions programmées. | ||
| + | |||
| + | Ces greffons fonctionnent soit en local sur la machine supervisée (par exemple les vérifications sur les disques), soit effectuent des tests à distance (tests sur des protocoles réseaux tels SMTP ou exécution à distance via SSH ou autre). | ||
| + | |||
| + | Exemple : | ||
| + | |||
| + | Sur notre serveur de supervision, | ||
| + | |||
| + | Pour ce faire, on utilise le script suivant : | ||
| + | |||
| + | < | ||
| + | #!/bin/sh | ||
| + | |||
| + | # Inclusion de le mini librairie definissant les etats et quelques fonctions de base | ||
| + | source / | ||
| + | |||
| + | / | ||
| + | |||
| + | POWER=`awk '$1 == "< | ||
| + | |||
| + | if test `grep -c " | ||
| + | then | ||
| + | echo " | ||
| + | | ||
| + | else | ||
| + | | ||
| + | exit $STATE_OK | ||
| + | fi | ||
| + | </ | ||
| + | |||
| + | Sans entrer dans les détails, on indique des informations sur le sortie standard avec les commandes '' | ||
| + | |||
| + | |||
| + | ==== Serveurs redondants ==== | ||
| + | |||
| + | Nagios est capable de tourner en mode redondance. C' | ||
| + | Je vous renvoie au [[http:// | ||
| + | |||
| + | |||
| + | ==== Supervision de la charge des serveurs ==== | ||
| + | |||
| + | -> Vous trouverez toutes les informations nécessaires sur la page traitant des [[: | ||
| + | |||
| + | |||
| + | ===== Plugins divers ===== | ||
| + | |||
| + | |||
| + | |||
| + | ==== NSClient pour superviser les machines Windows™ ==== | ||
| + | |||
| + | Le plugin check_nt permet de récupérer des informations sur des hôtes basés sur le système d' | ||
| + | |||
| + | Penser à préciser le mot de passe qui protège NSClient des requêtes frauduleuses. Le mot de passe est stocké sur le pc où est installé l' | ||
| + | |||
| + | Pour paramétrer le mot de passe sur la requête envoyée par le serveur Nagios, [[: | ||
| + | < | ||
| + | # ' | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==== Bibliothèques de greffons ==== | ||
| + | |||
| + | Nagios Exchange fournit un joli choix de scripts de check pour Nagios, evidemment vous pouvez écrire votre propre script (voir plus haut) et s'il fonctionne bien pourquoi ne pas le proposer sur NagiosExchange. | ||
| + | |||
| + | |||
| + | ==== Installation du plugin VRML ==== | ||
| + | |||
| + | Le Virtual Reality Modeling Language (abrégé en VRML) est un Langage de programmation spécialisé dans la représentation d' | ||
| + | |||
| + | Il faudra donc installer sur les postes clients un plugin VRML ; le plugin Cortona fait office de référence pour Windows et Mac mais n' | ||
| + | |||
| + | Un paquet au format deb existe pour Ubuntu Dapper et fonctionne pour Edgy ; commencer par récupérer le paquet [[http:// | ||
| + | < | ||
| + | |||
| + | Ce paquet est dépendant de celui nommé // | ||
| + | < | ||
| + | sudo dpkg -i freewrl_1.18.2-1_i386.deb</ | ||
| + | |||
| + | ==== Extension Nagios pour Firefox / Thunderbird / Chromium ==== | ||
| + | |||
| + | Vous pouvez installer le plugin Nagios Checker pour les navigateurs internet Firefox et Chromium, ou pour le gestionnaire de courrier Thunderbird. Le paramétrage est complet (possibilité de notifications visuelles et/ou sonore, gestion des accès authentifiés...). Vous aurez ainsi la possibilité de superviser les problèmes directement dans la barre d' | ||
| + | | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | ==== Extension Gnome === | ||
| + | |||
| + | À partir d' | ||
| + | |||
| + | //Nb: le fonctionnement de la fenêtre flottante demanderait à être testé en environnement 11.04/ | ||
| + | |||
| + | ==== PNP : un plugin pour ajouter des graphes à Nagios === | ||
| + | |||
| + | L' | ||
| + | |||
| + | ===== Voir aussi ===== | ||
| + | |||
| + | * **(en)** [[http:// | ||
| + | * **(en)** [[http:// | ||
| + | * **(fr)** [[https:// | ||
| + | * **(fr)** [[http:// | ||
| + | * **(fr)** [[http:// | ||
| + | * **(en)** [[http:// | ||
| + | * **(fr)** [[http:// | ||
| + | * **(fr)** [[http:// | ||
| + | *[[: | ||
| + | *[[: | ||
| + | *[[:vROps]] VMware vRealize Operations | ||
| + | *[[: | ||
| + | |||
| + | ---- | ||
| + | |||
| + | // | ||
