This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved. |
1. Il nucleo di monitoraggio
Il nucleo di monitoraggio è il cuore del sistema Checkmk. I suoi compiti sono:
avviare regolarmente i check e raccogliere i risultati,
fornire gli stati attuali alla GUI,
rilevare i cambiamenti di stato e generare notifiche in base a questi.
Il diagramma dell'architettura qui sotto mostra il core e le sue connessioni con i componenti principali delle edizioni commerciali:

1.1. Nagios
La comunità Checkmk
è una struttura basata sul core del consolidato progetto open source Nagios.
Questo offre numerose funzioni utili ed è stato collaudato nel corso di molti anni da milioni di utenti in tutto il mondo.
Questa flessibilità intrinseca è uno dei motivi del successo di Nagios.
Anche se Nagios offre performance eccezionali — essendo flessibile, veloce, stabile e collaudato — ci sono comunque situazioni in cui si raggiungono i suoi limiti. Quando si effettua il monitoraggio di un gran numero di host e servizi, diventano evidenti tre problemi in particolare:
L'elevato carico della CPU durante l'esecuzione dei checks
Il lungo tempo di riavvio quando si modifica una configurazione
Il fatto che il sistema non sia disponibile durante tale riavvio
1.2. Il Checkmk Micro Core (CMC)
Dato che Checkmk viene utilizzato da tempo in ambienti sempre più grandi, nel 2013 abbiamo avviato un nuovo sviluppo del nostro core specifico per le edizioni commerciali.
Il Checkmk Micro Core — o CMC — supera i limiti di Nagios menzionati sopra.
Il CMC non è stato semplicemente creato come un fork di Nagios, ma ha una base di codice completamente propria.
Utilizza un'architettura software unica ed è stato perfettamente adattato a Checkmk.
I suoi principali vantaggi sono:
Elevata efficienza nell'esecuzione dei controlli - Questo vale sia per gli active checks che per quelli basati su Checkmk. Nei benchmark, un PC desktop (Core i7) ha raggiunto più di 600.000 controlli al minuto.
Rapida attivazione delle modifiche - Una configurazione con 20.000 host e 600.000 servizi può essere caricata in 0,5 secondi.
Modifiche alla configurazione durante le operazioni in tempo reale - I controlli in esecuzione e le connessioni Livestatus non vengono interrotti. La procedura è impercettibile per gli utenti del monitoraggio.
Richieste di disponibilità rapide - Grazie all'uso di cache speciali, le analisi di disponibilità — anche su lunghi periodi di tempo — possono essere calcolate senza tempi di attesa percepibili.
Funzionalità aggiuntive - Il CMC sfrutta numerose funzionalità aggiuntive, come ad esempio i tempi di manutenzione programmata ricorrenti e i riconoscimenti con scadenze automatiche.
Anche altri elementi sono stati ottimizzati. Ad esempio, i dati sulle prestazioni vengono trasmessi senza deviazioni direttamente dal core al daemon della cache RRD, le notifiche vengono create in modalità "KeepAlive" e i controlli degli host vengono eseguiti da un helper ICMP integrato. Tutto ciò riduce la creazione di processi costosi e fa risparmiare risorse della CPU.
Queste caratteristiche offrono numerosi vantaggi, anche nelle installazioni più piccole:
La minore richiesta di potenza di elaborazione consente in molti casi di sostituire l'hardware con la virtualizzazione.
L'attivazione senza interruzioni delle modifiche attiva frequenti cambiamenti di configurazione.
È così possibile soddisfare esigenze come il monitoraggio del cloud, in cui i server possono essere aggiunti e rimossi in rapida successione.
I due diagrammi qui sotto mostrano il carico e l'utilizzo della CPU per un server Checkmk prima e dopo il passaggio da Nagios al CMC. Questi grafici sono stati gentilmente forniti dalla società DFi Service SA. In quel momento stavano effettuando il monitoraggio di 1.205 host e 13.555 servizi su un server con 10 core.


Un altro progetto mostra risultati simili. I grafici seguenti mostrano una ristrutturazione da un core Nagios al CMC in un ambiente con 56.602 servizi su 2.230 host monitorati su una macchina virtuale con due core:



L'entità della differenza in un singolo caso dipende naturalmente da molti fattori. Nel caso sopra riportato, sullo stesso server è in esecuzione un'istanza più piccola che non è stata ristrutturata. Senza questo, la differenza nel carico della CPU e del disco sarebbe ancora più evidente.
Ulteriori aspetti del CMC sono spiegati nei seguenti articoli:
2. Domande frequenti (FAQ)
2.1. Il CMC può eseguire anche i normali plug-in di Nagios?
Il CMC può ovviamente eseguire anche i classici controlli Nagios, sia in modo attivo che passivo.
2.2. Checkmk continuerà a supportare Nagios?
Checkmk è compatibile con Nagios e continuerà a supportare il core di Nagios. Allo stesso modo, le edizioni commerciali continueranno ad avere Nagios come core opzionale, ma solo per supportare la migrazione dalla Comunità Checkmk alle edizioni commerciali.
2.3. Posso switchare da Nagios al CMC?
Passare da un core all’altro è facile, purché la tua configurazione sia stata creata esclusivamente tramite il menu di configurazione nell’interfaccia web di Checkmk. Trovi maggiori dettagli nell’articolo Migrazione al CMC. Per impostazione predefinita, le edizioni commerciali creano nuove istanze con il CMC come core.
2.4. Il CMC è disponibile gratuitamente?
Il CMC è incluso come componente nelle edizioni commerciali, disponibili tramite abbonamento. Checkmk Ultimate può essere provato senza impegno per un periodo di tempo limitato e utilizzato in modo permanente su piccola scala senza licenza.
