Guida alla configurazione SNMP di ESXi per il monitoraggio di ESXi
Il monitoraggio dell’infrastruttura è importante per le organizzazioni perché consente di individuare tempestivamente i problemi e prevenire i guasti. Se si verifica un guasto, le notifiche tempestive relative al guasto consentono di iniziare a risolvere i problemi correlati il prima possibile. In un ambiente VMware vSphere, si consiglia di configurare il monitoraggio di ESXi. Uno dei metodi più convenienti per monitorare gli host ESXi consiste nell’utilizzare le funzionalità integrate e il protocollo SNMP (Simple Network Management Protocol). In questo caso è necessario configurare un server dedicato dotato di software di monitoraggio. Questo articolo del blog tratta la configurazione SNMP di ESXi e spiega come abilitare SNMP sugli host ESXi.
Preparazione dell’ambiente
Ecco come abilitare SNMP su ESXi:
- Abilitare Secure Shell (SSH)
- Configurare SNMP
- Configurare il firewall di ESXi
Spiegherò la configurazione SNMP di ESXi utilizzando un esempio con un ESXi 7.0 host e una macchina Ubuntu Linux su cui è installato il software di monitoraggio.
L’indirizzo IP dell’host ESXi è 192.168.101.208.
L’indirizzo IP della macchina Ubuntu Linux è 192.168.101.209.
Utilizzate i vostri indirizzi IP e altri valori per i parametri appropriati quando configurate il monitoraggio di ESXi tramite SNMP nella vostra Infrastruttura, in base alle vostre esigenze.
Abilitazione dell’accesso SSH su ESXi
L’accesso SSH su un host ESXi è necessario per eseguire da remoto i comandi ESXCLI sull’host. Per abilitare l’accesso SSH al proprio host VMware ESXi, è possibile utilizzare VMware Host Client. Aprire un browser web, inserire l’indirizzo IP del proprio host VMware ESXi nella barra degli indirizzi, quindi inserire le credenziali per effettuare l’accesso.
Nel pannello Navigator , vai su Host > Manage e fai clic sulla scheda Services .
Fai clic con il tasto destro su TSM-SSH e, nel menu contestuale, seleziona Start.
Nello screenshot qui sotto puoi vedere il servizio server SSH avviato sull’host ESXi.
Ora puoi connetterti all’host ESXi da un computer su cui è installato un client SSH. Se utilizzi Windows, puoi usare PuTTY, un client SSH gratuito e pratico. In Linux, esegui il client SSH dalla riga di comando con il comando:
ssh your_username@host_ip_address
Inserisci l’indirizzo IP del tuo host VMware ESXi e la porta TCP 22 (il numero di porta predefinito) nelle impostazioni di sessione del client SSH per connetterti all’host VMware ESXi tramite SSH.
Configurazione SNMP di VMware ESXi
Una volta stabilito l’accesso SSH all’host VMware ESXi, puoi configurare le opzioni SNMP di VMware ESXi. Sugli host ESXi, SNMP può essere configurato solo in l’interfaccia a riga di comando. L’interfaccia utente grafica (GUI) consente solo di avviare, arrestare e riavviare il servizio SNMP.
Eseguire il comando nella console (terminale) e verificare lo stato di SNMP sull’host ESXi:
esxcli system snmp get
SNMP è disabilitato per impostazione predefinita. L’output relativo a SNMP disabilitato su ESXi è mostrato nella schermata. La maggior parte dei parametri è vuota e/o non configurata.
Configurazione dei parametri di un agente SNMP
Impostare i parametri SNMP per un agente SNMP sull’host ESXi. L’agente SNMP viene utilizzato per inviare notifiche (trap e inform SNMP) a un server di monitoraggio e ricevere richieste GET, GETNEXT e GETBULK.
Impostare il nome della community (“ public ” è il nome della community impostato per impostazione predefinita). Il nome della community in questo esempio è “ NAKIVO ”. esxcli system snmp set --communities nakivo
Impostare la destinazione SNMP. La destinazione SNMP è un server su cui è installato un software di monitoraggio per gestire le trap SNMP e raccogliere le informazioni di monitoraggio. Nel mio esempio, la destinazione SNMP è la macchina su cui è in esecuzione Ubuntu Linux ( 192.168.101.209 ). UDP 161 è la porta predefinita utilizzata per SNMP e questa porta è definita nella mia configurazione SNMP di ESXi:
esxcli system snmp set --targets=192.168.101.209@161/nakivo
Specificare un’ubicazione, ad esempio la posizione geografica, l’indirizzo, il data center o la stanza in cui si trova il server:
esxcli system snmp set --syslocation "Server room"
Specificare le informazioni di contatto. Per questo parametro è possibile definire l’indirizzo e-mail dell’amministratore di sistema:
esxcli system snmp set --syscontact michaelbose@nakivo.com
Abilitare SNMP su ESXi:
esxcli system snmp set --enable true
Verificare nuovamente lo stato SNMP sull’host ESXi:
esxcli system snmp get
Ora è possibile verificare che i parametri siano configurati.
L’ID motore è l’identificatore univoco dell’agente SNMP (utilizzato per SNMP v3). L’ID motore può essere impostato con il comando (facoltativo):
esxcli system snmp set -engineid 544a33209458
Lo stato SNMP è in esecuzione al momento. È inoltre possibile aprire VMware Host Client, andare su Host > Manage > Servicese verificare lo stato del servizio snmpd .
Verifica la configurazione SNMP attuale.
esxcli system snmp test
Se modifichi le impostazioni SNMP in seguito, riavvia l’agente SNMP con il comando:
/etc/init.d/snmpd restart
In alternativa, puoi riavviare l’agente SNMP di ESXi nell’interfaccia grafica di VMware Host Client nella scheda Services . Fai clic con il tasto destro del mouse sul servizio e seleziona Restart dal menu contestuale.
Se devi ripristinare le impostazioni SNMP di ESXi, utilizza il comando:
esxcli system snmp set -r
Il comando per disabilitare SNMP su un host ESXi è:
esxcli system snmp set --enable false
Puoi verificare la disponibilità di SNMP da una macchina Linux se tale macchina Linux è la destinazione SNMP. A questo scopo utilizziamo Ubuntu Linux.
Installare il client SNMP obbligatorio su Ubuntu Linux se non è ancora stato installato:
sudo apt-get install snmp
Connettersi all’host ESXi tramite SNMP per verificare i parametri disponibili per il monitoraggio:
snmpwalk -v2c -c nakivo 192.168.101.208
Nell’output della console dovrebbe apparire un lungo elenco di oggetti per il monitoraggio di ESXi tramite SNMP. Questi oggetti sono basi di informazioni di gestione (MIB) e identificatori di oggetto (OID), che costituiscono elementi della struttura gerarchica dei parametri di monitoraggio.
Una MIB SNMP è un insieme di informazioni relative agli oggetti (parametri e impostazioni) organizzato gerarchicamente. Esistono MIB scalari e tabulari. Le MIB possono essere standard o specifiche del vendor.
Un OID SNMP è un oggetto gestito identificato in modo univoco nella struttura gerarchica della MIB. I diversi livelli dell’albero sono assegnati da diverse organizzazioni. I vendor possono definire rami speciali per il monitoraggio dei parametri dei propri prodotti.
Un nome oggetto è un valore univoco per l’intera MIB che corrisponde all’OID appropriato. Ad esempio, il nome oggetto per l’OID 1.3.6.1.2.1.1.5 è sysName .
Configurazione del firewall ESXi
È necessario configurare il firewall e abilitare l’accesso SNMP dai server di monitoraggio all’host ESXi. È possibile impostare una sottorete o un singolo indirizzo IP dei dispositivi autorizzati nella rete.
Eseguiamo questi tre comandi per consentire l’accesso dalla rete 192.168.101.0/24 per effettuare il monitoraggio di ESXi tramite SNMP:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 192.168.101.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
Inserisci l’indirizzo IP o un indirizzo di rete in base alla tua configurazione di rete.
Una configurazione meno sicura consiste nell’abilitare l’accesso da qualsiasi dispositivo di rete:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
La configurazione SNMP di ESXi è completata. Ora è possibile configurare il software di monitoraggio su un server di monitoraggio.
Configurazione di SNMP v3
SNMP v3 è una versione più sicura del protocollo che fornisce autenticazione tramite chiave e crittografia. La configurazione di SNMP v3 è più complessa ed è supportata a partire da vSphere 5.1. Di seguito è riportata una panoramica su come abilitare SNMP v3 su un host ESXi.
Impostare il protocollo di autenticazione e le opzioni di privacy.
esxcli system snmp set -a SHA1 -x AES128
Dove:
SHA1 è l’algoritmo per la crittografia, ovvero la funzione hash crittografica (Secure Hash Algorithm 1).
AES128 è il metodo di crittografia (Advanced Encryption Standard con una chiave di crittografia a 128 bit) che utilizza il cifrario a blocchi simmetrico.
Generare gli hash utilizzando un comando del tipo:
esxcli system snmp hash –auth-hash authpass –priv-hash privhash –raw-secret
Nel mio caso, il comando è:
esxcli system snmp hash --auth-hash PasswordTest1 --priv-hash PasswordTest2 --raw-secret
Evitare di utilizzare le password fornite in questo esempio in ambienti di produzione. Utilizzare password uniche (la password deve essere lunga almeno 7 caratteri). Salvare le stringhe di hash generate. Nel mio caso, gli hash sono i seguenti.
Authhash: 831a798d1cda90ca1a3ab80d38f81a44c0851ada
Privhash: 38cf6f13d09a4651362338eac2c3d62b42514bc9
Utilizzate gli hash generati e aggiungete un utente. È supportata l’aggiunta di un massimo di cinque utenti.
esxcli system snmp set -e yes -C user -u snmpuser/authhash/privhash/priv
Dove:
user è l’e-mail di contatto dell’utente
snmpuser è il nome utente (può contenere fino a 32 caratteri)
authhash è il valore hash di autenticazione
privhash è il valore hash di privacy
Aggiungiamo user1 utilizzando gli hash generati nell’output del comando precedente. esxcli system snmp set -e yes -C user1@nakivo.com -u user1/831a798d1cda90ca1a3ab80d38f81a44c0851ada/38cf6f13d09a4651362338eac2c3d62b42514bc9/priv
È possibile creare un utente senza impostazioni di sicurezza (senza autenticazione né privacy) utilizzando il comando:
esxcli system snmp set --user user2/-/-/none
Definire l’indirizzo di destinazione SNMP:
esxcli system snmp set --v3targets 192.168.101.209@161/user1/priv/trap
Abilitare SNMP su ESXi:
esxcli system snmp set --enable true
Verificare le impostazioni SNMP:
esxcli system snmp test
È possibile utilizzare il comando esteso per testare la configurazione SNMP di VMware su ESXi:
esxcli system snmp test -u=user1 -A=PasswordTest1 -X=P2sswordTest2 -r
Dove user1 è il nome dell’utente SNMP che è stato aggiunto alla configurazione.
Se il test viene completato con successo, viene visualizzato un messaggio:
Utente convalidato correttamente per l’ID motore e il livello di sicurezza specificati: protocolli
Provare a connettersi all’host ESXi tramite SNMP v3 da un server Linux di monitoraggio (dal lato di destinazione).
Questo comando viene utilizzato se non sono stati impostati parametri di autenticazione:
snmpwalk -v3 -u user1 192.168.101.208
Se sono state impostate opzioni di sicurezza, definirle nel comando:
snmpwalk -v3 -u user1 -l AuthPriv -a SHA -A PasswordTest1 -x AES -X PasswordTest2 192.168.101.208
Dove user1 è il nome del mio utente aggiunto alla configurazione SNMP di ESXi.
Se durante il test della configurazione SNMP di ESXi viene visualizzato l’errore “ Nome utente sconosciuto ”, verificare di aver aggiunto un utente e di aver definito il nome utente corretto nei comandi successivi all’aggiunta dell’utente. Tenere presente che se si modifica l’ID motore dell’agente, il protocollo di privacy o il protocollo di autenticazione dopo aver configurato gli utenti, questi ultimi non saranno più validi. In questo caso è necessario riconfigurare gli utenti.
Inoltre, prestare attenzione alle impostazioni di sicurezza poiché una configurazione SNMP errata può costituire una minaccia e consentire a un host malintenzionato di ottenere informazioni su un host ESXi. Queste informazioni possono essere utilizzate per individuare punti vulnerabili e sferrare un attacco informatico.
Configurazione SNMP di più host ESXi
L’utilizzo di Profili host VMware può aiutare ad abilitare SNMP e a configurare più host ESXi in modo più razionale se si dispone di un numero elevato di host ESXi nell’ambiente vSphere.
Per abilitare SNMP e configurare più host ESXi, è necessario disporre di VMware vSphere Enterprise Plus licenza per utilizzare i profili host VMware in VMware vSphere Client. Le impostazioni SNMP di VMware per i profili degli host ESXi hanno l’ubicazione in Management > Host Profiles > your Profile > SNMP Agent Configuration. È inoltre possibile utilizzare vSphere PowerCLI per automatizzare il processo di configurazione di un gran numero di host ESXi e impostare la configurazione SNMP su di essi.
Conclusione
La configurazione SNMP di ESXi richiede l’accesso SSH agli host ESXi, la configurazione degli agenti SNMP e l’autorizzazione dell’accesso nel firewall ESXi. Il monitoraggio di ESXi consente di reagire tempestivamente in caso di rilevamento di eventuali problemi e di migliorare la disponibilità complessiva del servizio. Non dimenticate di eseguire il backup delle macchine virtuali VMware vSphere per evitare la perdita di dati e poter recuperare i dati e ripristinare i carichi di lavoro in caso di emergenza.
NAKIVO Backup & Replication è la soluzione universale per la protezione dei dati che offre un’ampia gamma di opzioni per il backup e il ripristino delle macchine virtuali VMware vSphere e di altri dati presenti in un data center. Inoltre, l’ultima versione della soluzione supporta il monitoraggio di ESXi nell’ambito del monitoraggio di VMware vSphere.










