Projet

Général

Profil

Wiki » Historique » Version 28

Patrice Nadeau, 2015-01-02 15:58

1 21 Patrice Nadeau
h1. Nagios
2 1 Patrice Nadeau
3 4 Patrice Nadeau
Nagios est un système de surveillance (monitoring) d’ordinateurs, imprimantes, routeurs et de services logiciels.
4
Il existe en version payante (Nagios IX) et « open source » (Nagios Open Source). 
5
C’est cette dernière version qui seras discutée ici.
6
Ce guide est une introduction et ne ce veux en aucun cas une formation complète.
7
Pour plus d’informations, consulter le site http://www.nagios.org/
8 1 Patrice Nadeau
9 24 Patrice Nadeau
>Les explications suivantes sont pour une installation sous openSUSE avec les « packages » de YaST. 
10
>Les répertoires d’installation sont différents de ceux par défaut.
11
12 3 Patrice Nadeau
{{TOC}}
13
14 21 Patrice Nadeau
h2. Installation
15 2 Patrice Nadeau
16 21 Patrice Nadeau
h3. Requis
17 11 Patrice Nadeau
18 25 Patrice Nadeau
* Un serveur [[guides_opensuse:wiki|openSUSE]],
19 4 Patrice Nadeau
* Apache installé et configuré,
20 26 Patrice Nadeau
* Un serveur de courriel (Postfix ou Exim) installé et configuré,
21 1 Patrice Nadeau
* Une adresse IP fixe,
22 4 Patrice Nadeau
* Une entré DNS (enregistrement A ou CNAME).
23 24 Patrice Nadeau
> Un serveur physique est fortement recommandé. Un BeagleBone Black peut être une belle alternative.
24 4 Patrice Nadeau
25
h3. Installation de Nagios
26
27
A partir de la ligne de commande, avec l’utilisateur _root_ :
28 2 Patrice Nadeau
<pre><code class="bash">
29 28 Patrice Nadeau
# Ajouter le repository (version 3.5.1 stable)
30
zypper ar http://download.opensuse.org/update/13.1/ Updates
31
# Faire l'installation des modules
32 19 Patrice Nadeau
zypper install nagios nagios-plugins-nrpe
33 2 Patrice Nadeau
</code></pre>
34 4 Patrice Nadeau
35 21 Patrice Nadeau
h2. Configuration
36 4 Patrice Nadeau
37 21 Patrice Nadeau
h3. Création du fichier de mot de passe Web
38 4 Patrice Nadeau
39
Pour l’utilisation de la page Web disponible a l’adresse http://serveur/nagios.
40
L’utilisateur seras *nagiosadmin*.
41
A la ligne de commande, en tant que _root_ :
42
43
<pre><code class="bash">
44 17 Patrice Nadeau
htpasswd2 -c /etc/nagios/htpasswd.users nagiosadmin
45 18 Patrice Nadeau
systemctl reload apache2.service
46 4 Patrice Nadeau
</code></pre>
47
48 23 Patrice Nadeau
h3. Démarrage automatique
49 4 Patrice Nadeau
50
<pre><code class="bash">
51 20 Patrice Nadeau
systemctl enable nagios
52
systemctl start nagios
53 4 Patrice Nadeau
</code></pre>
54
55 27 Patrice Nadeau
Dans */etc/nagios/object*
56
* Renommer le fichier *localhost.cfg* pour *linux.cfg*.
57
58
Modifier le fichier */etc/nagios/nagios.cfg* pour refléter ce changement.
59 4 Patrice Nadeau
Vérifier la configuration avec *rcnagios check*.
60
Si il n’y pas d’erreurs, relancer le service avec *rcnagios start*.
61
Sinon, vérifier le log avec *tail -20 /var/log/nagios/config.err*.
62 3 Patrice Nadeau
63 22 Patrice Nadeau
h3. Fichiers
64 5 Patrice Nadeau
65
Les fichiers de configuration sont situés dans */etc/nagios*
66
Les principaux sont :
67
* *nagios.cfg* : configuration de Nagios lui-même
68
* *ressources.cfg* : liste des macros, usagers et mots de passe
69
70 21 Patrice Nadeau
h2. Utilisation
71 5 Patrice Nadeau
72 10 Patrice Nadeau
Typographie dans les fichiers
73
* Un commentaire sur une ligne complète commence par un croisillon (#).
74
* Un commentaire à la fin d’une ligne commence par un point-virgule (;).
75
* Une exclusion est exprimé par un point d’exclamation (!) précédant l’item.
76
* Les items d’une liste sont séparés par une virgule (,).
77
78 21 Patrice Nadeau
h3. Fichiers
79 5 Patrice Nadeau
80
Les fichiers de configuration sont situés dans */etc/nagios/objects*
81
Les principaux sont :
82
* *templates.cfg*
83
* *commands.cfg* : commandes, scripts a exécuter
84
* *contacts.cfg* : contacts pour les alarmes
85 7 Patrice Nadeau
* *timeperiods.cfg* : les périodes de vérifications
86
87
L’utilisation de gabarits (« templates ») est fortement recommandée. 
88
Un item dans un gabarit peux être redéfinis.
89
Ceci permet d’avoir des gabarits ayant les options par défaut et seulement les exceptions sont à définir dans les sections hôtes, groupe et services.
90
> Les explications suivantes prennent pour acquis l’utilisation des gabarits fournis avec Nagios.
91
92 21 Patrice Nadeau
h3. Hosts
93 6 Patrice Nadeau
94
"Liste complète des paramètres pour hôte":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#host
95
Liste des items :
96
* *use* : le nom du gabarit, contenu dans template.cfg
97
* *host_name* : nom de l’hôte, seras utilisé dans le reste de la configuration.
98
* *alias* : description du hôte.
99
* *address* : l’adresse IP ou le FQDN du hôte.
100 9 Patrice Nadeau
* *icon_image* (facultatif) : une image représentant le serveur. Situé à */usr/share/nagios/images/logos*.
101 6 Patrice Nadeau
* *action_url* (facultatif) :
102
103
Exemple :
104
<pre><code class="nagios">
105
define host {
106 5 Patrice Nadeau
    use      linux−server
107
    hostname linux1
108
    alias    Serveur Linux 1
109
    address  linux1.mydomain.com
110
}
111
</code></pre>
112
113 21 Patrice Nadeau
h3. Groups
114 12 Patrice Nadeau
115
"Liste complète des paramètres pour les groupes d’hôtes":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#hostgroup
116
117
Liste des items minimum :
118
* *hostgroup_name* : nom du groupe.
119
* *alias* : description du groupe.
120
* *members* : liste des hôtes dans ce groupe.
121
122
Exemple :
123
<pre><code class="nagios">
124
define hostgroup {
125
    hostgroup_name linux−servers
126
    alias          Linux servers
127
    members        linux1
128
}
129
</code></pre>
130
131 21 Patrice Nadeau
h3. Services
132 13 Patrice Nadeau
133
"Liste complète des paramètres pour les services":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#service
134
135
Liste des items minimum :
136
* *use* : le nom du gabarit.
137
* *host_name* : noms des hôtes utilisant ce service.
138
* *service_description* : description du service.
139
* *check_command* : commande à effectuer. Définis dans *commands.cfg*.
140
141 14 Patrice Nadeau
Exemple :
142
<pre><code class="nagios">
143
define service{
144
    use                    local−service
145
    host_name              localhost
146
    service_description    PING
147
    check_command          check_ping!100.0,20%!500.0,60%
148
}
149
</code></pre>
150
151 21 Patrice Nadeau
h2. Agents
152 15 Patrice Nadeau
153 21 Patrice Nadeau
h3. Linux
154 15 Patrice Nadeau
155
Sous Linux, installer *nagios-nrpe*
156
<pre><code class="bash">
157
zypper install nagios−nrpe
158
</code></pre>
159
160
Ouvrir dans le pare feu les ports suivants :
161
* NRPE service (TCP 5666)
162
163
Éditer le fichier */etc/nrpe.cfg* et modifier les lignes suivantes :
164
* *allowed_hosts* : indiquer l’adresse IP ou le FQDN(Fully Qualified Domain Name) du serveur Nagios
165
166
Configuration du service
167
<pre><code class="bash">
168
systemctl enable nrpe.services
169
systemctl start nrpe
170
</code></pre>
171
172
h3. Windows