Il monitoraggio di VMware può diventare rapidamente un incubo con una soluzione di monitoraggio inadeguata. Se non è automatizzato, l'aggiunta e la gestione delle macchine virtuali nel vostro monitoraggio è macchinosa. Allo stesso tempo, senza capacità di filtraggio granulare, si può perdere rapidamente traccia di ciò che sta accadendo. Il monitoraggio deve inoltre acquisire correttamente le informazioni provenienti da fonti diverse, in modo che i team IT possano identificare facilmente potenziali problemi e risorse utilizzate in modo inefficiente negli ambienti virtualizzati.

Con la piattaforma di virtualizzazione vSphere, VMware offre una soluzione molto diffusa per la distribuzione di macchine virtuali nelle infrastrutture dei data center. Oltre alle macchine virtuali di produzione e agli hypervisor, di solito è necessario monitorare altri componenti software e hardware. Questi includono, ad esempio, il software di gestione VMware vCenter Server (o vCenter in breve), che di solito viene eseguito su una macchina virtuale, nonché lo storage e le reti.

In questo tutorial, imparerai come impostare il monitoraggio scalabile di VMware in pochi minuti. Checkmk è particolarmente adatto a questo scopo, in quanto facilita l'implementazione con diversi meccanismi di automazione. Inoltre, è in grado di combinare in modo significativo i dati di monitoraggio provenienti da più fonti. Ad esempio, nel caso di VMware, Checkmk unisce le informazioni provenienti dai principali componenti di vSphere (vCenter, ESXi e le macchine virtuali) nel monitoraggio. Checkmk aiuta anche a monitorare le soluzioni di backup, come Veeam Backup and Replication.

Se sei alla ricerca di informazioni più generali, ti consiglio questa guida sul monitoraggio dei server virtuali. Checkmk supporta non solo VMware ma anche altre soluzioni di virtualizzazione come Microsoft Hyper-V, Proxmox o Citrix XenApp. Dopo la configurazione, che richiede solo pochi minuti, sarai in grado di monitorare tutte le piattaforme di virtualizzazione con un solo strumento di monitoraggio, comprese le notifiche e le politiche di escalation.

Prerequisiti: Un criterio di denominazione adeguato e autorizzazioni di sola lettura per l'API VMware.

Checkmk può creare automaticamente gli host di monitoraggio per le macchine virtuali (VM). Per i nomi degli host, utilizza i nomi di visualizzazione di VMware vCenter. Una politica di denominazione coerente con i nomi DNS è quindi una base importante per questa esercitazione. Si consiglia di seguire questo tutorial sui concetti di denominazione. In esso vengono illustrati i criteri da considerare per la denominazione dei sistemi. Tuttavia, non modificare i nomi di visualizzazione dei sistemi in VMware senza aver prima letto l'articolo collegato fino alla fine.

Accesso uniforme in sola lettura per vCenter e host ESXi

Per recuperare i dati di monitoraggio tramite l'API VMware, Checkmk richiede un utente di sola lettura per il vCenter e per ogni host ESXi. A causa delle implicazioni di sicurezza, non si dovrebbero mai concedere ulteriori autorizzazioni agli account utente di monitoraggio.

Per il vCenter, è necessario assegnare diritti di sola lettura all'account utente di livello più alto e per l'intero inventario. Pertanto, nel client vSphere, selezionare la casella di controllo "Propagate to children" nella configurazione. Nel mio esempio, ho selezionato 'monitoring' come nome utente di vCenter. Poiché il dominio predefinito in vSphere è '.vsphere.local', in seguito imposterò l'accesso in Checkmk con 'monitoring@vsphere.local', poiché il solo nome utente non è sufficiente in Checkmk. In alternativa, si potrebbe anche utilizzare un account impostato tramite Active Directory.

Su ciascuno dei miei hypervisor ESXi, ho creato un account di sola lettura denominato 'checkmk' e uso la stessa password per tutti gli accessi a ESXi. L'uso delle stesse credenziali per tutti gli host ESXi non è obbligatorio, ma semplifica la configurazione successiva.

Sito Checkmk pronto per il monitoraggio VMware

Come esempio per questo tutorial, ho configurato un nuovo sito Checkmk con la versione 2.1 di Checkmk Enterprise Edition su un server Linux separato. Con questa edizione, è possibile monitorare un numero illimitato di sistemi per 30 giorni. Dopo la scadenza del periodo di prova, è possibile continuare a utilizzare il monitoraggio, ma il numero di servizi sarà limitato a 750. Il sito Checkmk deve poter accedere all'API REST nell'ambiente VMware sulla porta 443. L'ultima versione può essere scaricata dalla pagina di download di Checkmk. Questo video tutorial mostra come installare Checkmk.

