NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [[email protected]] Giuseppe...

24
NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [[email protected]] Giuseppe Sava [[email protected]] Gennaro Tortone [[email protected]] Padova – Dicembre 2001

Transcript of NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [[email protected]] Giuseppe...

Page 1: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

NetSaint: una soluzione OpenSource per il network

monitoring

Paolo Lo Re [[email protected]]

Giuseppe Sava [[email protected]]

Gennaro Tortone [[email protected]]

Padova – Dicembre 2001

Page 2: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

IntroNetSaint è un’applicazione OpenSource scritta in C per il network monitoring

Supporta “ufficialmente” Linux anche se esistono porting per *BSD, Compaq True64, AIX, SCO, Solaris, IRIX, HP-UX

last stable release: 0.0.6

last beta release: 0.0.7b7

Ottobre 2001: NetSaint cambia nome in Nagios (www.nagios.org)

Page 3: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Caratteristiche monitoraggio dei servizi di rete

(SMTP, POP3, NNTP, HTTP, ecc.) monitoraggio delle risorse degli host

(CPU load, spazio disco, ecc.) possibiltà di creare “gerarchie di host” definendo dei

“parent host” in modo da rilevare eventuali “host irrangiungibili”

possibilità di definire dei “contacts” da notificare (via email, SMS, etc.) in caso di problemi con host e/o servizi

possibilità di definire degli “event handlers” da eseguire su host remoti in caso di problemi con dei servizi

interfaccia web per monitorare lo status degli host e dei servizi, cronologia dei problemi e delle notifiche, ecc.

Page 4: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Caratteristiche monitoraggio tramite l’esecuzione di plugin possibilità di definire degli account abilitati alla

consultazione di alcune sezioni dell’interfaccia web per il controllo selettivo di host e/o servizi

Novita’ nella versione 0.0.7 supporto per il logging degli eventi in database tramite

PostgreSQL interprete Perl integrato

Page 5: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

ArchitetturaPlugins

NetSaint non include all’interno del suo codice i meccanismi di controllo dei servizi e degli host

esistono dei programmi esterni (chiamati plugins) che svolgono questo compito

NetSaint esegue un plugin specificato nella definizione di un host o di un servizio, interpreta i valori di ritorno e intraprende le azioni opportune (notifiche, event handler, ecc.)

Page 6: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Architettura

Page 7: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Architettura Pro

questa architettura estremamente modulare rende possibile il monitoraggio di qualsiasi servizio o risorsa incoraggiando lo sviluppo di routine personalizzate che restituiscano valori di controllo appropriati alla logica di NetSaint (es. controllo della temperatura in un locale, ecc.)

Control’unico svantaggio e’ che NetSaint non ha assolutamente idea di cosa stiamo monitorando; non e’ possibile produrre dei grafici relativi alle “misure” effettuate dai plugins; tali rappresentazioni possono prendere in considerazione solo i “cambiamenti di stato” effettuati dal servizio o dalla risorsa nel tempo.

Page 8: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

ArchitetturaEvent handlers

Un event handler e’ un comando che viene eseguito da NetSaint quando avviene un cambiamento di stato per un host o un servizio. Esistono due tipi di event handlers:

event handlers per servizi event handlers per host

Inoltre e’ anche possibile definire degli event handlers globali che vengono eseguiti da NetSaint per ogni cambiamento di stato relativo ad un host o ad un servizio.

Page 9: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

ArchitetturaControllo “indiretto” di host e servizi

ci sono diverse risorse da monitorare che non sono “pubbliche” come i servizi di rete, come ad esempio lo spazio libero su un hard disk, il carico della CPU, ecc. Queste risorse non possono essere monitorate senza l’installazione di un “agente” sull’host da controllare.

i checks che richiedono l’utilizzo di un agente remoto sulla macchina da monitorare vengono chiamati “controlli indiretti”.

Essi sono utili per: monitorare risorse “locali” (utilizzo del disco, numero di utenti

collegati) di un host remoto monitorare servizi e host localizzati dietro un firewall

Page 10: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

ArchitetturaL’immagine seguente mostra il funzionamento di un check indiretto mediante l’utilizzo di un addon chiamato NRPE (NetSaint Remote Plugin Executor)

L’host NetSaint esegue un plugin chiamato check_nrpe che si interfaccia via rete con l’agente NRPE il quale lancia il plugin direttamente sull’host remoto e comunica i risultati ottenuti.

 Esiste anche NRPEP che possiede le stesse funzionalità di NRPE, ma e’ scritto in Perl e utilizza le librerie Crypt-TripleDES 0.24 e Digest-MD5 2.09 per crittografare lo scambio di informazioni tra host NetSaint e host remoto.

Page 11: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

ArchitetturaControllo “passivo” di host e servizi

A partire dalla versione 0.0.6 NetSaint e’ in grado di raccogliere i risultati dei check provenienti dai plugins che vengono eseguiti su host remoti.

I check “passivi” sono utili per: monitorare servizi e host localizzati dietro un firewall monitorare servizi “asincroni” (SNMP traps, security alerts,

ecc.);

Quando un’applicazione esterna compie un check scrive (in un determinato formato) i risultati dell’esecuzione nel file netsaint.cmd. Periodicamente NetSaint effettua la raccolta dei risultati presenti nel file e li elabora secondo la logica di controllo.

Page 12: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Architettura

Se l’applicazione che invia i risultati dei controlli “passivi” risiede sullo stesso host di NetSaint, allora puo’ scrivere direttamente nel file netsaint.cmd. Viceversa, se l’applicazione risiede su un host remoto, esiste un addon, chiamato NSCA (NetSaint Service Check Acceptor), che viene installato sulla macchina NetSaint e sull’host remoto. Il daemon presente sull’host NetSaint autentica le connessioni provenienti dai client remoti, accetta i risultati che vengono trasmessi e li scrive direttamente nel file netsaint.cmd

Page 13: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 14: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Addons disponibili NEAT (NetSaint Easy Administration Tool)

Neat è un interfaccia web per l’amministrazione di NetSaint. Consente di aggiungere, modificare ed eliminare, in maniera semplice ed intuitiva, host e servizi dai file di configurazione di NetSaint

NRPE (NetSaint Remote Plugin Executor)Nrpe è un agente che permette di eseguire plugin su host remoti. Può essere eseguito sull’host da monitorare sia in daemon-mode che mediante inetd. E’ anche disponibile la versione in Perl che crittografa il traffico in transito (NRPEP)

NSCANsca consente di inviare, da un host remoto, i risultati dell’esecuzione locale dei plugin al server NetSaint

Page 15: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 16: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 17: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 18: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 19: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 20: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 21: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 22: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]
Page 23: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Proposte di utilizzo

NetSaint come possibile tool di network monitoring della GRID

raggiungibilità host risoluzione automatica fault servizi tramite event-handler disponibilità dei servizi Globus (GRIS, GIIS, GSIFTP,

Gatekeeper) notifiche sullo stato delle risorse

NetSaint come possibile tool di LAN monitoring di host e servizi all’interno delle sezioni INFN

Page 24: NetSaint: una soluzione OpenSource per il network monitoring Paolo Lo Re [lore@na.infn.it] Giuseppe Sava [sava@ct.infn.it] Gennaro Tortone [tortone@na.infn.it]

Riferimenti

http://netsaint.sourceforge.nethome page del progetto NetSaint

http://netsaintplug.sourceforge.nethome page del progetto di sviluppo dei plugins

http://www.na.infn.it/compreso/netsaint/netsaint.pdfguida all’installazione in italiano (alpha release)