Intervista con Zabbix: 12 risposte sincere

Nell'IT c'è un superstizione: "Funziona, non toccarlo". Questo si può dire anche del nostro sistema di monitoraggio. In Southbridge utilizziamo Zabbix: quando lo abbiamo scelto, era davvero ottimo. E, di fatto, non aveva alternative.

Col tempo, il nostro ecosistema si è arricchito di istruzioni, componenti aggiuntivi e integrazioni con redmine. Zabbix ha ricevuto un potente concorrente che lo superava in molti aspetti: velocità di funzionamento, HA praticamente out-of-the-box, visualizzazione accattivante e ottimizzazione del lavoro in un ambiente kubernetes.

Ma non ci sbrigiamo a fare il passaggio. Abbiamo deciso di dare un'occhiata a Zabbix e di interessarci a quali nuove funzionalità intendono implementare nelle prossime versioni. Non ci siamo fatti scrupoli e abbiamo posto domande difficili a Sergey Sorokin, direttore dello sviluppo di Zabbix, e a Vitaliy Zhuravlev, Solution architect. Cosa ne è venuto fuori leggetelo di seguito.

Intervista con Zabbix: 12 risposte sincere

1. Raccontateci la storia dell'azienda. Come è nata l'idea del prodotto?

La storia dell'azienda è iniziata nel 1997, quando il fondatore e proprietario dell'azienda, Alexey Vladychev, lavorava come amministratore di database in una banca. Alexey trovava inefficace gestire i database senza avere dati sui valori storici di vari parametri, senza comprendere lo stato attuale e storico dell'ambiente circostante.

Inoltre, le soluzioni di monitoraggio disponibili sul mercato a quel tempo erano molto costose, ingombranti e richiedevano molte risorse. Così Alexey iniziò a scrivere vari script che gli permettessero di monitorare efficacemente la parte di infrastruttura a lui assegnata. Questo si trasformò in un hobby. Alexey cambiò lavoro, ma il suo interesse per il progetto rimase. Negli anni 2000-2001, il progetto venne riscritto da zero e Alexey iniziò a pensare di dare ad altri amministratori la possibilità di utilizzare il suo lavoro. A questo punto si pose la questione di quale licenza adottare per il codice esistente. Alexey decise di rilasciarlo sotto licenza GPLv2. Lo strumento venne subito notato nell'ambiente professionale. Col tempo, Alexey ricevette richieste di supporto, formazione e ampliamento delle funzionalità del software. Il numero di tali richieste crebbe costantemente. Così, in modo naturale, si giunse alla decisione di fondare un'azienda. L'azienda fu fondata il 12 aprile 2005.

Intervista con Zabbix: 12 risposte sincere

2. Quali punti chiave puoi evidenziare nella storia dello sviluppo di Zabbix?

Al momento ci sono diversi punti:
a. Inizio del lavoro di Alexey sugli script — 1997.
b. Pubblicazione del codice sotto licenza GPLv2 — 2001.
c. Fondazione della società Zabbix — 2005.
d. Conclusione dei primi contratti di partnership, creazione del programma di partnership — 2007.
e. Fondazione di Zabbix Japan LLC — 2012.
f. Fondazione di Zabbix LLC (USA) — 2015.
g. Fondazione di Zabbix LLC — 2018.

3. Quante persone lavorano per voi?

Attualmente nel gruppo di aziende Zabbix lavorano poco più di 70 dipendenti: sviluppatori, tester, project manager, ingegneri di supporto, consulenti, venditori, personale di marketing.

4. Come scrivi la roadmap, ricevi feedback dagli utenti? Come definisci la direzione futura?

Nella creazione della roadmap per la prossima versione di Zabbix ci focalizziamo su diversi fattori importanti, in realtà, raccogliamo la roadmap secondo le seguenti categorie:

a. Miglioramenti strategici di Zabbix. Qualcosa che Zabbix considera molto importante. Ad esempio, l'agente Zabbix scritto in Go.
b. Cose che i clienti e i partner di Zabbix vogliono vedere in Zabbix. E per le quali sono disposti a pagare.
c. Desideri/proposte dalla community di Zabbix.
d. Debiti tecnici. 🙂 Cose che abbiamo rilasciato nelle versioni precedenti, ma non abbiamo garantito una funzionalità completa, non sono state sufficientemente flessibili, non abbiamo offerto tutte le opzioni.

Intervista con Zabbix: 12 risposte sincere

5. Puoi confrontare Zabbix e Prometheus? Cosa è meglio in Zabbix e cosa peggio?

La principale differenza, secondo noi, è che Prometheus è un sistema principalmente per la raccolta di metriche — e per avere un monitoraggio completo in un'azienda, è necessario aggiungere a Prometheus molti altri componenti, come Grafana per la visualizzazione, uno storage a lungo termine separato, gestire i problemi in modo separato, lavorare con i log in modo separato...

In Prometheus non ci saranno nemmeno modelli di monitoraggio standard; ottenendo tutte le migliaia di metriche dagli esportatori, sarà necessario trovare autonomamente i segnali problematici. La configurazione di Prometheus avviene tramite file di configurazione. In alcuni casi è più comodo, in altri no.

Zabbix è una piattaforma universale per la creazione di monitoraggio «dall'inizio alla fine», con la nostra visualizzazione, correlazione dei problemi e la loro assegnazione, distribuzione dei diritti di accesso al sistema, audit delle azioni, molteplici opzioni di raccolta dati tramite agenti, proxy, con protocolli completamente diversi, e la possibilità di espandere rapidamente il sistema con plugin, script, moduli…

Si possono semplicemente raccogliere i dati così come sono, ad esempio tramite il protocollo HTTP, e poi trasformare le risposte in metriche utili utilizzando funzioni di preprocessing come JavaScript, JSONPath, XMLPath, CSV e simili. Molti utenti apprezzano Zabbix per la possibilità di configurare e gestire il sistema tramite un'interfaccia web, per la possibilità di descrivere configurazioni standard di monitoraggio sotto forma di template, che possono essere condivisi tra loro e che contengono non solo metriche, ma anche regole di rilevamento, soglie, grafici, descrizioni — un insieme completo di oggetti per monitorare oggetti standard.

Molti apprezzano anche la possibilità di automatizzare la gestione e la configurazione tramite l'API di Zabbix. In generale, non vogliamo creare una guerra tra i sistemi. Ci sembra che entrambi i sistemi siano adatti ai propri compiti e possano integrarsi armoniosamente, ad esempio, Zabbix dalla versione 4.2 può raccogliere dati dagli esportatori di Prometheus o da se stesso.

6. Non avete considerato di fare Zabbix SaaS?

Ci abbiamo pensato e lo faremo in futuro, ma vogliamo rendere questa soluzione il più comoda possibile per i clienti. In questo caso, Zabbix standard dovrebbe essere offerto insieme a strumenti di comunicazione, strumenti avanzati per la raccolta dei dati e così via.

7. Quando aspettarsi Zabbix HA? E bisogna aspettarsi?

Zabbix HA è sicuramente atteso. Speriamo di vedere qualcosa in Zabbix 5.0 LTS, ma la situazione sarà più chiara a novembre 2019, quando verrà confermato completamente il Roadmap di Zabbix 5.0.

8. Perché il tipo di media ha così poche opzioni di base? Non prevedete di aggiungere Slack, Telegram e così via? E qualcuno usa ancora Jabber?

Jabber è stato rimosso nella versione Zabbix 4.4, ma sono stati aggiunti i Webhooks. Riguardo ai tipi di media, non vorremmo rendere specifiche le applicazioni del sistema, ma mantenere gli strumenti standard di messaggistica. Non è un segreto che molti di questi chat o service desk abbiano API tramite HTTP — quindi quest'anno, con il rilascio della versione 4.4, la situazione cambierà.

