- Documentazione ufficiale
- Guide della comunità
- 12.04 LTS

web wiki forum planet
help.ubuntu-it comunità italiana

- Desktop
- Server
- Ricerca

Questa guida non è stata ancora completamente tradotta. Se vuoi contribuire alla sua traduzione contatta il Gruppo Traduzione di Ubuntu-it.
Guida a Ubuntu Server » Monitoraggio »
Indietro | Avanti

# Nagios

- Installazione
- Panoramica della configurazione
- Configurazione
- Riferimenti

## Installazione

Per prima cosa, su server01 installare il pacchetto nagios. In un terminale digitare:

    sudo apt-get install nagios3 nagios-nrpe-plugin

Viene chiesto di inserire una password per l'utente nagiosadmin. Le credenziali vengono salvate nel file /etc/nagios3/htpasswd.users. Per modificare la password dell'utente nagiosadmin o per aggiungere altri utenti, usare il comando htpasswd, parte del pacchetto apache2-utils.

Per esempio, per modificare la password dell'utente nagiosadmin digitare:

    sudo htpasswd /etc/nagios3/htpasswd.users nagiosadmin

Per aggiungere un utente:

    sudo htpasswd /etc/nagios3/htpasswd.users steve

Su server02 installare il pacchetto nagios-nrpe-server. Da un terminale su server02 inserire:

    sudo apt-get install nagios-nrpe-server

NRPE consente di eseguire controlli locali sugli host remoti. Esistono anche altri metodi per eseguire questo attraverso l'uso di altri plugin o controlli di Nagios.

## Panoramica della configurazione

Esistono diverse directory contenenti file di configurazione e di controllo di Nagios.

- /etc/nagios3: contiene i file di configurazione per le operazioni del demone nagios, i file CGI, host, ecc...

- /etc/nagios-plugins: contiene i file di configurazione per i controlli del servizio.

- /etc/nagios: sull'host remoto contiene i file di configurazione di nagios-nrpe-server.

- /usr/lib/nagios/plugins/: contiene i file binari dei controlli. Per visualizzare le opzioni di un controllo, usare l'opzione -h.

  Per esempio: /usr/lib/nagios/plugins/check_dhcp -h

Esistono moltissimi controlli che è possibile eseguire tramite Nagios su un qualsiasi host. In questo esempio Nagios viene configurato per controlla lo spazio su disco, DNS e un gruppo di host MySQL. Il controllo DNS avviene su server02 e il gruppo di host MySQL include sia server01 che server02.

Consultare HTTPD - Server web Apache2 per informazioni su Apache, DNS (Domain Name Service) su DNS e MySQL su MySQL.

Inoltre, vi sono alcuni termini che una volta descritti, aiuteranno a rendere più semplice la comprensione di Nagios:

- Host: un server, una workstation o un dispositivo di rete che viene monitorato.

- Gruppo di host: un gruppo di host simili. Per esempio potrebbe essere possibile raggruppare tutti i server web, i server di file, ecc...

- Servizio: il servizio che viene monitorato sull'host come HTTP, DNS, FTP, ecc...

- Gruppo di servizi: consente di raggruppare servizi simili. Utile, per esempio, per raggruppare più servizi HTTP.

- Contatto: una persona da notificare quando si verifica un evento. Nagios può essere configurato per inviare email, SMS, ecc...

Come impostazione predefinita, Nagios è configurato per controllare HTTP, spazio su disco, SSH, gli utenti attuali, i processi e il carico sul localhost. Inoltre, è in grado di controllare attraverso il comando ping il gateway.

Installazioni di Nagios di grosse dimensioni possono essere complesse da configurare ed è quindi utile partire con una configurazione piccola, uno o due host, prima di aumentare le dimensioni.

## Configurazione

- 1. First, create a host configuration file for server02. Unless otherwise specified, run all these commands on server01. In a terminal enter:

         sudo cp /etc/nagios3/conf.d/localhost_nagios2.cfg \
         /etc/nagios3/conf.d/server02.cfg

     Nei comandi precedenti e in quelli che seguono, sostituire "server01", "server02", 172.18.100.100 e 172.18.100.101 con i nomi host e gli indirizzi IP dei propri server.

  2. Modificare il file /etc/nagios3/conf.d/server02.cfg:

         define host{
                 use                     generic-host  ; Name of host template to use
                 host_name               server02
                 alias                   Server 02
                 address                 172.18.100.101
         }

         # check DNS service.
         define service {
                 use                             generic-service
                 host_name                       server02
                 service_description             DNS
                 check_command                   check_dns!172.18.100.101
         }

  3. Riavviare il demone nagios per abilitare la nuova configurazione:

         sudo /etc/init.d/nagios3 restart

- 1. Aggiungere una definizione di servizio per il controllo MySQL aggiungendo quanto segue al file /etc/nagios3/conf.d/services_nagios2.cfg:

         # check MySQL servers.
         define service {
                 hostgroup_name        mysql-servers
                 service_description   MySQL
                 check_command         check_mysql_cmdlinecred!nagios!secret!$HOSTADDRESS
                 use                   generic-service
                 notification_interval 0 ; set > 0 if you want to be renotified
         }

  2. A mysql-servers hostgroup now needs to be defined. Edit /etc/nagios3/conf.d/hostgroups_nagios2.cfg adding:

         # MySQL hostgroup.
         define hostgroup {
                 hostgroup_name  mysql-servers
                         alias           MySQL servers
                         members         localhost, server02
                 }

  3. Il controllo di Nagios necessita di autenticarsi con MySQL. Per aggiungere un utente nagios a MySQL inserire:

         mysql -u root -p -e "create user nagios identified by 'secret';"

     È necessario aggiungere l'utente nagios a tutti gli host deò gruppo mysql-servers hostgroup.

  4. Riavviare nagios per iniziare il controllo dei server MySQL.

         sudo /etc/init.d/nagios3 restart

- 1. Infine configurare NRPE affinché controlli lo spazio su disco su server02.

     Sul server01 aggiungere il controllo del servizio al file /etc/nagios3/conf.d/server02.cfg:

         # NRPE disk check.
         define service {
                 use                     generic-service
                 host_name               server02
                 service_description     nrpe-disk
                 check_command           check_nrpe_1arg!check_all_disks!172.18.100.101
         }

  2. Su server02 modificare il file /etc/nagios/nrpe.cfg:

         allowed_hosts=172.18.100.100

     E nella sezione dove sono definiti i comandi, aggiungere:

         command[check_all_disks]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -e

  3. Infine, riavviare nagios-nrpe-server:

         sudo /etc/init.d/nagios-nrpe-server restart

  4. Riavviare, su server01, nagios:

         sudo /etc/init.d/nagios3 restart

Dovrebbe essere possibile visualizzare l'host e i controlli nei file CGI di Nagios. Per accedere a questi file, in un browser web inserire l'indirizzo http://server01/nagios3. Vengono richiesti password e nome utente dell'utente nagiosadmin.

## Riferimenti

Questa sezione ha fornito una panoramica preliminare delle caratteristiche di Nagios, i pacchetti nagios-plugins-extra e nagios-snmp-plugins contengono molti altri controlli.

- Per maggiori informazioni, consultare il sito web di Nagios.

- In particolare, consultare la documentazione in rete.

- Sono disponibili anche molti libri riguardo Nagios e il monitoraggio di rete:

- The Nagios Ubuntu Wiki page also has more details.

Indietro | Avanti