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. Introduzione
Con Checkmk puoi monitorare gli host ESXi e anche le loro VM. Così, ad esempio, su un host è possibile interrogare il Disk-IO, la performance dell'archivio dati, lo stato delle interfacce di rete fisiche, diversi sensori hardware e molto altro ancora. Checkmk offre anche una serie di plug-in di controllo per le VM. Un elenco completo di questi è disponibile nel catalogo dei plugin per i controlli.
Utilizzando il meccanismo piggyback, i dati della VM verranno visualizzati direttamente nell'host associato. In questo modo, i dati relativi alla VM si trovano esattamente dove sono effettivamente necessari e dove possono essere confrontati con quelli riportati dal sistema operativo della VM:

L'accesso a questi dati avviene tramite l'API vSphere basata su HTTP, non tramite i normali agenti o SNMP. Ciò significa che non è necessario effettuare l'installazione di alcun agente o altro software sugli host ESXi e che l'accesso è molto semplice da configurare.
2. Configurazione
2.1. Configurazione tramite il sistema host ESXi
La configurazione iniziale per il monitoraggio di un server ESXi è molto semplice e può essere completata in meno di cinque minuti. Prima di poter configurare l'accesso, tuttavia, devono essere soddisfatti i seguenti prerequisiti:
Devi aver definito un utente sul server ESXi. È sufficiente che questo utente abbia solo accesso in lettura.
Devi aver definito il server ESXi come host in Checkmk e aver configurato il suo agente di monitoraggio come API integrations if configured, else Checkmk agent. Suggerimento: seleziona il nome host in modo che sia lo stesso di quello conosciuto dal server stesso.
Una volta soddisfatti i prerequisiti, puoi creare una regola nel set di regole "Setup > VM, cloud, container > VMware ESX via vSphere". Questa verrà assegnata all'host definito, in modo che al posto dell'agente standard venga utilizzato l'special agent per il recupero dei dati dal monitoraggio VMware.
Inserisci il nome utente e la password così come sono stati definiti sul server ESXi. La condizione per la regola deve essere impostata sull'host definito in Checkmk. A questo punto la prima installazione sarà completata e Checkmk potrà recuperare i dati dal server.

Infine, torna alla configurazione dell'host ed esegui la scoperta del servizio. Questo dovrebbe individuare una serie di servizi:

Attiva le modifiche come al solito. Se non sono stati identificati servizi, puoi cercare eventuali errori nella configurazione con le opzioni di diagnostica, come descritto più avanti in questo articolo.
2.2. Configurazione tramite vCenter
Se è disponibile un vCenter, invece di recuperare i dati di monitoraggio tramite i singoli sistemi host, puoi anche richiamare il vCenter. Questo metodo presenta diversi vantaggi e svantaggi:
| Vantaggi | Svantaggi |
|---|---|
Facile da usare in situazioni in cui le VM vengono assegnate dinamicamente tramite vMotion. |
Nessun monitoraggio se vCenter non è disponibile. |
Il monitoraggio dell'utilizzo totale della RAM di un cluster è possibile. |
Nessun monitoraggio dei dati specifici dell'hardware nei nodi del cluster (ad es. dischi RAM e schede di rete). |
È possibile anche utilizzare una combinazione di entrambi i metodi: in questo modo potrai avere il meglio di entrambi i mondi.
Configurazione di vCenter
Per questa configurazione valgono i stessi prerequisiti della configurazione su un singolo server ESXi:
-
Sul vCenter deve essere presente un utente con accesso in lettura.
Per poter controllare lo stato della licenza, potrebbe essere necessario concedere esplicitamente il permesso Global.Licenses.
Il vCenter è stato definito come host in Checkmk e il suo agente di monitoraggio è configurato come API integrations if configured, else Checkmk agent
Se i server ESXi sono già stati configurati in Checkmk e desideri combinare il monitoraggio, in vCenter i loro nomi saranno gli stessi di quelli configurati come host in Checkmk
Come descritto in precedenza, crea una regola per l’special agent del monitoraggio VMware, in Type of Query seleziona il vCenter e imposta la condizione sull’host appropriato come definito in Checkmk:

Con questo la configurazione sarà completata. Esegui la scoperta del servizio per l'host vCenter.
Recupero da host ESXi e vCenter
Per evitare il recupero duplicato dei dati quando si utilizzano entrambi i metodi di configurazione, la regola per il vCenter può essere configurata in modo da recuperare solo dati specifici. Una possibilità è quella di accedere a Datastores e Virtual Machines tramite il vCenter, e agli altri dati direttamente dagli host ESXi. L'utilizzo della licenza può essere recuperato in entrambe le configurazioni poiché il vCenter riporta uno stato complessivo.