Questo tutorial utilizza il demone di configurazione dinamica (DCD) per la creazione automatica degli host. Il DCD è una funzionalità di Checkmk Enterprise Edition ed è quindi incluso anche nella versione di prova di Checkmk. Tuttavia, il DCD non fa parte della Checkmk Raw Edition. È possibile monitorare VMware anche con la Raw Edition, ma è necessario creare manualmente gli host per le macchine virtuali da monitorare.

Grazie alla creazione automatica degli host, l'impostazione del monitoraggio richiede solo pochi minuti. Questo tutorial è quindi facilmente applicabile agli ambienti VMware più grandi. Tuttavia, è necessario considerare le dimensioni dell'ambiente VMware quando si dimensiona il server host di monitoraggio. È possibile aggiungere tutte le macchine virtuali al monitoraggio con un solo clic, pertanto il server di monitoraggio deve disporre di risorse sufficienti per far fronte a questa operazione.

Passo 1: Monitoraggio delle macchine virtuali tramite VMware vCenter

Il primo passo consiste nel creare una cartella in Checkmk per gestire le macchine virtuali in monitoraggio.

  • Sotto Configurazione -> Tutti gli host fare clic su Aggiungi cartella e inserire un nome a scelta in Titolo. Io ho chiamato la cartella 'vm'.
  • Selezionare la casella in Checkmk agent / API integrations e selezionare l'opzione 'Configured API integrations and Checkmk agent'.
  • Fare clic su Salva.

Ora è stata creata una cartella in Checkmk e si è definito che Checkmk si aspetta i dati dalle API e dall'agente per tutti gli host in questa cartella. In questo modo sarà possibile installare successivamente l'agente Checkmk sulle macchine virtuali per recuperare ulteriori dati di monitoraggio.

La vista della cartella principale di un ambiente Checkmk con una cartella chiamata vm evidenziata

Aggiunta di VMware vCenter come host nel monitoraggio

Ora aggiungi vCenter a questa cartella come primo host.

  • Aprire la cartella appena creata facendo clic su di essa.
  • Fare clic su Aggiungi host.
  • Immettere il nome visualizzato di vCenter in Hostname. Nel mio esempio, 'muc-vm-vcenter-001.lan.domain.net'.
  • Poiché i nomi di visualizzazione sono risolvibili tramite DNS, è possibile lasciare invariate tutte le altre impostazioni e fare clic su "Salva e vai alla cartella".
Aggiunta di un VMware vCenter come host in Checkmk. Il pulsante Salva e vai alla cartella è evidenziato

Se si utilizzano più server vCenter, è possibile ripetere questo passaggio, modificando il nome host per ciascun server vCenter. Tuttavia, a seconda della distribuzione e della struttura del tuo ambiente IT, potrebbe essere opportuno impostare la struttura delle cartelle in Checkmk in modo diverso e, ad esempio, creare prima una cartella per ogni postazione. In questo caso, è necessario utilizzare una cartella separata con le macchine virtuali per ogni sede e non creare tutte le macchine virtuali di tutti i siti in un'unica cartella.

Se i nomi di visualizzazione in VMware non sono risolvibili dal DNS, prima di procedere è necessario memorizzare l'indirizzo IP di vCenter tra gli indirizzi IPv4 in Checkmk. Un concetto di denominazione non rigoroso porta sempre a problemi nel lungo periodo e rende difficile, ad esempio, l'assegnazione corretta dei dati di monitoraggio in un secondo momento. Si consiglia pertanto di adattare il concetto di denominazione in base alle istruzioni riportate all'inizio di questa guida.

Recupero dei dati di monitoraggio da vCenter tramite l'API VMware

