#format wiki #LANGUAGE it <
> <> = 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 [[Repository/Componenti|componente]] '''universe''' dei [[Repository|repository]] ufficiali. Una volta abilitato tale componente è sufficiente [[AmministrazioneSistema/InstallareProgrammi|installare]] il pacchetto ''monit''. = Configurazione = Per configurare l'applicazione è sufficiente modificare con un [[Ufficio/EditorDiTesto|editor di testo]] con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file di configurazione `/etc/monit/monitrc`. Prima di tutto è necessario specificare quali [[Server/Mail|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 [[Server/MySql|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 [[Ufficio/EditorDiTesto|editor di testo]] con i [[AmministrazioneSistema/Sudo|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 = * [[http://www.tildeslash.com/monit/|Sito ufficiale del progetto]] * [[http://www.tildeslash.com/monit/doc/examples.php|Esempi di configurazione]] * [[http://www.howtoforge.com/server_monitoring_with_munin_monit_debian_etch|Server Monitoring With munin And monit On Debian Etch]] ## da questo punto in poi non modificare! ---- CategoryServer CategoryDaRevisionare