Se hai già configurato gli host ESXi, le relative regole verranno adattate di conseguenza. In questo caso è disponibile solo l'accesso a Host Systems e Performance Counters, poiché questi appartengono in modo inalterabile a un particolare server ESXi. Lo stato della licenza è applicabile solo al server ESXi recuperato.

2.3. Monitoraggio delle VM
Per impostazione predefinita, viene creato e assegnato all'ESXi, o rispettivamente al vCenter, solo lo stato delle VM come servizi. Da queste VM sono tuttavia disponibili ulteriori informazioni, ad esempio relative alla RAM o alle istantanee. Questi dati vengono memorizzati come dati piggyback e assegnati direttamente agli host che corrispondono alle VM in Checkmk.
Per rendere visibili questi dati, la VM deve essere definita come host in Checkmk. Ovviamente puoi installare l'agente Checkmk sulla VM e sfruttare appieno le sue funzioni. I dati piggyback verranno semplicemente aggiunti a quelli già disponibili.
Denominazione dei dati piggyback
Se il nome host della VM in Checkmk corrisponde al nome della VM, l'assegnazione avviene automaticamente. In caso contrario, in Checkmk sono disponibili diverse opzioni per personalizzare il nome piggyback. Nella regola di configurazione stessa sono disponibili le seguenti opzioni:
Puoi utilizzare il nome host del sistema operativo della VM, se è accessibile tramite l'API vSphere.
Se il nome della VM include caratteri di spaziatura, il nome verrà troncato dopo il primo spazio. In alternativa, gli spazi possono essere sostituiti con trattini bassi.

Se il nome host è molto diverso in Checkmk, è possibile eseguire un'assegnazione esplicita con l'aiuto della regola "Setup > Agents > Access to agents > Host name translation for piggybacked hosts".

Se l'host è configurato in Checkmk e i nomi sono conformi, puoi attivare la casella di controllo "Display VM power state on" nella regola di configurazione — seleziona se e dove i dati devono essere resi disponibili. Seleziona qui "The Virtual Machine".

Con una scoperta del servizio sugli host, i nuovi servizi verranno ora identificati e potranno essere attivati. Tieni presente che le informazioni provenienti dai servizi potrebbero differire l'una dall'altra. Il server ESXi vedrà l'utilizzo della RAM di una macchina virtuale in modo diverso rispetto a come lo riporta il sistema operativo della macchina stessa.

3. Opzioni diagnostiche
3.1. Introduzione
Quando cerchi l'origine di un errore, ci sono diversi "punti di riferimento". Dato che i dati provengono dal server ESXi/vCenter, questo è il punto logico da cui iniziare la ricerca dell'errore. In seguito, è importante che i dati arrivino al server Checkmk e che lì possano essere elaborati e visualizzati correttamente.
3.2. Problemi con la configurazione del server ESXi/vCenter
Con il comando `curl` puoi verificare se il server è accessibile dal monitoraggio:
È possibile verificare sulla console, tramite il special agent, se i dati di accesso sono stati inseriti correttamente e se Checkmk può accedere all'host.
Usa l'opzione --help o -h per visualizzare l'elenco completo delle opzioni disponibili.
Nell'esempio, con l'aiuto di grep l'output è stato limitato a una sezione specifica e alle prime quattro righe successive: puoi ometterlo per ottenere un output completo, oppure filtrare per un altro:
È possibile verificare sulla console se Checkmk può accedere all'host. Anche in questo caso l'output è limitato a quattro righe:
In alternativa, puoi eseguire il test sulla pagina di diagnostica dell'host in Setup:

Se fino a questo punto tutto ha funzionato, l'output dovrebbe essere stato salvato in una directory temporanea. È possibile verificare se tale file è stato creato e se il contenuto è corretto con quanto segue:
3.3. Problemi con i dati piggyback
Checkmk crea per ogni host piggyback una directory contenente un file di testo. In questo file di testo si trovano i dati da assegnare agli host.
Se queste directory o questi file non sono presenti, significa che non sono stati creati dagli special agents. Puoi verificare se i dati della VM sono inclusi nell'output dell'agente. In questo caso, controlla la regola di configurazione dell'host ESXi/vCenter per vedere se il recupero dei dati è stato attivato.
Nel caso in cui ci sia un numero molto elevato di directory di questo tipo per i dati piggyback, può essere molto difficile individuare quelle che non sono associate a un host.
Con il comando |
4. File e directory
| Percorso del file | Funzione |
|---|---|
|
Checkmk salva qui i dati piggyback. Per ogni host piggybacked viene creata una sottocartella con il nome dell'host; questa sottocartella contiene un file di testo con i dati dell'host. Il nome del file è il nome dell'host piggyback che fornisce i dati. |
|
Qui viene salvato temporaneamente l'ultimo output dell'agente di tutti gli host. Il contenuto del file di un host è identico al comando |
|
L'agente speciale per eseguire una query sui server ESXi e vCenter. Questo script può anche essere eseguito manualmente a scopo di test. |