Ora è necessario concedere a Checkmk l'accesso a vCenter e decidere quali dati deve recuperare da lì.

  • Fate nuovamente clic su Setup e cercate "vmware".
  • Quindi fare clic sulla regola "VMWare ESX via vSphere".
  • Fare clic su Aggiungi regola.
  • In VMWare ESX via vSphere, modificare le voci in ordine: In Nome utente vSphere, inserire l'account utente preparato per vCenter. Nel mio esempio è 'monitoring@vsphere.local' seguito dalla password in vSphere secret.
  • Poiché si utilizza VMware vCenter, è necessario impostare la selezione Tipo di query su "L'host interrogato è il vCenter".
  • È necessario selezionare la casella in corrispondenza del numero di porta TCP solo se si è impostata una porta diversa per HTTPS, ma questo non è necessario nella maggior parte degli ambienti.
  • Per il controllo del certificato SSL si può mantenere l'impostazione predefinita "Usa nome host" se si utilizza un certificato emesso da un'autorità di certificazione per vCenter. In caso contrario, è necessario selezionare l'opzione "Disattivato" in Controllo certificato SSL. Tieni presente che per impostazione predefinita, VMware vCenter si avvia con HTTPS e un certificato autofirmato.
  • Con l'opzione Connect Timeout, è possibile indicare a Checkmk di interrompere la connessione in caso di tempi di risposta eccessivi. Normalmente questa opzione non è necessaria, quindi non selezionatela.
  • In Recupera informazioni su, decidere per quali sistemi Checkmk deve recuperare i dati da vCenter. Deseleziona l'opzione "Sistemi host" in modo che gli host ESXi non finiscano nella cartella delle macchine virtuali. Questi host verranno creati separatamente in seguito. "Uso delle licenze" consente di recuperare lo stato complessivo delle licenze di vCenter in uso. Questa opzione è necessaria solo per i datacenter molto grandi con licenze in over provisioning, quindi non la uso in questo caso.
  • Lascia disattivate le opzioni per il monitoraggio delle macchine virtuali segnaposto e per la visualizzazione dello stato di alimentazione degli host ESX. Tuttavia, è opportuno attivare l'opzione di riepilogo delle istantanee delle macchine virtuali, poiché le istantanee dimenticate possono talvolta causare problemi drammatici.
  • Per impostazione predefinita, Checkmk considera i nomi di visualizzazione configurati in vCenter come nomi di host. In Piggyback name of virtual machines, è possibile indicare a Checkmk di utilizzare i nomi memorizzati negli host ESXi. Non ho bisogno di questa opzione in questo tutorial e non ne consiglio l'uso, poiché l'interfaccia VMware è soggetta a errori nella pratica.
  • Checkmk non ammette spazi nei nomi degli host, ma i nomi di visualizzazione in VMware possono teoricamente contenere caratteri vuoti (spazi). Se si utilizzano nomi DNS in VMware (secondo le mie raccomandazioni), non è possibile includere spazi. Se tuttavia si utilizzano spazi in VMware, è possibile utilizzare Spaces in hostnames per decidere come Checkmk deve gestirli.
La regola VMware di Checkmk configurata per monitorare un vCenter
  • In Condizioni, selezionare il server vCenter in "Host espliciti". Se si utilizzano più server vCenter e si utilizzano le stesse credenziali per tutti gli account di sola lettura, è possibile interrogare tutti i server vCenter con un'unica regola. È sufficiente aggiungere qui gli host vCenter appropriati. In alternativa, sarà necessario configurare una nuova regola per ogni server vCenter e regolare le credenziali e l'host esplicito per ciascuno di essi.
  • Fare clic su Salva per salvare la regola.

Checkmk può ora recuperare i dati da vCenter tramite l'API VMware. A tal fine, è necessario avviare il rilevamento automatico dei servizi in Checkmk per l'host vCenter.

  • Andare a Configurazione -> Host e fare clic sulla cartella. A questo punto si dovrebbe vedere l'host vCenter.
  • Fare clic sull'icona gialla dell'host vCenter al centro della barra degli strumenti.
Un host vCenter nella vista di configurazione di Checkmk, è evidenziata l'icona gialla per l'avvio del rilevamento automatico dei servizi.
  • Attendere che Checkmk completi il rilevamento automatico dei servizi e fare clic su Accetta tutto.
  • A questo punto è importante: Non attivare ancora le "modifiche in sospeso", per ora leggi questo capitolo fino alla fine.

Ora hai incluso tutte le macchine virtuali come servizi di monitoraggio, e forse anche di più. Ad esempio, l'API di VMware non è in grado di distinguere tra modelli e macchine virtuali. Pertanto, se avete creato dei modelli in vCenter, nel monitoraggio Checkmk identificherà i tuoi modelli come macchine virtuali spente oltre alle macchine virtuali reali e assumerà per default un errore.

È possibile disabilitare manualmente i singoli servizi nei modelli dopo il rilevamento dei servizi. Tuttavia, se si utilizza un concetto di denominazione coerente in VMware, si raggiungerà più rapidamente l'obiettivo con la regola di disabilitazione del servizio in Checkmk. In questo modo, inoltre, si escluderanno dal monitoraggio tutti i modelli che verranno creati in futuro.

Per i miei scopi, ho anteposto a tutti i nomi di visualizzazione dei template in VMware la parola 'template'. In questo modo la rimozione dei servizi di template dal monitoraggio è un gioco da ragazzi:

  • Fare clic su Setup. Cercare 'disable' e fare clic su 'Disabled services'.
  • Fare clic su Aggiungi regola.
  • In Condizioni, selezionare l'opzione Host espliciti e inserire l'host vCenter. Se si utilizzano più server vCenter, è possibile inserire più host. Nel mio caso, ho inserito 'muc-vm-vcenter-001.lan.domain.net'.
  • Attivare quindi la casella di controllo in corrispondenza di Servizi. In base ai nomi dei servizi, è ora possibile disabilitare i servizi. Io uso la regex 'VM template'. Questo disabilita tutti i servizi con il prefisso 'template' per vCenter. Si noti che Checkmk aggiunge l'abbreviazione 'VM' al nome del servizio VM.
  • Salvare la regola con Salva.
