Sono disponibili moltissimi strumenti per monitorare la tua infrastruttura IT. Ciò include il monitoraggio di server Linux, container, database, applicazioni e altro ancora.
Servizi come BetterUptime sono convenienti e li utilizziamo per il monitoraggio dei tempi di inattività.
Tuttavia, per un controllo più granulare, preferisco implementare strumenti come Prometheus con la bellissima dashboard di Grafana.
Di recente, mi sono imbattuto in un progetto che offre una visione completa della tua infrastruttura IT in un arco di tempo molto breve.
Checkmk per il monitoraggio dell'infrastruttura IT

Con Checkmk puoi sfruttare in modo efficace potenti capacità di monitoraggio per tenere d'occhio non solo i server, ma anche reti, cloud, container e applicazioni.
Checkmk è disponibile in due edizioni principali. L'edizione Enterprise gestita costa denaro ma ha più funzionalità.
Ha anche un'edizione gratuita e open source chiamata Checkmk Raw Edition (RE).
Mostrerò come distribuire e configurare Checkmk RE per il monitoraggio dei tuoi server.
Configurazione di Checkmk RE per la gestione dei server Linux
Ti guiderò in una procedura dettagliata di Checkmk RE e ti mostrerò come installarlo, configurarlo e infine utilizzarlo. Ho seguito la documentazione ufficiale e onestamente l'ho trovata molto più complessa da configurare rispetto ai precedenti strumenti che avevo esplorato.
Pertanto, ho deciso di concentrarmi sul miglioramento di quell'esperienza attraverso questo articolo.
Prima di iniziare, vorrei ribadire che, come Cockpit, l'installazione di una versione Docker di Checkmk Raw Edition non è del tutto consigliata nella pratica generale.
Installa Checkmk RE sul server che vuoi monitorare
Devi avere Checkmk RE e l'agente Checkmk installati per poter monitorare il tuo server. Al momento della revisione, ho testato la versione 2.0.0p7.
Scarica il pacchetto necessario
Per questo tutorial, scaricherò prima Checkmk RE su un server Ubuntu 20.04:
wget https://download.checkmk.com/checkmk/2.0.0p7/check-mk-raw-2.0.0p7_0.focal_amd64.deb
Verifica il pacchetto Checkmk
Installa dpkg-sig
per la verifica del pacco. Assicurati anche di gpg
è installato.
sudo apt -y install dpkg-sig gpg
Fatto ciò, ottieni la chiave gpg:
[email protected]:~$ gpg --keyserver keyserver.ubuntu.com --recv-keys 434DAC48C4503261
gpg: directory '/home/avimanyu/.gnupg' created
gpg: keybox '/home/avimanyu/.gnupg/pubring.kbx' created
gpg: /home/avimanyu/.gnupg/trustdb.gpg: trustdb created
gpg: key 434DAC48C4503261: public key "Check_MK Software Release Signing Key (2018) <[email protected]>" imported
gpg: Total number processed: 1
gpg: imported: 1
[email protected]:~$ gpg --armor --export 434DAC48C4503261 > Check_MK-pubkey.gpg
Aggiungi la chiave pubblica appena ottenuta:
[email protected]:~$ sudo apt-key add Check_MK-pubkey.gpg
OK
Ora puoi verificare il pacchetto Checkmk che hai appena scaricato:
[email protected]:~$ dpkg-sig --verify check-mk-raw-2.0.0p7_0.focal_amd64.deb
Processing check-mk-raw-2.0.0p7_0.focal_amd64.deb...
GOODSIG _gpgbuilder B1E7106575B723F00611C612434DAC48C4503261 1625600497
GOODSIG
indica la verifica riuscita. Quindi procediamo ora con l'installazione.
Installa Checkmk Raw Edition
Puoi usare apt
per installare direttamente il pacchetto scaricato di recente:
sudo apt -y install ~/check-mk-raw-2.0.0p7_0.focal_amd64.deb
Giusto per essere sicuro, per il gusto di farlo, assicurati apache2
il servizio è attivo e quella porta 80 (usata da Apache) non è già utilizzata da qualche altro servizio.
[email protected]:~$ systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2021-07-14 17:30:18 UTC; 6s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 46288 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 46309 (apache2)
Tasks: 55 (limit: 4617)
Memory: 7.1M
CGroup: /system.slice/apache2.service
├─46309 /usr/sbin/apache2 -k start
├─46310 /usr/sbin/apache2 -k start
└─46311 /usr/sbin/apache2 -k start
Crea la tua interfaccia utente Web iniziale per il primo accesso
Prima di iniziare il monitoraggio, devi prima creare la tua interfaccia utente web con Open Monitoring Distribution (OMD).
Qui, ho impostato il nuovo nome del sito come mysite
:
[email protected]:~$ sudo omd create mysite
Adding /opt/omd/sites/mysite/tmp to /etc/fstab.
Creating temporary filesystem /omd/sites/mysite/tmp...OK
Updating core configuration...
Generating configuration for core (type nagios)...Precompiling host checks...OK
OK
Restarting Apache...OK
Created new site mysite with version 2.0.0p7.cre.
The site can be started with omd start mysite.
The default web UI is available at http://localhost/mysite/
The admin user for the web applications is cmkadmin with password: KgjKy6wpR
For command line administration of the site, log in with 'omd su mysite'.
After logging in, you can change the password for cmkadmin with 'htpasswd etc/htpasswd cmkadmin'.
Una volta fatto, riceverai importanti credenziali di accesso insieme ad alcune utili istruzioni per iniziare con la tua nuova interfaccia utente. Consiglierei di salvare l'output in un documento separato per tenerlo al sicuro.
Se hai accesso fisico al server, puoi utilizzare localhost
nel browser web in questo modo.
localhost/mysite
In entrambi i casi, puoi accedere alla configurazione con l'indirizzo IP pubblico del tuo server. Ad esempio, se il suo indirizzo IP è 1.2.3.4, l'URL di accesso sarebbe:
1.2.3.4/mysite
Nel caso abbia un nome di dominio (ad esempio checkmk.domain.com), usa:
checkmk.domain.com/mysite
Successivamente, dovresti vedere un'interfaccia di accesso come questa:

