I prodotti software server VMware forniscono file di log che registrano dati sugli eventi di ogni componente software con timestamp. I log di VMware possono essere utilizzati per risolvere problemi e diagnosticare e risolvere problemi. Questo post del blog copre i log di ESXi e vCenter, spiega come controllare i log in VMware vSphere, come trovare le informazioni necessarie e analizzarli.
Log di ESXi
VMware ESXi è un hypervisor ampiamente utilizzato che consente agli utenti di creare e gestire macchine virtuali su server fisici. Per garantire il corretto funzionamento, la risoluzione dei problemi e il monitoraggio dei server ESXi, vengono generati vari log. Questi log catturano eventi importanti, errori e dati sulle prestazioni, aiutando gli amministratori e i team di supporto a identificare problemi e mantenere la stabilità dell’infrastruttura virtuale. Di seguito è spiegata qualche log essenziale di VMware ESXi.
Log VMkernel
/var/log/vmkernel.log
Questo log registra le attività del VMkernel, incluse le attività dei driver di dispositivo, lo storage, la rete e altre attività correlate al kernel. Fornisce informazioni sulle operazioni di sistema a basso livello e è cruciale per diagnosticare problemi hardware. La posizione del log vmkernel è la directory /var/log/.
/var/log/vmkwarning.log
Questo file di log contiene messaggi di avviso generati dal VMkernel, che è il nucleo dell’hypervisor ESXi. Registra eventi e condizioni che possono richiedere attenzione ma non sono errori critici.
/var/log/vmksummary.log
Il vmksummary.log è un registro di riepilogo che fornisce una panoramica dello stato operativo dell’host ESXi, inclusi eventi di avvio e spegnimento, utilizzo delle risorse di sistema e alcune statistiche chiave sulle prestazioni.
Log di gestione dell’host
/var/log/hostd.log
Questo registro contiene voci relative al servizio di gestione dell’host ESXi (hostd). Cattura eventi relativi alle operazioni di alimentazione delle macchine virtuali, elaborazione di attività ed eventi e comunicazione con il server vCenter se applicabile.
Log delle macchine virtuali
/vmfs/volumes/datastore_name/vm_name/vmware.log
Ogni macchina virtuale mantiene un file di registro che cattura eventi specifici di quella VM, come operazioni di alimentazione, modifiche dell’hardware virtuale ed eventi delle applicazioni dall’interno del sistema operativo guest. La posizione del file vmware.log è una directory VM su un datastore.
Log di archiviazione
/var/log/vobd.log
Questo registro si concentra su problemi relativi all’archiviazione e alle operazioni iSCSI.
/var/log/vmkernel.log
Come già accennato, i log del VMkernel catturano anche eventi relativi all’archiviazione.
Log di rete
/var/log/vobd.log
Questo registro include eventi legati alla rete, come vMotion, connettività di rete ed errori di comunicazione.
/var/log/vmkernel.log
I log del VMkernel contengono anche messaggi relativi alla rete.
Log di autenticazione e utente
/var/log/auth.log
Questo registro registra gli eventi di autenticazione, inclusi gli accessi utente e le disconnessioni.
Registri shell ESXi e SSH
/var/log/shell.log
Questo registro cattura i comandi shell ESXi (TSM) eseguiti dagli utenti.
/var/log/ssh.log
Se l’SSH è abilitato sull’host ESXi, questo registro registra gli eventi correlati all’SSH.
Messaggi di sistema
/var/log/syslog.log
Il syslog.log contiene un registro completo dei messaggi di sistema dal VMkernel e dai vari servizi in esecuzione sull’host ESXi. Captura un’ampia gamma di informazioni, tra cui messaggi di avvio, eventi hardware, attività di rete e molto altro.
Registri del firewall
/var/log/firewall.log
Questo registro tiene traccia degli eventi relativi al firewall ESXi, incluse le connessioni consentite e negate.
Registri del server vCenter su ESXi (se connessi a un server vCenter)
/var/log/vpxa.log
Questo file di registro è specifico per gli host ESXi gestiti dal server vCenter. Il vpxa.log è correlato all’agente vCenter (vpxa) in esecuzione sull’host ESXi. Registra le interazioni tra l’host ESXi e il server vCenter, incluse le attività avviate da vCenter, come le operazioni di alimentazione VM, le migrazioni e le modifiche di configurazione, nonché gli aggiornamenti dello stato host, l’esecuzione di attività ed eventi e la comunicazione con il server vCenter.
Registri degli aggiornamenti ESXi
/var/log/esxupdate.log
Il file esxupdate.log contiene registri relativi all’aggiornamento e all’installazione di patch dell’host ESXi. Questo file di registro registra informazioni sull’installazione, l’aggiornamento e la rimozione dei pacchetti software (VIB) sull’host ESXi.
Registri USB
/var/log/usb.log
Il file usb.log registra eventi relativi ai dispositivi USB connessi all’host ESXi. Traccia la rilevazione, la connessione e la disconnessione dei dispositivi USB, così come eventuali problemi relativi al passaggio USB o all’uso di un servizio arbitrario USB.
Registri di VMware vCenter
VMware vCenter è una piattaforma di gestione centralizzata che consente agli amministratori di gestire efficientemente più host VMware ESXi e macchine virtuali. Per mantenere la salute e le prestazioni del server vCenter e degli host ESXi ad esso collegati, vengono generati diversi registri, ognuno con uno scopo specifico. Di seguito viene fornita l’esposizione di alcuni registri essenziali di VMware vCenter.
vpxd.log
Posizione: /var/log/vmware/vpxd/vpxd.log
Questo file di log registra eventi relativi al servizio vCenter Server e la posizione del log vpxd è la directory /var/log/vmware/vpxd/ su un server vCenter. Il log vpxd contiene informazioni sul lancio del servizio vCenter, eventi di connessione da client vSphere, autenticazione utente, licensing e varie attività amministrative eseguite tramite il client vSphere o l’API.
/var/log/vmware/vpxd/vpxd-alert.log contiene informazioni non critiche sul processo vpxd.
fdm.log
Posizione: /var/log/fdm.log
Il log Fault Domain Manager (FDM) è fondamentale per la risoluzione dei problemi di vSphere High Availability (HA). Contiene informazioni sui fallimenti del host e delle VM, sulla configurazione HA, sui dati del heartbeat e sull’elezione del host master in un cluster HA.
vmsyslogd.log
Posizione: /var/log/vmware/vmsyslogd.log
Questo file di log è relativo al servizio syslog in esecuzione sull’Appliance vCenter Server. Registra i messaggi inoltrati al syslog del server vCenter da vari componenti e servizi.
vmware-vpostgres.log
Posizione: /var/log/vmware/vpostgres/postgresql-xx.log
In questo log sono contenute informazioni dettagliate relative al database PostgreSQL, comprese le informazioni sullo stato della replica, i log delle transazioni e altri eventi del database.
catalina.log
Posizione: /var/log/vmware/vpostgres/catalina.out
Questo file di log appartiene al servizio database VMware Postgres. Contiene messaggi relativi alle operazioni del database, comprese le operazioni di avvio e arresto, le query e gli errori.
sms.log
Posizione: /var/log/vmware/sms/sms.log
Il log del Servizio di Monitoraggio del Storage (SMS) registra eventi relativi al monitoraggio e alla gestione del storage, comprese le datastore, i dispositivi di storage e gli allarmi di storage.
invsvc.log
Posizione: /var/log/vmware/invsvc/invsvc.log
Il log del Servizio di Inventario contiene informazioni su operazioni di inventario del vCenter Server, come aggiornamenti degli oggetti, raccolta dei dati e sincronizzazione.
applmgmt.log
Posizione: /var/log/vmware/applmgmt/applmgmt.log
Questo file di log è relativo al servizio di gestione dell’appliance e fornisce informazioni sulla distribuzione e la configurazione dell’Appliance vCenter Server.
vmware-sts-idmd.log
Posizione: /var/log/vmware/sso/vmware-sts-idmd.log
Questo log registra eventi relativi al servizio VMware Single Sign-On (SSO), alla gestione dell’identità e ai processi di autenticazione.
stats.log
Posizione: /var/log/vmware/perfcharts/stats.log
Il file stats.log è associato al servizio Grafici delle prestazioni del server vCenter (noto anche come Grafici delle prestazioni vCenter). Contiene dati statistici e informazioni relative alle prestazioni raccolte dal servizio Grafici delle prestazioni.
Il servizio Grafici delle prestazioni fornisce rappresentazioni grafiche delle metriche delle prestazioni per le macchine virtuali e gli host. Il file stats.log registra dati che possono essere utilizzati per generare grafici e grafici delle prestazioni per il monitoraggio e l’analisi delle prestazioni dei componenti dell’infrastruttura virtuale.
NOTA: Il servizio Grafici delle prestazioni è essenziale per il monitoraggio delle prestazioni in tempo reale delle VM e degli host, e il file stats.log svolge un ruolo nello storage dei dati sottostanti.
eam.log
Posizione: /var/log/vmware/eam/eam.log
Il file eam.log appartiene al servizio Gestore agenti ESX (EAM) nel server vCenter. EAM è responsabile della gestione degli agenti vSphere, inclusi i Bundles di installazione vSphere (VIB) e gli agenti di estensione.
Il file eam.log registra eventi e attività relativi al ciclo di vita della gestione degli agenti vSphere. Memorizza informazioni su distribuzioni di agenti, aggiornamenti e convalidhe. Se stai cercando la posizione del registro di VMware Lifecycle Manager, controlla /var/log/vmware/eam/eam.log
NOTA: Il Gestore agenti ESX garantisce che le versioni corrette di VIB siano installate sugli host ESXi e che gli agenti di estensione siano registrati correttamente. Il file eam.log è strumentale nel tracciare queste operazioni e nel rilevare eventuali problemi relativi agli agenti vSphere.
Dove vengono memorizzati i log
Scopriamo in quale partizione e in quali directory sono memorizzati i log di VMware. In un’installazione predefinita di VMware ESXi, i log sono memorizzati in diverse directory su partizioni diverse. La posizione tipica dei log di VMware, come i log di VMkernel su un host ESXi, è:
/scratch/log/
I symlink si trovano in /var/log/ ma i file di log sono memorizzati su una partizione scratch di ESXi (vedi gli screenshot sopra e sotto). Abbiamo trattato della partizione scratch e dello storage temporaneo quando abbiamo spiegato come installare ESXi su una chiavetta USB.
Ad esempio, è possibile accedere ai log di gestione host in /var/log/hostd.log utilizzando il symlink (collegamento simbolico), ma il file hostd.log si trova nella directory log nella partizione /scratch.
I log delle macchine virtuali sono di solito situati in un datastore VM nella directory VM e non vengono eliminati dopo il riavvio del server ESXi, ad esempio: /vmfs/volumes/nome_datastore/nome_vm/vmware.log
Quando un file di log VM (vmware.log) è pieno, viene rinominato in vmware-1.log, vmware-2.log, ecc.
È possibile abilitare o disabilitare i log VM andando su Impostazioni VM > Opzioni VM in VMware vSphere Client ed espandendo le Opzioni avanzate, che includono la casella di controllo Abilita logging.
La partizione /scratch è utilizzata per memorizzare i log e altri file temporanei su un host ESXi. In alcune installazioni, la partizione /scratch è configurata come un sistema di file in memoria (tmpfs). Se è necessario conservare i log tra riavvii, è possibile configurare una posizione di archiviazione persistente per i log utilizzando il comando “esxcli system syslog” e altri comandi spiegati di seguito.
Tieni presente che le posizioni dei log di ESXi potrebbero variare a seconda della versione e della configurazione di ESXi. Inoltre, i log potrebbero essere memorizzati su un dispositivo di archiviazione persistente se configurati esplicitamente dall’amministratore di sistema.
Posizione dei log di vCenter
La maggior parte dei log di vCenter Server si trova nella directory /var/log/vmware/. VMware vCenter Server non memorizza i log su una partizione temporanea (non persistente) come ESXi. Invece, i log di vCenter Server sono tipicamente memorizzati sul disco locale del sistema operativo o su un volume di archiviazione montato, il che significa che sono persistenti tra riavvii. VMware vCenter Server Appliance (VCSA) si basa su Photon Linux, come ricordiamo, e VCSA è il nuovo approccio di distribuzione di vCenter utilizzato nelle ultime versioni di vSphere.
La posizione dei log di vCenter per l’installazione basata su Linux (VCSA) è:
/var/log/vmware/vpx/
La posizione esatta dei log di vCenter dipende dal sistema operativo su cui è installato il server vCenter. Il server vCenter basato su Windows, utilizzato fino a VMware vSphere 6.7 e ormai deprecato, utilizzava la seguente posizione predefinita per memorizzare i log di VMware vCenter:
C:\ProgramData\VMware\vCenterServer\logs\
Nota che le posizioni dei log di vCenter possono variare a seconda della versione e della configurazione del server vCenter. È sempre possibile fare riferimento alla documentazione ufficiale di VMware o alla documentazione della versione specifica del server vCenter per trovare le posizioni esatte dei log.
Poiché il server vCenter è una piattaforma di gestione centralizzata, si basa su log persistenti per mantenere informazioni storiche e facilitare la risoluzione dei problemi e l’analisi delle prestazioni nel tempo. A differenza di ESXi, che utilizza un sistema di file in memoria per i log temporanei (per alcune configurazioni predefinite), i log del server vCenter sono progettati per essere persistenti e vengono memorizzati su un dispositivo di archiviazione permanente. Per quanto riguarda l’archiviazione non persistente dei log di ESXi, è possibile modificare la posizione di archiviazione dei log su ESXi.
Come accedere ai log di VMware
Abbiamo esplorato cosa sono i log di VMware e dove sono memorizzati. Ora dobbiamo scoprire come controllare i log di VMware ESXi per eseguire ulteriori analisi. Puoi accedere ai log di VMware ESXi in modi diversi.
Client VMware Host
Segui i seguenti passaggi per visualizzare i log di ESXi nel client VMware Host:
- Accedi al client VMware Host nel tuo browser web.
- Fai clic su Host > Monitor nel riquadro Navigator e premi la scheda Logs.
- Seleziona uno dei log di ESXi per visualizzare le informazioni registrate. Puoi cercare la stringa necessaria utilizzando un campo di ricerca.
DCUI (ESXi)
Puoi utilizzare l’interfaccia utente della console diretta su ESXi per visualizzare i log. Hai bisogno di accesso fisico a un host ESXi, comprensivo di monitor e tastiera, oppure puoi utilizzare uno switch KVM e tecnologie simili.
- Accedi all’interfaccia utente della console diretta di ESXi (DCUI).
- Seleziona l’opzione Visualizza Log di Sistema nel menu Personalizzazione Sistema.
- Premi un tasto da 1 a 6 per visualizzare il log VMware appropriato sul tuo server ESXi. La spiegazione per ciascuna cifra è visualizzata nel riquadro destro dell’interfaccia.
- Dopo aver inserito la cifra necessaria, visualizzerai una pagina a schermo intero con i log. Puoi digitare / e inserire una stringa di ricerca per visualizzare solo le righe con le informazioni necessarie. Premi q per uscire da questa modalità e tornare al menu DCUI precedente.
Browser Web
Usa un link in un browser web per aprire una pagina con i link per scaricare i file di log. È necessario inserire le credenziali con permessi amministrativi per l’host ESXi per accedere a questa pagina.
https://<Indirizzo_IP_host_ESXi>/host
Linea di comando ESXi
La linea di comando ESXi, simile a DCUI, può essere utilizzata per visualizzare i log di ESXi se la connessione di rete non è disponibile e non è possibile utilizzare metodi per visualizzare i log in remoto tramite la rete.
- Assicurati che la Shell ESXi sia abilitata in DCUI (Opzioni di risoluzione dei problemi > Abilita Shell ESXi).
- Premi Alt+F1 per aprire la shell ESXi.
- Usa i comandi per visualizzare i log di ESXi.
SSH
L’accesso SSH remoto è uno dei metodi più comodi e potenti per visualizzare ed analizzare i log di VMware.
- Abilita SSH in DCUI (Opzioni di risoluzione dei problemi > Abilita SSH) o nel client VMware Host per consentire l’accesso SSH remoto a un host ESXi.
- Connetti all’host ESXi usando un client SSH (ad esempio, PuTTY se ci si connette da Windows).
- Usa i comandi per visualizzare i log di ESXi e per l’analisi dei log di VMware.
Analisi dei Log di VMware con Esempi
Ora conosciamo i nomi e le posizioni dei log di VMware così come i metodi per accedere ai log che sono preziosi per risolvere vari problemi in un ambiente virtualizzato. È ora di esplorare alcuni esempi pratici su come utilizzare i log di VMware per la risoluzione dei problemi.
Identificazione dei problemi di connettività dell’host ESXi
Problema: Le macchine virtuali su un host ESXi stanno riscontrando problemi intermittenti di connettività di rete.
Log da controllare:
- /var/log/vmkernel.log
- /var/log/vobd.log
- /var/log/hostd.log
Passaggi per la risoluzione dei problemi. Controllare i log VMkernel per messaggi correlati alla rete e cercare errori o pacchetti persi. Inoltre, controllare i log hostd per eventuali problemi di servizio di gestione dell’host. Il vobd.log può fornire informazioni su problemi legati allo storage che potrebbero influenzare la rete VM.
Errore nella creazione dello snapshot della VM
Problema: Il tentativo di creare uno snapshot di una macchina virtuale fallisce.
Log da controllare:
- /vmfs/volumes/datastore_name/vm_name/vmware.log
- /var/log/vmkernel.log
Passaggi per la risoluzione dei problemi. Esaminare il vmware.log della specifica macchina virtuale per errori o avvisi relativi allo snapshot. Contemporaneamente, controllare i log VMkernel per problemi legati allo storage che potrebbero impedire l’operazione di snapshot.
Decadimento delle prestazioni della VM
Problema: Una macchina virtuale sta riscontrando problemi di prestazioni, come un utilizzo elevato della CPU o della memoria.
Registri da controllare:
- /vmfs/volumes/nome_datastore/nome_vm/vmware.log
- /var/log/vmkernel.log
Passaggi di risoluzione dei problemi. Analizzare il vmware.log della VM interessata per individuare eventuali errori specifici dell’applicazione o picchi di utilizzo delle risorse. Contemporaneamente, controllare i log del kernel della VM per messaggi correlati alle prestazioni e assicurarsi che l’host ESXi disponga di risorse adeguate disponibili.
Mancato avvio del servizio vCenter
Problema: Il servizio del server vCenter non riesce ad avviarsi.
Registri da controllare:
- /var/log/vmware/vpxd/vpxd.log sul server vCenter
- /var/log/vpxa.log su un host ESXi
Passaggi di risoluzione dei problemi. Esaminare il vpxd.log per individuare errori o eccezioni durante l’avvio del server vCenter. Inoltre, controllare il vpxa.log sugli host ESXi gestiti per garantire una corretta comunicazione tra vCenter e gli host.
Problema di failover del cluster di disponibilità elevata (HA) di VMware
Problema: Le macchine virtuali non riescono a riavviarsi su altri host in un cluster HA dopo un guasto dell’host ESXi.
Registri da controllare: /var/log/fdm.log
Passaggi di risoluzione dei problemi. Analizzare il fdm.log sugli host interessati per identificare eventuali errori o problemi con il cluster HA. Cercare messaggi di battito cardiaco, il processo di elezione dell’host master e possibili motivi per i fallimenti del failover della VM.
Fallimento di vMotion
Problema: Il vMotion di VMware non riesce durante il tentativo di migrazione di una VM tra host.
Registri da controllare:
- /var/log/vmkernel.log
- /var/log/vobd.log
Passaggi di risoluzione dei problemi. Ispezionare il vmkernel.log per messaggi relativi a vMotion e eventuali problemi di connettività di rete. Inoltre, controllare il vobd.log per eventuali problemi relativi allo storage che potrebbero influenzare il vMotion.
Problemi di installazione di VMware Tools
Problema: L’installazione di VMware Tools non riesce su una macchina virtuale.
Registri da controllare: /vmfs/volumes/datastore_name/vm_name/vmware.log
Passaggi di risoluzione dei problemi. Esaminare il vmware.log all’interno della VM per errori relativi a VMware Tools o messaggi di installazione.
Quando si risolvono i problemi con i log di VMware, è essenziale correlare gli eventi attraverso diversi log per ottenere una comprensione completa del problema. Inoltre, gli strumenti di analisi dei log, come VMware Aria Operations for Logs (precedentemente noto come vRealize Log Insight), possono aiutare a razionalizzare il processo di revisione dei log e consentire una risoluzione più efficiente dei problemi di VMware in ambienti complessi.
Risoluzione dei problemi relativi allo storage
È possibile utilizzare i log di VMware per identificare problemi con unità disco rigido o unità a stato solido, ad esempio, se ci sono blocchi danneggiati su un HDD. Per identificare problemi con le unità disco rigido (HDD) o a stato solido (SSD) in un ambiente VMware, è possibile utilizzare vari log di VMware per tracciare e analizzare eventi ed errori correlati allo storage.
- Revisione dei log del VMkernel (/var/log/vmkernel.log):
I log del VMkernel forniscono informazioni di sistema a basso livello, inclusi eventi correlati allo storage. Cercare messaggi che indicano errori di I/O del disco o codici di senso SCSI relativi a problemi del disco.
Esempio di errore: “Errori di I/O del dispositivo“, “Errore del supporto rilevato” o “Errore non correggibile nei dati“
- Controlla i log specifici dello storage (/var/log/vobd.log):
Il vobd.log contiene messaggi relativi allo storage, inclusi gli errori riscontrati dal sottosistema di storage.
Esempio di errore: “Errore di storage: dispositivo ‘naa.xxxxxxxxxxxxxx’… Senso: errore di lettura non recuperato“
- Esamina i log specifici della macchina virtuale (/vmfs/volumes/datastore_name/vm_name/vmware.log):
I log specifici della macchina virtuale possono rivelare errori di I/O del disco riscontrati da una specifica VM.
Esempio di errore: “Errore I/O del disco riscontrato su uno o più dischi virtuali“, “Rilevato errore del disco” o “Stack di errore: impossibile leggere la tabella delle partizioni“
Consigli: Cosa utilizzare oltre ai log di VMware
Ci sono raccomandazioni su cosa utilizzare insieme ai log di VMware per una diagnosi e risoluzione dei problemi più dettagliata e completa per rilevare tempestivamente problemi di storage.
- Monitorare gli allarmi e gli eventi di vCenter. Stai attento agli allarmi e agli eventi del server vCenter relativi allo storage. Gli allarmi scatenati da problemi di storage possono fornire indicazioni sui potenziali problemi del disco.
- Utilizzare i Controlli di Salute VMware. VMware fornisce diversi controlli di salute che possono essere eseguiti attraverso il client vSphere. Questi controlli possono individuare problemi legati allo storage e offrire raccomandazioni.
- Utilizzare Strumenti di Monitoraggio di Terze Parti. Implementare strumenti speciali di monitoraggio IT e analisi dei log per centralizzare e analizzare i dati dei log provenienti da più host e VM. Questi strumenti possono aiutare a individuare problemi legati al disco in tutta l’infrastruttura virtuale.
- Quando si identificano blocchi danneggiati sui dischi rigidi, è essenziale prestare attenzione a vari messaggi di errore e pattern, specialmente quelli che indicano errori di lettura/scrittura o errori sui supporti. I blocchi danneggiati potrebbero portare a corruzione dei dati o degradazione delle prestazioni e una rilevazione precoce può prevenire problemi più gravi. Se i dati sui dispositivi di disco falliti vengono persi, è essenziale ripristinare i dati da un backup VMware su dischi sani.
Problemi di Cluster Utilizzare i log di VMware ESXi e i log di vCenter può essere fondamentale nell’identificare problemi legati al cluster nel tuo ambiente virtualizzato. I problemi di cluster possono manifestarsi come problemi con le prestazioni delle VM , failover di HA, fallimenti di vMotion o altre operazioni correlate al cluster.
L’utilizzo dei log di VMware ESXi e di vCenter può essere fondamentale nell’identificare problemi legati al cluster nel tuo ambiente virtualizzato. I problemi del cluster possono manifestarsi come problemi con prestazioni della VM, failover HA, fallimenti di vMotion o altre operazioni legate al cluster.
- Esamina i log del server vCenter:
- Accedi ai log di vCenter, come vpxd.log e vpxa.log, situati in /var/log/vmware/vpxd/vpxd.log e /var/log/vpxa.log rispettivamente.
- Cerca messaggi di errore o di avviso relativi alle operazioni del cluster, alla gestione delle risorse e alla comunicazione tra vCenter ed host ESXi.
- Fai attenzione agli eventi durante la creazione del cluster, ai cambiamenti di configurazione e agli problemi con i servizi del cluster.
- Controllare i log dell’host ESXi e accedere ai log dell’host ESXi, compresi vmkernel.log, hostd.log e fdm.log:
- vmkernel.log: Esaminare per verificare la presenza di eventi correlati al cluster, come tentativi di vMotion, problemi di heartbeat HA o errori durante la condivisione delle risorse.
- hostd.log: Cercare messaggi correlati al cluster relativi a compiti ed eventi gestiti dal servizio di gestione dell’host.
- fdm.log: Esaminare per verificare la presenza di eventi correlati ad HA, compresi fallimenti dell’host, riavviamenti delle VM e eventi di elezione del master.
- Esaminare i log delle macchine virtuali:
- Accedere ai log delle VM, come ad esempio vmware.log, per identificare problemi specifici delle singole VM nel cluster.
- I log delle VM possono fornire informazioni sulla performance delle VM, vincoli delle risorse o fallimenti durante le operazioni di vMotion.
- Monitorare gli allarmi e gli eventi specifici del cluster:
- Utilizzare vCenter per creare allarmi ed eventi specifici per le prestazioni e la salute del cluster.
- Configurare gli allarmi per problemi come l’uso eccessivo delle risorse, la partizione del cluster o i fallimenti delle VM.
- Controllare la scheda Eventi di vCenter per gli eventi correlati al cluster, come le migrazioni delle VM, le riconfigurazioni del cluster o gli eventi di HA.
Combinando le informazioni dagli log di ESXi, dagli log di vCenter, dai metriche delle prestazioni e dagli eventi specifici del cluster, è possibile ottenere una comprensione completa della salute del cluster e identificare i problemi che influiscono sulle prestazioni delle macchine virtuali, sull’alta disponibilità e sulla stabilità complessiva del cluster. L’analisi regolare dei log e il monitoraggio proattivo possono aiutare a prevenire problemi al cluster o risolverli rapidamente quando si verificano.
Risoluzione dei problemi di rete
La risoluzione dei problemi di rete in VMware vSphere comporta l’identificazione e la risoluzione di problemi relativi alla rete che influiscono sui macchine virtuali e comunicazione tra gli host ESXi. I log di VMware ESXi e vCenter possono essere molto utili per individuare tali problemi. Di seguito sono riportati alcuni esempi di risoluzione dei problemi di rete utilizzando i log ESXi e vCenter, insieme a comandi per estrarre informazioni rilevanti.
Identificazione dei problemi di connettività della rete VM
Problema: Una macchina virtuale non è in grado di accedere alla rete.
- A command to check VMkernel logs (on an ESXi host):
cat /var/log/vmkernel.log | grep -E 'Failed to send packet|dropped|no network'
Questo comando filtra i log VMkernel per messaggi relativi a fallimenti di pacchetti, pacchetti persi o indisponibilità della rete.
- A command to check VM network configurations (on an ESXi host):
esxcfg-vmknic -l
Questo comando elenca le interfacce di rete VMkernel configurate e gli indirizzi IP sull’host ESXi. Verifica se la rete della VM è configurata correttamente.
Risoluzione dei problemi di vMotion
Problema: vMotion non riesce tra due host ESXi.
- A command to check VMkernel logs (on both source and destination ESXi hosts):
cat /var/log/vmkernel.log | grep -E 'Migration to host|vMotion'
Questo comando aiuta a trovare messaggi relativi a vMotion su entrambi gli host ESXi di origine e destinazione.
- A command to check vCenter events (on vCenter Server):
vim-cmd vmsvc/get.eventlog <vmid> | grep 'Migrate'
Sostituire <vmid> con l’ID della macchina virtuale (VMID) della VM interessata. Questa comando recupera il log degli eventi per la VM e cerca gli eventi correlati a vMotion.
Identificazione dei colli di bottiglia delle prestazioni di rete
Problema: Le macchine virtuali riscontrano una riduzione delle prestazioni di rete.
- A command to check ESXTOP statistics (on an ESXi host):
esxtop
All’interno di esxtop, premere n per passare alla visualizzazione di rete. Monitorare metriche come Throughput di rete (MBTx/rx), Pacchetti di rete/s e Dropped di rete/s per identificare potenziali colli di bottiglia. Questi e i prossimi comandi vengono utilizzati per visualizzare i dati non da un file di log VMware ma per mostrare le informazioni aggiornate in tempo reale per il troubleshooting di VMware. Puoi anche vedere l’uptime di ESXi utilizzando il comando esxtop.
Risoluzione dei problemi del vSphere Distributed Switch (VDS)
Problema: Problemi di connettività con le VM su un vSphere Distributed Switch.
- A command to check VDS health (on vCenter Server):
net-dvs -l
Questo comando elenca tutti i distributed virtual switches (VDS) e il loro stato.
- A command to check VDS port status (on vCenter Server):
net-dvs -p <Nome VDS>
Sostituire <Nome VDS> con il nome del VDS. Questo comando mostra lo stato di tutti i porti sul switch virtuale distribuito specificato.
Ricorda, la risoluzione dei problemi di rete spesso richiede l’analisi dei log e dei dati sulle prestazioni da più fonti, tra cui i log di VMkernel, i log di vCenter, le metriche delle prestazioni e le configurazioni di rete. Gli esempi forniti sopra servono come punti di partenza per raccogliere informazioni rilevanti per i problemi di rete e potresti dover adattare i comandi in base al problema specifico che incontri nell’ambiente vSphere.
Espressioni Regolari per l’Analisi dei Log VMware
Come puoi vedere negli esempi sopra, accedere allo shell ESXi tramite SSH e utilizzare la riga di comando è un metodo potente per visualizzare i log VMware e per l’analisi dei log VMware. Puoi utilizzare gli strumenti da riga di comando nativi come strumenti di analisi dei log VMware ESXi. Questi strumenti da riga di comando sono familiari agli utenti Linux:
- cat è uno strumento da riga di comando che concatena e visualizza il contenuto di uno o più file di testo sul terminale. Viene comunemente utilizzato per visualizzare l’intero contenuto di un file in una volta sola. Tuttavia, per i file di grandi dimensioni, l’uso di cat potrebbe risultare in una quantità eccessiva di output che scorre rapidamente fuori dallo schermo, rendendolo meno pratico per la lettura di tali file.
- less è uno strumento di paging da riga di comando che ti permette di visualizzare e scorrere attraverso il contenuto di un file di testo. Visualizza uno schermo di testo alla volta e fornisce opzioni di navigazione per spostarti avanti e indietro nel file. A differenza di cat, che scarica l’intero contenuto del file sul terminale, less è utile per leggere file di grandi dimensioni in modo più efficiente.
- grep sta per “Global Regular Expression Print”. Si tratta di uno strumento da riga di comando potente utilizzato per cercare modelli di testo (espressioni regolari) in uno o più file. grep può filtrare e visualizzare le linee contenenti il modello specificato. È comunemente utilizzato per le ricerche di testo, l’analisi dei log e l’estrazione di informazioni specifiche dai file.
- tail è un’utility da riga di comando che visualizza le ultime poche linee di un file di testo. Per impostazione predefinita, tail mostra le ultime dieci linee del file. È particolarmente utile per monitorare i file di log in tempo reale, poiché può visualizzare nuovi record man mano che vengono aggiunti al log. Il comando tail viene spesso utilizzato con l’opzione -f per monitorare continuamente un file e vedere gli aggiornamenti in tempo reale.
- head è un’utility da riga di comando che visualizza le prime N linee di un file di testo. Per impostazione predefinita, lo strumento head mostra le prime 10 linee del file. È utile per visualizzare rapidamente l’inizio di un file o estrarre informazioni iniziali. Simile a tail, è possibile specificare il numero di linee da visualizzare utilizzando l’opzione -n.
È possibile utilizzare questi strumenti da riga di comando insieme tra loro e con le espressioni regolari per la massima efficienza dell’analisi dei log VMware. Analizzare i file di log utilizzando espressioni regolari (regex) nella riga di comando di ESXi può essere un modo potente per estrarre informazioni specifiche e ottenere informazioni su problemi o modelli. Di seguito puoi vedere alcuni esempi pratici reali di come utilizzare le espressioni regolari per l’analisi dei log in ESXi.
Filtrare i log per eventi specifici
Supponiamo di voler trovare tutte le occorrenze di un evento specifico, come “Errore di I/O disco“, nel file vmkernel.log.
cat /var/log/vmkernel.log | grep -E 'Errore di I/O disco'
Questo comando mostrerà tutte le righe contenenti la frase “Errore di I/O disco” nel vmkernel.log.
Estrarre indirizzi IP dai log
Per estrarre gli indirizzi IP dai log nel file hostd.log, è possibile utilizzare uno schema regex che corrisponde agli indirizzi IPv4.
cat /var/log/hostd.log | grep -E -o '([0-9]{1,3}\.){3}[0-9]{1,3}'
Questo comando mostrerà tutti gli indirizzi IPv4 trovati nel hostd.log.
Trovare schemi con quantificatori
Supponiamo di voler trovare tutte le righe nel file vmware.log che contengono qualsiasi numero di cifre consecutive.
cat /vmfs/volumes/datastore_name/vm_name/vmware.log | grep -E '[0-9]+'
Questo comando mostrerà tutte le righe contenenti una o più cifre nel vmware.log.
Cercare più schemi
Per trovare righe nel file vpxd.log contenenti sia “errore” o “warning“, è possibile utilizzare l’operatore OR | nello schema regex.
cat /var/log/vmware/vpxd/vpxd.log | grep -E 'errore|warning'
Questo comando mostrerà tutte le righe contenenti sia “errore” o “warning” nel vpxd.log.
Corrispondenza con wildcards
Supponiamo di voler trovare tutte le righe nel file vobd.log che contengono la parola “failed” indipendentemente dalla maiuscola o minuscola.
cat /var/log/vobd.log | grep -i 'failed'
Questa command interpreterà mostrare tutte le righe contenenti “failed“, “FAILED“, “Failed“, ecc., nel vobd.log.
Utilizzo di gruppi di cattura
Per estrarre informazioni di data e ora dalle righe nel file sms.log, è possibile utilizzare gruppi di cattura nel modello regex.
cat /var/log/vmware/sms/sms.log | grep -Eo '([0-9]{4}-[0-9]{2}-[0-9]{2}) ([0-9]{2}:[0-9]{2}:[0-9]{2})'
Questa command interpreterà mostrare tutte le occorrenze di data e ora nel sms.log.
NOTA: È possibile modificare il percorso del log necessario per il caso d’uso specifico.
Questi esempi dimostrano come utilizzare espressioni regolari in combinazione con il comando grep per eseguire l’analisi dei log nell’interfaccia della riga di comando di ESXi. Le espressioni regolari forniscono potenti capacità di matching dei modelli, consentendo di estrarre informazioni specifiche, filtrare i log e trovare modelli in modo efficiente. Tieni presente che i modelli regex effettivi possono variare a seconda del contenuto del file di log e delle informazioni che si desidera estrarre o cercare. Puoi utilizzare questi esempi e adattare i comandi per soddisfare le tue esigenze specifiche per l’analisi dei log di VMware.
Come esportare i log di VMware e scaricare il bundle di supporto
Potrebbe accadere che l’analisi dei log VMware non aiuti a risolvere i problemi che si sono verificati su un host ESXi o vCenter. In questo caso, è possibile esportare i log o scaricare un pacchetto di supporto e inviare queste informazioni al supporto VMware. I specialisti del supporto VMware possono aiutare a risolvere i problemi con l’ambiente VMware se si dispone di una versione licenziata di VMware vSphere.
VMware Host Client
Per generare un pacchetto di supporto ed esportare i log VMware, eseguire i seguenti passaggi:
- Fare clic su Monitoraggio nel riquadro Navigatore.
- Selezionare la scheda Log.
- Fare clic su Genera pacchetto di supporto.
- Salvare l’archivio del pacchetto scaricato nel proprio browser web.
VMware vSphere Client
Per esportare i log del sistema VMware in vSphere Client, procedere come segue:
- Selezionare la vista Host e Cluster e selezionare l’host ESXi dei cui log si desidera esportare (nella parte sinistra, che è il riquadro di navigazione).
- Fare clic con il pulsante destro del mouse sul host ESXi e fare clic su Esporta log di sistema nel menu che si apre.
- Selezionare i log ESXi che si desidera esportare e fare clic su Esporta log.
Per caricare il bundle su VMware support in vSphere Client, procedere come segue:
- Fare clic sull’icona Menu nell’angolo in alto a sinistra.
- Andare a Amministrazione > Supporto > Carica file nella richiesta di servizio e premere il pulsante Carica file nella richiesta di servizio.
Link in un browser web
Utilizzare il link allo script cgi sul host ESXi:
http://<Indirizzo_IP_ESXi>/cgi-bin/vm-support.cgi
Scaricare e salvare il bundle con i log ESXi esportati (un file .tgz).
Generare un bundle nella shell ESXi (linea di comando)
È possibile eseguire il comando per generare un bundle di supporto contenente i log ESXi nella shell ESXi con il comando:
/usr/bin/vm-support
Conclusione
Quando si risolvono problemi con VMware vSphere, compresi ESXi e vCenter, l’analisi dei log di VMware può aiutare gli amministratori a identificare la causa principale dei problemi e adottare le azioni correttive appropriate. Attraverso l’analisi di questi log, gli amministratori possono individuare e affrontare problemi come colli di bottiglia delle prestazioni, problemi di connettività, errori di configurazione e potenziali preoccupazioni per la sicurezza. La revisione regolare dei log è essenziale per la gestione proattiva e il mantenimento della stabilità e affidabilità di VMware vCenter e dell’ambiente virtualizzato.
Il monitoraggio regolare dell’infrastruttura VMware e il backup delle VM consentono di prevenire tempestivamente problemi e evitare la perdita di dati.
Source:
https://www.nakivo.com/blog/vmware-logs-analysis-for-troubleshooting/