Nella regola di disabilitazione dei servizi di Checkmk, configurata per disabilitare tutti i servizi del modello, sono evidenziati due campi.
  • Ora, avvia nuovamente il rilevamento dei servizi per l'host vCenter come in precedenza in Configurazione -> Host. Fare nuovamente clic sull'icona gialla al centro davanti all'host vCenter.
  • Rispetto a prima, i servizi del modello sono ora tutti disabilitati. Fare clic su Accetta tutto.
Il rilevamento automatico dei servizi di Checkmk con tre servizi modello che sono disattivati per impostazione predefinita

Se si dispone di un concetto di denominazione adeguato, è possibile utilizzare questa regola per ordinare altri servizi vCenter secondo lo stesso principio.

  • Ora è possibile attivare le modifiche in Checkmk. Fare clic sull'icona gialla con il punto esclamativo nell'angolo in alto a destra. Dovrebbe essere visualizzato il numero di "modifiche".
  • Fare clic su Attiva nei siti selezionati.

Il server vCenter è stato aggiunto come host al monitoraggio. Le macchine virtuali appariranno ora come servizi di monitoraggio dell'host vCenter.

Fase 2: Creare host per le macchine virtuali VMware con il DCD

Checkmk utilizza il meccanismo del piggyback, con il quale trasferisce le informazioni basate sui nomi degli host agli host appropriati per il monitoraggio. Può trattarsi, ad esempio, dei dati sulle singole macchine virtuali dall'host ESXi o dal vCenter.

Tuttavia, per fare ciò, è necessario creare le macchine virtuali come host in Checkmk, poiché attualmente sono visibili solo come servizi all'interno del server vCenter. I nomi degli host in Checkmk devono corrispondere ai nomi di visualizzazione in VMware. Solo così Checkmk potrà assegnare correttamente i dati di piggyback.

È possibile creare manualmente gli host per le macchine virtuali, ma è anche più facile farlo tramite il demone di configurazione dinamica (DCD) menzionato all'inizio di questo tutorial, con il quale Checkmk può creare automaticamente gli host per le macchine virtuali:

  • In Configurazione, cercare 'dynamic' e fare clic su 'Dynamic host management'. Fare clic su Aggiungi connessione.
  • In Proprietà generali, scegliere un ID univoco e un titolo. Nel mio esempio, ho scelto 'vmware-vcenter' e 'vm'.
Configurazione del DCD in Checkmk. L'ID univoco e il titolo sono scelti ed entrambi i campi sono evidenziati.
  • In Proprietà della connessione, è necessario fare clic una volta su "Aggiungi nuovo elemento" per consentire a Checkmk di creare automaticamente gli host.
  • Inoltre, è necessario regolare le opzioni avanzate in Proprietà della connessione. A tale scopo, fare clic su "Mostra altro".
  • In Opzioni di creazione Piggyback, selezionare la cartella di destinazione delle macchine virtuali. Nel mio caso 'vm'.
  • In Hosts attributes to set, attributi per Monitoring agents: SNMP, Agenti di monitoraggio: Agente Checkmk / Integrazioni API, Agenti di monitoraggio: Piggyback e Indirizzo di rete: Famiglia di indirizzi IP sono predefiniti. Eliminare i quattro predefiniti, poiché non sono necessari per il monitoraggio VMware. Per farlo, fare clic una volta su ciascuno dei quattro simboli X per i singoli attributi, in modo che scompaiano.
  • Attiva l'opzione Aggiungi solo host corrispondenti e usa la regex per creare host solo per le macchine virtuali. Se hai seguito il link alle raccomandazioni per un concetto di denominazione, potete inserire qui " .*-vm". Lasciare le altre impostazioni invariate.
  • Fare clic su Salva.
Il DCD di Checkmk configurato per creare host VM

Checkmk creerà le macchine virtuali come host in base ai dati di piggyback del server vCenter e assegnerà automaticamente i servizi di monitoraggio appropriati. Se in seguito si aggiungono altre macchine virtuali tramite vCenter, Checkmk creerà automaticamente anche i loro host.

Come per i servizi del vCenter, l'API di VMware non consente di differenziare, ad esempio, modelli e macchine virtuali. Pertanto, l'opzione Aggiungi solo gli host corrispondenti e un concetto di denominazione coerente è ancora una volta importante. Quindi, tramite una regex in Checkmk è possibile creare gli host solo per le VM in vCenter. Nel mio caso, tutte le macchine virtuali hanno un '-vm' nel nome visualizzato, ma i modelli no.

Se non si utilizza questa opzione di filtro a questo punto, sarà necessario modificare manualmente gli host indesiderati una volta che il DCD li ha creati. Questo è un altro esempio di lavoro aggiuntivo che si può evitare con un concetto di denominazione coerente.

Se si attiva l'opzione Elimina host scomparsi, Checkmk eliminerà gli host se non sono disponibili dati per un periodo superiore a dieci minuti. In questo tutorial non utilizzo questa opzione.