Con l'introduzione dei webhook in Zabbix, possiamo aspettarci tutte le integrazioni più richieste pronte all'uso nel prossimo futuro. Inoltre, le integrazioni saranno bidirezionali, non solo semplici notifiche unidirezionali. E i media type che non riusciremo a raggiungere saranno creati dalla nostra community, poiché ora il media type può essere interamente esportato in un file di configurazione, caricato su share.zabbix.com o github. E agli altri utenti basterà importare il file per iniziare a utilizzare tale integrazione. Non sarà necessario installare script aggiuntivi!

9. Perché non si sviluppa la direzione della Virtual machine discovery? C'è solo vmware. Molti aspettano integrazioni con ec2, openstack.

No, la direzione si sta sviluppando. Ad esempio, nella versione 4.4 è stato introdotto il discovery del datastore tramite la chiave vm.datastore.discovery. Nella 4.4 sono stati aggiunti anche ottimi strumenti come wmi.getall – ci aspettiamo che tramite questo, insieme alla chiave perf_counter_en, si possa fare un buon monitoraggio di Hyper-V. Ci saranno inoltre altri importanti cambiamenti in questa direzione nella versione 5.0 di Zabbix.

Intervista con Zabbix: 12 risposte sincere

10. Non avete pensato di abbandonare i modelli e fare come in Prometheus, dove viene prelevato tutto ciò che viene fornito?

Prometheus preleva automaticamente tutte le metriche, il che è comodo. Ma un modello è più di un semplice insieme di metriche, è un "contenitore" che contiene tutta la configurazione standard necessaria per il monitoraggio di un dato tipo di risorsa o servizio. Contiene già un insieme di trigger importanti, grafici, regole di detection, descrizioni delle metriche e valori soglia, che aiutano l'utente a capire cosa viene raccolto e quali soglie vengono verificate e perché. Inoltre, i modelli possono essere facilmente condivisi con altri utenti, che otterranno un buon monitoraggio delle loro sistemi, anche senza essere necessariamente esperti.

11. Perché ci sono così poche metriche pronte all'uso? Questo complica notevolmente la configurazione dal punto di vista dell'operazione.

Se per pronte all'uso intendete i modelli già pronti, in questo momento stiamo lavorando all'espansione e al miglioramento dei nostri modelli. Zabbix 4.4 è uscito con un nuovo set migliorato e con migliori possibilità.

Per Zabbix si può sempre trovare un modello pronto su share.zabbix.com praticamente per qualsiasi sistema. Ma abbiamo deciso che dobbiamo creare anche modelli di base, mostrando un esempio agli altri e liberando gli utenti dalla necessità di scrivere un modello per qualche MySQL ancora una volta. Quindi ora, con ogni nuova versione di Zabbix, ci saranno sempre più modelli ufficiali.

Intervista con Zabbix: 12 risposte sincere

12. Quando sarà possibile creare trigger non legati agli host, ma ad esempio basati su etichette? Ad esempio, monitoriamo un sito da n punti diversi e vogliamo un semplice trigger che si attivi quando il sito non è disponibile da 2 o più punti.

In realtà, questa funzionalità esiste in Zabbix già da qualche anno, scritta per uno dei clienti. Il cliente è ICANN. Controlli simili possono essere effettuati, ad esempio, tramite elementi aggregati o utilizzando Zabbix API. Attualmente stiamo lavorando attivamente per semplificare la creazione di tali controlli.

P.S.: Durante uno dei Slerms, gli sviluppatori di Zabbix ci hanno chiesto cosa volevamo vedere nel prodotto per monitorare i cluster Kubernetes specificamente con Zabbix, e non con Prometheus.

È fantastico quando gli sviluppatori si prendono cura dei clienti e non si chiudono in se stessi. E ora accogliamo ogni rilascio con un genuino interesse: ci fa piacere vedere che sempre più funzionalità di cui abbiamo parlato stanno prendendo vita.

Finché gli sviluppatori non si chiudono in se stessi e si interessano alle esigenze dei clienti, il prodotto vive e si sviluppa. Continueremo a monitorare i nuovi rilasci di Zabbix.

P.P.S.: Tra qualche mese lanceremo un corso online sul monitoraggio. Chi è interessato, si iscriva per non perdere l'annuncio. Nel frattempo, si può seguire il nostro Slerm su Kubernetes.

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster