Zabbix è un software di monitoraggio open source che fornisce varie metriche di controllo come, ad esempio, i livelli di utilizzo della rete, il carico della CPU o il consumo di spazio su disco. Il programa monitora le operazioni su vari ambienti come Linux, Hewlett Packard Unix (HP-UX), Mac OS X, Solaris e altri sistemi operativi mentre il monitoraggio di Windows è possibile solo tramite l’uso di agenti.
Zabbix: a che cosa serve e come funziona
Zabbix può essere usato sia per il monitoraggio basato su agenti che per il monitoraggio senza agenti. Gli agenti, installati su componenti IT, verificano le prestazioni e raccolgono dati. L’agente fa capo a un server di gestione Zabbix centralizzato. Queste informazioni sono incluse nella reportistica o visualizzate tramite l’interfaccia utente grafica (GUI – Graphic User Interface) di Zabbix. In caso di problemi, Zabbix invierà una notifica o un avviso all’utente. Il monitoraggio senza agente esegue lo stesso tipo di monitoraggio utilizzando, però, le risorse esistenti in un sistema o dispositivo per emulare un agente.
La GUI web-based di Zabbix consente agli utenti di visualizzare il proprio ambiente IT tramite cruscotti personalizzabili basati su widget, grafici, mappe di rete, presentazioni e report. Un utente, ad esempio, può personalizzare un report per mostrare le metriche associate agli accordi sul livello di servizio (SLA) e agli indicatori chiave di prestazione (KPI) sui carichi della CPU.
Zabbix funziona attraverso tre opzioni della modalità di rilevamento:
- Rilevamento della rete, che esegue periodicamente la scansione dell’ambiente IT e registra il tipo di dispositivo, l’indirizzo IP, lo stato, i tempi di attività e i tempi di inattività.
- Rilevamento a basso livello crea automaticamente elementi, trigger e grafici in base al dispositivo rilevato. Il rilevamento a basso livello può creare metriche da identificatori di oggetti SNMP (Simple Network
- (Structured Query Language) Open Interface Connectivity (ODBC), interfacce di rete e altro.
- Rilevamento automatico avvia automaticamente il monitoraggio di qualsiasi dispositivo rilevato utilizzando un agente Zabbix.
La GUI di Zabbix offre dei dati puntuali che comprendono sia lo stato di salute del sistema che gli errori più gravi, con relativa localizzazione, oltre a ulteriori dettagli di monitoraggio.
Con il monitoraggio distribuito di Zabbix, gli script eseguiti in remoto raccolgono dati da più dispositivi in posizioni distribuite, inserendoli poi in un cruscotto o in un report.
La soluzione può inviare notifiche e-mail in base a eventi predefiniti nell’ambiente IT di un utente. Un altro modo per gli utenti di Zabbix di rimanere aggiornati rispetto al proprio ambiente IT è attraverso le applicazioni mobili di fornitori come M7 Monitorig o altri proprietari.
Opzioni di monitoraggio senza agente
Oltre agli agenti, questa soluzione offre diverse opzioni di monitoraggio.
Un semplice controllo può confermare la disponibilità e la reattività di un servizio standard come possono essere le notifiche o l’HTTP.
Anche le estensioni di gestione Java (JMX – Java Management Extensions), il monitoraggio Web e altri metodi sono soluizoni alternative all’uso degli agenti. In Zabbix, JMX può essere utilizzato per monitorare le applicazioni basate su Java. Il monitoraggio Web si applica per verificare la disponibilità di siti Web e supporta HTTP e HTTPS. Zabbix raccoglie dati relativi alla velocità media di download di uno scenario, errori e messaggi di errore, tempo di risposta e altro.
L’API Zabbix
L’interfaccia di programmazione dell’applicazione Zabbix è un’API web-based per creare nuove applicazioni, automatizzare le attività e integrarsi con software di terze parti, come go-zabbix, Zabbix:: Tiny o Zabbix mittente. Il formato JavaScript Object Notation (JSON) viene utilizzato per posizionare l’API come interfaccia di front-end lato Web.
L’API Zabbix è composta da molti metodi che sono raggruppati in API separate, ognuna delle quali esegue un servizio specifico. Ad esempio, per creare un nuovo host si può usare host.create mentre il metodo per accedere come amministratore è user.login. Utilizzando questa API, gli utenti possono creare applicazioni con cui lavorare e visualizzare le informazioni di Zabbix.
Modelli per funzionalità di monitoraggio aggiuntive
Esistono componenti aggiuntivi personalizzati che estendono le funzionalità di Zabbix. Alcuni modelli sono realizzati da Zabbix stesso e sono forniti con software di tipo chiavi in mano mentre altri sono creati dagli utenti di Zabbix. I modelli consentono agli utenti di Zabbix di monitorare i dispositivi di rete di fornitori come Cisco, Dell, HP e Juniper. Altri modelli possono essere utilizzati per monitorare i server IBM, HP e Super Micro. I modelli per i servizi basati su applicazioni includono Microsoft Exchange ed Exchange Server, Zenoss, PowerDNS, Statistiche autorevoli del server e altro. È possibile creare modelli per monitorare anche sistemi operativi e hypervisor.
Quali sono le infrastrutture dei competitor
Nel monitoraggio dell’infrastruttura IT i principali competitor di Zabbix sono Microsoft System Center Operations Manager (SCOM), Nagios e Zenoss.
- SCOM consente la configurazione, la gestione e il monitoraggio di un ecosistema IT attraverso una console di gestione. La soluzione proposta da Microsoft permette di monitorare l’hardware del server, i servizi di sistema, i sistemi operativi, gli hypervisor e le applicazioni, in modo simile a Zabbix. SCOM utilizza anche un monitoraggio basato su agenti e senza agenti analogo a Zabbix.
- Nagios, invece, è un altro programma di monitoraggio open source per ambienti IT che può monitorare sistemi operativi Linux, Unix e Windows. Nagios offre numerosi prodotti, come Core, XI, Log Server, Network Analyzer e Fusion, eseguendo controlli attivi auto-avviati e controlli passivi che vengono completati utilizzando applicazioni esterne. Anche Nagios utilizza anche un criterio di monitoraggio basato su agenti e senza agenti.
- Zenoss è un software di monitoraggio disponibile in tre versioni Zenoss Core, Zenoss Service Dynamics e Zenoss as a Service (ZaaS). Zenoss Core è una versione open source del software che contiene componenti di base del software di monitoraggio. Core può anche essere usato per creare ZenPack, l’equivalente dei modelli Zenoss. Zenoss Service Dynamics, invece, è una versione locale del software in grado di monitorare le infrastrutture IT, come server, reti e database. ZaaS viene fornito come Software as a Service (SaaS), con le stesse funzionalità di monitoraggio di Service Dynamics.