Fase 3: Includere i dati degli host ESXi nel monitoraggio

Ora recupera i dati di monitoraggio dagli host ESXi. A tale scopo, creare innanzitutto una cartella per gli host ESXi.

  • In Configurazione -> Tutti gli host si crea di nuovo una cartella con Aggiungi cartella. Come titolo ho usato 'esxi'. È possibile utilizzare un nome di propria scelta.
  • Fare clic su Salva.

Non è possibile installare agenti Checkmk su host ESXi, quindi è possibile mantenere l'impostazione predefinita per questa cartella.

Impostazione dell'accesso agli host ESXi tramite l'API VMware in Checkmk

Creare una regola per poter recuperare i dati tramite l'API VMware:

  • Fare clic su Setup e cercare nuovamente 'vmware'. Fare clic su 'VMWare ESX via vSphere'.
  • Fare clic su Aggiungi regola.
  • Come nome utente di vSphere, utilizzare l'account di sola lettura. Per il mio account, questo è chiamato "checkmk" per tutti gli host ESXi. Questo è seguito dalla password appropriata in vSphere secret.
  • Per il Tipo di interrogazione si mantengono le impostazioni predefinite "L'host interrogato è un sistema host".
  • Il Timeout di connessione può essere lasciato così com'è.
  • In Recupera informazioni su... ci sono importanti differenze rispetto alla configurazione precedente per vCenter. Ora si lasciano abilitati "Host Systems" e "Performance Counters", ma si deselezionano "Virtual Machines" e "Datastores". Queste informazioni vengono già fornite da vCenter.
  • Anche ilnome Piggyback delle macchine virtuali e il riepilogo delle istantanee delle macchine virtuali rimangono disabilitati.
Regola VMware in Checkmk configurata per monitorare gli host ESXi
  • Questa volta seleziona la cartella appena creata per gli host ESXI in Condizioni della cartella. Nel mio esempio si tratta di 'esxi'. Poiché utilizzo le stesse credenziali per tutti gli host ESXi, posso applicare la regola alla cartella. Se si utilizzano credenziali diverse, è necessario definire la regola con le rispettive credenziali per ogni host ESXi.
  • Fare clic su Salva per memorizzare la regola.
Regolazione delle condizioni della regola VMware per gli host ESXi

Il monitoraggio di VMware è stato configurato per recuperare i dati da tutte le macchine virtuali tramite vCenter. Tuttavia, non si ottengono le informazioni per gli host ESXi da lì, ma direttamente dagli hypervisor. Questo è l'unico modo per monitorare i dati specifici dell'hardware, come lo stato di salute delle schede di rete, sui nodi del cluster. Inoltre, rende indipendenti da vCenter. Se questo fallisce come fonte di dati, si avranno comunque le informazioni sullo stato di salute dell'hardware VMware.

Se si utilizza un host ESXi come hypervisor indipendente senza vCenter, è necessario recuperare le informazioni dalle macchine virtuali e dai datastore direttamente da esso. A tal fine, è necessario lasciare abilitate le opzioni in Recupera informazioni su....

Se invece ci si affida a un cluster VMware, solo vCenter fornisce la vista complessiva delle macchine virtuali e il provisioning dei datastore per tutte le macchine virtuali. Gli host ESXi, invece, vedono solo il provisioning delle proprie VM. Se si monitorasse il provisioning tra vCenter e gli host ESXi due volte, si verificherebbero delle discrepanze tra i valori di provisioning. Allo stesso modo, lo spostamento delle macchine virtuali su un altro nodo con i dati dei singoli host ESXi non verrà mappato in modo pulito nel monitoraggio.

Aggiunta di host ESXi a Checkmk

Ora è possibile aggiungere gli hypervisor come host in Checkmk. In questa esercitazione, li aggiungo manualmente come host al monitoraggio. Se hai più di cinque o dieci host ESXi, puoi importarli tramite un file CSV. Seguire le istruzioni riportate nel manuale di Checkmk.

  • Andare a Configurazione -> Host e selezionare la cartella in cui è stata applicata la regola per gli host ESXi, nel mio caso 'esxi'.
  • Fare clic su Aggiungi host.
  • Come nome host inserire il nome visualizzato del primo host ESXi, ad esempio 'muc-sr1-esxi-001.lan.domain.net'.
  • Fare clic su Salva e passare alla configurazione del servizio.
  • Attendere che Checkmk completi il rilevamento automatico dei servizi.
  • Fare clic su Accetta tutto, ma non chiudere questa vista.

Per gli host ESXi, a questo punto è necessario disabilitare i servizi di monitoraggio 'Sensori hardware' per tutti gli host ESXi. Poiché in seguito il monitoraggio dell'hardware del server avviene tramite la scheda di gestione del server, non è necessario il monitoraggio dell'hardware di VMware. Inoltre, questo non funziona sempre in modo affidabile e spesso genera falsi allarmi.

  • Rimuovere nuovamente il servizio di monitoraggio "Sensori hardware". Fare semplicemente clic sul simbolo X rosso davanti al servizio di monitoraggio "Sensori hardware". Questo verrà quindi spostato nell'area Servizi disabilitati.
  • A questo punto, fare clic sul menu di azione, la terza icona del servizio "Sensori hardware".
Il servizio Sensore hardware è stato disattivato dopo il rilevamento del servizio di Checkmk; il simbolo dell'azione è evidenziato.

Ora vengono visualizzati i servizi disabilitati per questo host. Questi sono controllati dalla regola "Servizi disabilitati".

  • Fare clic sulla prima icona sotto Azione per la regola di monitoraggio dei sensori hardware. È possibile riconoscere la regola appropriata dal testo sotto Condizioni. Nel mio caso è scritto "Nome host è muc-sr1-esxi-001.lan.domain.net Nome servizio è Sensori hardware".
Panoramica delle regole di disattivazione dei servizi utilizzate in Checkmk
  • Ora personalizzare la regola. Scorri verso il basso e, alla voce Condizioni, specifica che Checkmk applica questa regola non solo a questo particolare host ESXi, ma a tutti gli host della cartella ESXi.
    • In Cartella, selezionare la cartella per gli host ESXi, nel mio caso 'esxi'.
    • Deselezionare la casella in corrispondenza di Host espliciti.
  • Fare clic su Salva.
Il servizio Sensore hardware è disattivato per la cartella vm con la regola di servizio disattivata

Questa opzione disabilita il servizio per tutti gli host di questa cartella. Pertanto, è sufficiente modificare questa regola una sola volta e si possono aggiungere altri host ESXI in futuro senza doversi preoccupare di nuovo dei sensori hardware.

Solo in ambienti VMware molto grandi con molti hypervisor è possibile risparmiare tempo se tutti gli host ESXi vengono creati con il DCD in base ai dati di piggyback di vCenter, invece di aggiungerli tramite elenchi CSV. Ad esempio, utilizzando il concetto di denominazione consigliato qui, è possibile impiegare una regex per applicare la regola solo agli host ESXi. Se poi si recuperano i dati di monitoraggio direttamente dagli host ESXi, gli host persisteranno anche se il vCenter si spegne. Ciò richiede tuttavia una certa esperienza con le regole di monitoraggio. Per questo motivo, all'inizio si consiglia di aggiungere sempre manualmente gli host ESXi al monitoraggio.

Passo 4: Personalizzazione del monitoraggio VMware tramite regole

Ora hai impostato il monitoraggio delle tue macchine virtuali e degli host ESXi. Tuttavia, in Checkmk sono presenti altre regole che rendono più semplice il monitoraggio di VMware su base giornaliera. Ora vorrei mostrarti come utilizzare due di queste regole.

Configurazione degli stati predefiniti per le risorse VMware nel monitoraggio

Nel blog già citato sui concetti di denominazione, utilizzo un trattino basso come prefisso per i nomi di visualizzazione in VMware per le macchine virtuali che non sono più in uso e che saranno presto eliminate. Ad esempio, se si intende eliminare presto il sistema di test 'muc-vm-test-01.lan.domain.net', aggiungere un trattino basso e il suo nuovo nome visualizzato sarà ' _muc-vm-test-01.lan.domain.net'.

Ciò indica anche che questa macchina virtuale deve essere disabilitata. Per impostazione predefinita, Checkmk presuppone che una macchina virtuale sia online. È possibile utilizzare la regola "Stati dell'host ESX e della macchina virtuale" per personalizzare i valori predefiniti per gli avvisi e gli stati critici per i servizi selezionati. Qui vi mostrerò come utilizzare la regola "Stati degli host ESX e delle macchine virtuali" per personalizzare la configurazione di tutti i sistemi con un prefisso di sottolineatura nel nome.

  • Fate clic su Configurazione e cercate 'esx'. Fare clic su "Stati dell'host ESX e della macchina virtuale".
  • Quindi fare clic su Aggiungi regola.
  • In Stati di destinazione, impostare le seguenti voci:
    • Per Powered ON, selezionare l'opzione 'WARN'.
    • Per Powered OFF, selezionare l'opzione 'OK'.
Utilizzo degli stati degli host ESX e delle macchine virtuali per regolare gli stati di destinazione
  • In Condizioni, selezionare la casella di controllo in Nome della VM/HostSystem.
  • Immettere "VM _" come condizione nel campo di immissione.
  • Fare clic su Salva.
Utilizzo di regex in Checkmk per applicare la regola di monitoraggio solo agli host vm con una regola underscore

