Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati


Introduzione

Monit è una applicazione utile a monitorare lo stato di file, directory, processi e periferiche. È in grado di intraprendere particolari misure di manutenzione nel caso in cui riscontri particolari anomalie.

Installazione

Il programma è presente nel componente universe dei repository ufficiali. Una volta abilitato tale componente è sufficiente installare il pacchetto monit.

Configurazione

Per configurare l'applicazione è sufficiente modificare con un editor di testo con i privilegi di amministrazione il file di configurazione /etc/monit/monitrc.

Prima di tutto è necessario specificare quali server di posta verranno utilizzati per l'invio dei messaggi di notifica. È possibile aggiungere diversi server di posta con le relative porte. Supponendo di voler utilizzare per l'invio della posta i server mx1.example.com con porta standard 25 e mx2.example.com, con porta 10025, occorre aggiungere al file di configurazione la seguente direttiva:

set mailserver mx1.example.com,
               mx2.example.com port 10025

Specificare poi l'indirizzo mittente da cui l'applicazione invierà la posta, ad esempio monit@example.com:

set mail-format { from: monit@example.com }

Specificare l'indirizzo a cui le mail di notifica dovranno essere consegnate (es. sysadmin@example.com)

set alert sysadmin@example.com

Abilitare il server web interno per accedere all'interfaccia di amministrazione. È possibile specificare a quali indirizzi consentire l'accesso (es. localhost) e quali utenti, con le relative password. Nell'esempio che segue verrà configurato un singolo accesso di amministrazione per l'utente «admin» con password «monit»:

set httpd port 2812 and
     use address localhost  # accetta connessioni solo da localhost 
     allow localhost        # permette la visualizzazione solo se la richiesta proviene da localhost 
     allow admin:monit      # utente admin con password monit

Una configurazione più sicura prevede l'utilizzo di SSL. Per far ciò è necessario generare un certificato x509 valido. Supponendo che questo sia contenuto, insieme alla relativa chiave privata, nel file /var/certs/monit.pem occorre aggiungere una direttiva del seguente tipo:

set httpd port 2812 and
     SSL ENABLE
     PEMFILE  /var/certs/monit.pem
     allow admin:monit

Qualora si vogliano monitorare le risorse utilizzate dal sistema, è possibile aggiungere una regola che avvisi l'amministratore nel caso in cui alcune soglie vengano superate. Quello che segue è un esempio generico:

check system server.example.com
    if loadavg (1min) > 4 then alert
    if loadavg (5min) > 2 then alert
    if memory usage > 75% then alert
    if cpu usage (user) > 70% then alert
    if cpu usage (system) > 30% then alert
    if cpu usage (wait) > 20% then alert

Se si desidera invece monitare i permessi e il proprietario di una particolare cartella di sistema è utile aggiungere una regola simile alla seguente:

check directory bin with path /bin
    if failed permission 755 then unmonitor
    if failed uid 0 then unmonitor
    if failed gid 0 then unmonitor

Per monitare un servizio di sismtema è utile aggiungere una direttiva simile alla seguente:

check process slapd with pidfile /var/run/slapd/slapd.pid
   start program = "/etc/init.d/slapd start"
   stop program = "/etc/init.d/slapd stop"
   if failed host 192.168.1.1 port 389 protocol ldap3 then restart
   if 5 restarts within 5 cycles then timeout

Nella configurazione dell'esempio sopra citato, qualora il server ldap risultasse non disponibile, monit provvederà a riavviarlo.

Per monitare un PC remoto su cui gira una istanza di MySql, è utile aggiungere una direttiva simile alla seguente:

check host myserver with address 192.168.1.1
    if failed icmp type echo count 3 with timeout 3 seconds then alert
    if failed port 3306 protocol mysql with timeout 15 seconds then alert

Le diciture «myserver» e «192.168.1.1» vanno sostituite con gli indirizzi adatti ai propri scopi.

Avvio del servizio

Aprire il file /etc/defautl/monit con un editor di testo con i privilegi di amministrazione, dunque modificare la variabile «startup» come nell'esempio seguente:

startup=1

Infine avviare il servizio con il seguente comando in una finestra di terminale:

sudo /etc/init.d/monit start

L'interfaccia amministrativa di monit sarà raggiungibile all'indirizzo http://localhost:2812.

Ulteriori risorse


CategoryServer CategoryDaRevisionare