Con Checkmk 2.0, stiamo migliorando l'automazione di Checkmk e allo stesso tempo rendendo più semplice lo sviluppo di plug-in personalizzati per il monitoraggio con Checkmk. La nuova Check Api renderà più semplice per gli utenti sviluppare e mantenere i propri plug-in. L'API REST, anch'essa nuova, è destinata a migliorare le opzioni di automazione. Include già gran parte delle varie API attuali, ma ora consente anche l'automazione delle operazioni di monitoraggio. Anche l'Agent Bakery riceverà nuove funzioni con la nuova versione del prodotto.
La nuova API Check semplifica lo sviluppo di plug-in personalizzati
In futuro, lo sviluppo dei check plug-in diventerà molto più semplice. Questo si è reso necessario poiché l'API dei plug-in esistente era cresciuta e non era il risultato di un design top-down. Ciò ha causato ripetuti problemi durante lo sviluppo, poiché sono emerse incongruenze nei dettagli e sono state richieste conoscenze implicite.
Per questo motivo abbiamo deciso di sviluppare una nuova Check API, partendo da zero. Un riferimento alla versione attualmente in uso può essere visualizzato nell'interfaccia di Checkmk. Questo articolo della user guide dovrebbe inoltre rendere più facile iniziare a programmare con la nuova Check API.
A partire da Checkmk 2.0, i plug-in di controllo sono ora moduli Python 3 e l'importazione di questi plug-in è anche versionata e definita con precisione dall'API. Questo dovrebbe facilitare agli utenti la scrittura di plug-in, l'esecuzione di controlli separati, l'utilizzo di IDE Python e la verifica del proprio codice. Inoltre, la nuova API presenta molti altri piccoli miglioramenti, tra cui la compatibilità con i cluster, ad esempio.
A causa del passaggio da Python 2 a Python 3, si consiglia di verificare il codice dei plug-in che si è programmato da soli. L'auto-migrazione interna di Checkmk alla nuova API dovrebbe funzionare senza problemi, ma in rari casi potrebbe essere necessario modificare il plug-in. Nel Werk #10601 potete consultare i possibili motivi del fallimento dell'auto-migrazione. Nel nostro blog sono disponibili istruzioni dettagliate per la migrazione dei plug-in alla nuova Check Api.
Automatizzare la configurazione e il funzionamento di Checkmk
Per automatizzare ulteriormente il monitoraggio con Checkmk, abbiamo sviluppato una nuova API REST che semplificherà notevolmente la configurazione e il funzionamento automatizzati di Checkmk.
Nello sviluppo della nuova API REST, abbiamo utilizzato metodi collaudati. Ad esempio, l'interfaccia si basa su HTTP/1.1 e JSON come formato di trasporto, è formalizzata con la specifica OpenAPI 3.x, si basa sul livello 3 del Richardson Maturity Model e include una documentazione automatizzata.
Inoltre, la nuova API REST offre maggiori funzionalità rispetto alle API precedenti, consentendo, ad esempio, di interrogare lo stato degli host e dei servizi o di eseguire attività operative, come il riconoscimento dei problemi per singoli servizi o per tutti gli host di un gruppo di host. Anche la creazione di tempi di inattività pianificati può essere facilmente implementata con la nuova API. È inoltre possibile configurare e interrogare completamente la Business Intelligence di Checkmk.
Per molti aspetti, l'API REST include già molte più funzionalità rispetto alle API esistenti. Detto questo, per il momento non rappresenta ancora la funzionalità completa delle API esistenti. Il nostro obiettivo, tuttavia, è quello di sostituire completamente le API attuali con l'API REST non appena questa sarà in grado di fornire tutte le funzionalità dell'API attuale.
Per ulteriori informazioni sulla nuova API REST, consultare la nostra documentazione.
Aggiornamenti per la Agent Bakery
Con l'introduzione di Checkmk 2.0, anche l'Agent Bakery di Checkmk Enterprise Edition riceverà nuove funzioni e miglioramenti dell'usabilità. Nella nuova versione, le frequenti operazioni di preparazione e firma degli agenti possono essere eseguite con un'unica azione. La Bakery sa anche con maggiore precisione per quali pacchetti dovrà nuovamente effettuare il "baking" e può quindi accelerare il processo di creazione. Inoltre, ora supporta plug-in personalizzati a livello locale e può rilevare in modo affidabile le modifiche ai dati. Un'altra novità è che la Bakery crea automaticamente i pacchetti per i nuovi host, anche se non ancora con una firma.
Abbiamo anche ottimizzato il flusso di lavoro della Bakery in ambienti distribuiti a livello globale o strettamente segmentati. Ora la Bakery è in grado di distribuire gli agenti da siti remoti. Ciò significa che gli agent updaters non comunicano più tutti con l'istanza centrale, ma solo con il sito remoto responsabile, risparmiando così larghezza di banda. Tuttavia, la configurazione dei "baked agents" rimane sull'istanza centrale.
Allo stesso modo, oltre alla Check Api, abbiamo sviluppato anche l'API Bakery per semplificare la creazione di plug-in Bakery . Bakery offre ora libertà di scelta, configurando l'uso di systemd o xinetd per l'agente Linux. In questo modo può essere più sensibile al sistema monitorato, a seconda del demone utilizzato, e può anche rilevare se Python 2 o Python 3 è disponibile.
Ulteriori informazioni su Checkmk 2.0
Per approfondire i numerosi cambiamenti e le caratteristiche che Checkmk 2.0 ha in serbo, leggete uno dei nostri blog post su un argomento specifico:
- Più moderna, intuitiva e personalizzata - la nuova UX
- Cloud e container - monitoraggio dei moderni asset IT
- Monitoraggio della rete - approfondimenti e configurazione migliorata
- Più potenza nel motore - miglioramenti al nucleo di Checkmk
- Un'ampia base per il monitoraggio IT
Ulteriori informazioni su Checkmk 2.0 sono disponibili nel forum Checkmk della nostra documentazione o sul nostro canale YouTube.