Checkmk aggiunge automaticamente l'abbreviazione 'VM' dal nome del servizio al nome visualizzato di ogni VM. Utilizzando la regex 'VM _', Checkmk modifica la configurazione dello stato per tutti i servizi VM con il prefisso '_'. Questi servizi dovrebbero ora essere offline e non riceveranno falsi avvisi da Checkmk.

In futuro, se si desidera mettere una macchina virtuale offline in modo permanente, tutto ciò che si deve fare nel client VMware è aggiungere un prefisso di sottolineatura al suo nome visualizzato ed eseguire un nuovo Service Discovery. Checkmk riconoscerà quindi che il servizio di monitoraggio di questa VM deve essere offline.

Naturalmente, questo è solo un esempio di come applicare questa regola. Allo stesso modo, è possibile configurare lo stato dei server di replica di VMware. L'opzione Abilita parametri specifici per l'orario consente inoltre di impostare orari specifici per le macchine virtuali/ospiti in Checkmk, ad esempio quando è prevista la loro disattivazione durante le finestre di manutenzione.

Disattivazione dei servizi di monitoraggio VMware

Hai già utilizzato la regola Disabilita servizio per escludere il servizio Sensori hardware. Vorrei anche mostrarti come utilizzare una singola regola per rimuovere definitivamente le macchine virtuali indesiderate dal monitoraggio. La chiave è ancora una volta un concetto di denominazione coerente. Nel mio esempio, si tratta di tutte le macchine virtuali con il prefisso '#'.

  • Fai clic su Impostazione. Cerca 'Disabilita' e fai clic su 'Servizi disabilitati'.
  • Fare clic su Aggiungi regola.
  • In Condizioni, attivare la casella di controllo in Servizi. Io uso la regex "VM #".
  • Memorizzare questa regola con Salva.
La regola di disabilitazione dei servizi configurata in Checkmk, i servizi del campo sono evidenziati

Checkmk applicherà ora questa regola alla directory principale e quindi al monitoraggio completo di questo sito Checkmk.

Passo 5: Monitoraggio dell'hardware tramite la scheda di gestione

Ora hai creato tutte le macchine virtuali e gli host ESXi in due cartelle separate nel tuo monitoraggio. Un monitoraggio VMware completo comprende anche il monitoraggio dell'hardware del server. Consiglio di interrogare le informazioni appropriate tramite la scheda di gestione del server e di creare un singolo host per ogni server hardware. Io interrogo i dati tramite SNMP. Checkmk supporta anche le interrogazioni tramite IPMI.

  • Anche in questo caso, creare una nuova cartella in Setup e assegnarle il nome desiderato. Nel mio esempio, utilizzo i server HPE, quindi chiamo la cartella 'ilo'. In Dell, ad esempio, le schede di gestione si chiamano 'iDRAC'.
    • In Agenti di monitoraggio, attivare l'agente Checkmk / Integrazioni API e selezionare "Nessuna integrazione API, nessun agente Checkmk".
    • Inoltre, attivare la casella di controllo in SNMP e selezionare la versione SNMP. Nel mio esempio, è "SNMP v2 o v3".
    • Salvare la cartella con Salva.
Aggiunta di una cartella per il monitoraggio dell'hardware con SNMP in Checkmk

Non uso SNMPv3, ma v2c e la community SNMP predefinita 'public' per tutte le mie schede di gestione. Questa è la configurazione predefinita di Checkmk. Pertanto, non ho bisogno di inserire altri dati quando creo gli host. Se si dispone di una comunità SNMP diversa e/o si utilizza SNMPv3, selezionare la casella in corrispondenza di Credenziali SNMP e aggiungere le informazioni appropriate.

  • In Impostazione, fare di nuovo clic su Host e fare clic sulla cartella appena creata.
  • A questo punto, fare clic su Aggiungi host per creare l'host per la prima scheda di gestione.
  • In Hostname, aggiungere il nome della scheda di gestione, ad esempio 'muc-sr1-esxi-001-ilo.lan.domain.net'.
  • Fare clic su Salva e passare alla configurazione del servizio, quindi attendere il rilevamento del servizio.
  • Fare clic su Accetta tutto.
  • Ripetere questa procedura per ogni server hardware con scheda di gestione.

Avendo già memorizzato la configurazione appropriata nella cartella, tutti gli host erediteranno le impostazioni corrette, risparmiando tempo. Se si utilizzano diverse comunità SNMP per le schede di gestione, è necessario configurarle singolarmente quando si aggiungono i singoli host. La configurazione tramite la cartella, invece, consente di risparmiare tempo.

Si può notare che alcune modifiche si sono accumulate nel monitoraggio. È necessario accettare le modifiche in Checkmk:

  • Di nuovo, andare sull'icona gialla nell'angolo in alto a destra e attivare nuovamente le "modifiche in sospeso" facendo clic su Attiva sui siti selezionati.

Ad esempio, la vista host del server hardware si presenta così nel mio monitoraggio:

Vista dell'host di una scheda ilo in Checkmk

Passo 6: Monitoraggio dei backup Veeam per VMware

A questo punto, vorrei anche mostrarti come monitorare tutti i backup delle tue macchine virtuali. Io utilizzo Veeam come strumento di backup e ho configurato un server di backup hardware chiamato 'muc-sr2-veeam-001.lan.domain.net'. Utilizzo il plug-in dell'agente Checkmk per Veeam:

  • Aggiungere il server di backup come host al monitoraggio. A tale scopo, andare in Configurazione e fare clic su Aggiungi host.
  • Inserire il nome del server di backup come nome host. Nel mio esempio "muc-sr2-veeam-001.lan.domain.net".
  • Fare clic su Salva e andare alla cartella.
  • Fare di nuovo clic su Setup . Cercare "veeam". Fare clic su 'Veeam Backup Status (Windows)'.
  • In Condizioni si deve assegnare questa regola al server di backup, quindi in questa esercitazione ho scelto 'muc-sr2-veeam-001.lan.domain.net' in Host espliciti. Altrimenti si possono lasciare invariate tutte le altre impostazioni.
  • Memorizzare la regola con Salva.
Utilizzo di Veeam-Backup-Regel in Checkmk
  • Ora vai a Configurazione -> Agenti -> Windows, Linux, Solaris, AIX.
  • Il pulsante arancione indica che la Agent Bakery di Checkmk è pronta a creare un agente per voi.
  • Fare clic su "Prepara agenti".
La panetteria degli agenti di Checkmk è pronta a sfornare un agente
  • Attendere che l'agente finisca di cuocere e appaia come opzione di selezione. Quindi scaricare l'agente Windows con il plug-in Veeam configurato.
Il bakery dell'agente in Checkmk con un agente Veeam, il pacchetto msi è evidenziato
  • Installare l'agente sul server Veeam.
  • Una volta installato l'agente, andare in Configurazione -> Host e selezionare l'host del server Veeam. Avviare il rilevamento automatico dei servizi per il server Veeam.
  • Fare clic su Accetta tutto.

Il plug-in Veeam non solo monitora i lavori Veeam sul server Veeam, ma trasmette anche i servizi come dati di piggyback per gli host VM. Affinché Checkmk includa il servizio 'Veeam Client' per ogni host VM nel monitoraggio, è necessario avviare un rilevamento dei servizi per tutti gli host VM. Il modo più semplice per farlo è un "Bulk Discovery" per la cartella VM.

  • Andare a Configurazione -> Host e aprire la cartella delle macchine virtuali.
  • Fare clic su Hosts nella barra dei menu superiore. Selezionare "Scopri servizi".
Utilizzando il bulk discovery di Checkmk, si evidenzia l'opzione di menu corrispondente
  • Nella finestra Bulk discovery , è possibile accettare tutte le opzioni predefinite e fare clic su 'Start'.
  • Dopo il rilevamento di un servizio, si vedrà un riepilogo nella finestra dei dettagli del lavoro in background. Checkmk dovrebbe aver rilevato alcuni nuovi servizi.
  • Confermare nuovamente le "modifiche in sospeso".
  • Checkmk ora monitorerà il funzionamento di Veeam, ma acquisirà anche i dati di piggyback appropriati dall'host Veeam e li distribuirà agli host VM in Checkmk.

Ad esempio, il servizio di backup viene ora visualizzato nella vista host del mio server vCenter. Checkmk rileva che Veeam non ha eseguito un backup per 40 ore. Anche in questo caso entra in gioco un concetto di denominazione coerente, che consente a Checkmk di distribuire correttamente i dati senza bisogno di ulteriori configurazioni.

Vista host di un host vCenter in Checkmk, lo stato del servizio per Veeam è WARN

Conclusioni: Sì, è possibile monitorare VMware

In questa esercitazione ho dimostrato come sia possibile utilizzare Checkmk per impostare un monitoraggio VMware completo in tutte le sue sfaccettature. Ti ho anche presentato alcune regole che possono semplificare la tua vita quotidiana durante il monitoraggio dell'ambiente virtuale.

Tuttavia, la base per un monitoraggio VMware efficiente è un concetto di denominazione coerente. Solo così è possibile sfruttare appieno le potenzialità di Checkmk. Il giusto concetto di denominazione non solo aiuta ad assegnare automaticamente tutti i servizi di monitoraggio pertinenti, ma semplifica anche la configurazione e la gestione del monitoraggio.

In questo modo l'implementazione del monitoraggio VMware diventa un gioco da ragazzi. Questo tutorial è stato progettato per ridurre al minimo la quantità di lavoro a lungo termine da svolgere con il monitoraggio. Una volta impostate le regole, Checkmk rileverà automaticamente le macchine virtuali. Utilizzando una regex nelle regole, Checkmk rimuove anche i servizi indesiderati ed evita falsi avvisi, ad esempio quando si spegne una VM e la si prepara per l'eliminazione.