Utilizzando le credenziali ottenute dopo aver creato mysite
, accedi a Checkmk. Il nome dell'amministratore predefinito, come avrai notato, è cmkadmin
.
Installa l'agente Checkmk
Per poter aggiungere host (server) è ora necessario installare Checkmk Agent tramite l'installazione di un pacchetto. L'URL di download del pacchetto può essere ottenuto assicurando i seguenti passaggi:
Vai a Configurazione e scegli Linux sotto gli Agenti sottomenu:

Individua il pacchetto Debian (dato che sto usando Ubuntu):

Fare clic con il pulsante destro del mouse e copiare l'URL sul browser (in questo caso Firefox):

Una volta copiato l'URL, scaricalo sul server con wget
. Supponendo che l'IP sia 1.2.3.4
, il comando corrispondente sarebbe:
wget http://1.2.3.4/mysite/check_mk/agents/check-mk-agent_2.0.0p7-1_all.deb
Una volta completato il download, installa il pacchetto dell'agente:
sudo apt -y install ~/check-mk-agent_2.0.0p7-1_all.deb
Ora sei pronto per aggiungere server come host per il monitoraggio delle attività su Checkmk.
Preparazione di Checkmk per il monitoraggio dei tuoi server
Inizia ad aggiungere il server host in base a ciascuno dei passaggi condivisi di seguito.
Inizia da Installazione > Host > Host .

Seleziona "Aggiungi host al monitoraggio" (ripetere questo passaggio per aggiungere più server).

Inserisci il nome host come localhost
e seleziona "Salva e vai ai test di connessione ”(Utilizza l'IP pubblico o il nome di dominio del server come nome host per i server remoti).

Attendi il completamento dei test di connessione.

Una volta completati i test, fai clic su "scoperta del servizio ”.

Seleziona "Correggi tutto ” per diagnosticare “Servizi indecisi ”.

Ora fai clic su "3 modifiche ” posto in alto a destra con il cerchio giallo con punto esclamativo. Il numero di modifiche può variare da utente a utente.

Seleziona "Attiva su siti selezionati ”.

Attendi il completamento dell'attivazione.

Al termine dell'attivazione, noterai "Success" all'interno della barra di avanzamento che alla fine diventerà verde:

A questo punto, mi disconnetterò e riaccederò per riconfermare che il server che ho appena aggiunto è effettivamente monitorato da Checkmk:

Monitoraggio dei tuoi server con Checkmk
Dopo aver eseguito nuovamente l'accesso, noterai un esagono verde che rivela il server appena aggiunto nella dashboard principale:

Ora vai a Monitoraggio > Sistema > Dashboard Checkmk :

Tieni presente che è diverso dalla Dashboard principale visto in precedenza al primo accesso dopo aver aggiunto l'host. In questa dashboard Checkmk , puoi vedere una brevissima panoramica del monitoraggio del tuo server. Fare clic su localhost
:

Una volta cliccato su di esso, vedrai finalmente la pagina di monitoraggio generica per un server, composta dalle metriche comunemente conosciute, ovvero:
- Carico CPU
- RAM utilizzata
- Velocità effettiva del disco
- Dimensioni del filesystem e spazio utilizzato
- Grandi errori di pagina
- Latenza media del disco
- Rete

Devi navigare su questa interfaccia nel modo sopra descritto ogni volta che desideri monitorare il tuo server. Tuttavia, puoi anche creare un segnalibro basato sul seguente URL per aprirlo rapidamente per l'accesso regolare:
http://localhost/mysite/check_mk/dashboard.py?host=localhost&name=checkmk_host&site=mysite
Nell'URL sopra, sostituisci localhost
con l'IP o il dominio del tuo server. Inoltre, sostituisci mysite
con il nome del sito che hai impostato.
Suggerimento bonus:monitoraggio metrico specifico
Se vuoi monitorare le metriche specifiche del server con dettagli vividi, Checkmk ha quello che fa per te. Ad esempio, se desideri monitorare il carico o l'utilizzo della CPU in modo approfondito e individualmente, procedi nel seguente modo:
Vai a Monitoraggio > Panoramica > Tutti gli host

Fare clic su localhost
:

Ora fai clic su "Carico CPU" o "Utilizzo CPU". Nota, ci sono così tante altre metriche che puoi monitorare su base individuale.

Qui, ho selezionato "Carico CPU":

Come puoi osservare, questa metrica dettagliata su Checkmk consente di monitorare il carico della CPU in base a una varietà di parametri basati sul tempo.
Spero che tu possa trovare utile questa guida e provare questo strumento promettente da solo, che si tratti del tuo server o anche del tuo sistema desktop. Se desideri aggiungere feedback, pensieri o commenti, fallo nella sezione sottostante.