Dopo 6 mesi di sviluppo una nuova versione del sistema di monitoraggio , il cui codice è sotto licenza GPLv2. Zabbix è composto da tre componenti di base: un server per coordinare l'esecuzione dei controlli, generare richieste di controllo e accumulare statistiche; agenti per eseguire controlli sui host esterni; un frontend per gestire il sistema.
Per alleviare il carico dal server centrale e formare una rete di monitoraggio distribuita, può essere implementata una serie di server proxy che aggregano i dati sul controllo di un gruppo di host. I dati possono essere archiviati nei database MySQL, PostgreSQL, TimescaleDB, DB2 e Oracle. Senza agenti, il server Zabbix può ricevere dati tramite protocolli come SNMP, IPMI, JMX, SSH/Telnet, ODBC, eseguire test di disponibilità delle applicazioni web e dei sistemi di virtualizzazione.
:
- È stato presentato un nuovo tipo di agente — zabbix_agent2, scritto in Go e che fornisce un framework per lo sviluppo di plugin per il controllo di vari servizi e applicazioni. Il nuovo agente include un pianificatore integrato con supporto per la definizione di orari flessibili per l'esecuzione dei controlli e può monitorare lo stato tra i controlli (ad esempio, mantenendo aperta una connessione al database). Per risparmiare traffico, è supportata l'invio dei dati ricevuti in modalità batch. Il nuovo agente può essere usato per una sostituzione trasparente del vecchio, per ora solo sulla piattaforma Linux;
- È stata aggiunta la possibilità di utilizzare e propri gestori di azioni e notifiche in caso di errori nei servizi controllati. I gestori possono essere creati in JavaScript e utilizzati per contattare servizi esterni di invio notifiche o sistemi di monitoraggio degli errori. Ad esempio, è possibile scrivere un gestore per inviare messaggi sulle problematiche a una chat aziendale;
- È stata implementata la supporto ufficiale per i database come archivio di dati sui controlli. A differenza dei database precedentemente supportati
MySQL, PostgreSQL, Oracle e DB2, il database TimescaleDB è stato ottimizzato specificamente per memorizzare e elaborare dati in forma di serie temporale (fette di valori di parametri a intervalli di tempo determinati, dove la registrazione crea il tempo e un insieme di valori corrispondenti a quel tempo). TimescaleDB consente di aumentare significativamente Quando si lavora con dati simili, dimostrando un livello di prestazioni praticamente lineare. Inoltre, TimescaleDB supporta funzionalità come la pulizia automatica dei record obsoleti; - specifiche per la formattazione dei modelli per standardizzare le impostazioni. La struttura dei file XML/JSON è stata adattata per la modifica manuale del modello in un normale editor di testo. I modelli esistenti sono stati adeguati alle specifiche proposte;
- È stata implementata una base di conoscenze per documentare gli elementi e i trigger verificabili, che possono essere dotati di dettagliate descrizioni, spiegazioni sugli obiettivi della raccolta di informazioni e istruzioni su come procedere in caso di problemi;
- Sono state presentate avanzate possibilità di visualizzazione dello stato dell'infrastruttura. È stata aggiunta la possibilità di modificare i parametri dei widget con un clic. I set di grafici sono ottimizzati per la visualizzazione su schermi widescreen e grandi pannelli a parete. Tutti i widget sono adattati per la visualizzazione in modalità senza intestazione. È stato aggiunto un nuovo widget per visualizzare i prototipi dei grafici. È stata aggiunta una nuova modalità di visualizzazione aggregata nel widget con le statistiche complessive sui problemi;
- È stata aggiunta la supporto per la visualizzazione di dati elaborati mediante varie funzioni aggregate nei grafici a barre e nei grafici, rendendo più comoda l'analisi dei dati su ampie tempistiche e semplificando la pianificazione. Sono supportate le seguenti funzioni: min,
max,
avg,
count,
sum,
first e
last; - È stata aggiunta la possibilità di registrazione automatica di nuovi dispositivi tramite chiavi PSK (Pre-shared key) con crittografia delle impostazioni per l'host aggiunto;
- È stato aggiunto il supporto per una sintassi avanzata JSONPath, che consente di organizzare un complesso preprocessing dei dati in formato JSON, comprese operazioni di aggregazione e ricerca;
- È stato aggiunto il supporto per l'allegazione di descrizioni ai macro personalizzati;
- È stata migliorata l'efficienza nella raccolta e nell'identificazione dei dati relativi a WMI, JMX e ODBC, attraverso l'aggiunta di nuovi controlli che restituiscono array di oggetti in formato JSON. È stato aggiunto anche il supporto per i repository per VMWare e i servizi systemd, oltre alla possibilità di convertire dati CSV in JSON;
- Il limite massimo per il numero di elementi dipendenti è stato aumentato a 10.000;
- Aggiunta la supporto per nuove piattaforme: SUSE Linux Enterprise Server 15, Debian 10, Raspbian 10, macOS e RHEL 8. Per Windows è stato preparato un pacchetto con l'agente in formato MSI. Aggiunto supporto per il deployment rapido del sistema di monitoraggio in contenitori isolati o in ambienti cloud come AWS, Azure,
Google Cloud Platform,
Digital Ocean e Docker.
Fonte: opennet.ru
