Utilizzare VOMA (vSphere On-disk Metadata Analyzer) per verificare la coerenza dei metadati, nonché per identificare e correggere gli eventi imprevisti relativi al danneggiamento dei metadati nei datastore VMFS o nei volumi logici che supportano i datastore VMFS.

Problema

È possibile verificare la coerenza dei metadati quando si verificano problemi con un datastore VMFS o una risorsa Flash virtuale. Ad esempio, eseguire una verifica dei metadati se si verifica una delle seguenti situazioni:

  • Si verificano interruzioni dello storage.
  • Dopo aver ricreato RAID o aver eseguito la sostituzione del disco.
  • Nel file vmkernel.log sono presenti errori relativi ai metadati simili al seguente:
    cpu11:268057)WARNING: HBX: 599: Volume 50fd60a3-3aae1ae2-3347-0017a4770402 ("<Datastore_name>") may be damaged on disk. Corrupt heartbeat detected at offset 3305472: [HB state 0 offset 6052837899185946624 gen 15439450 stampUS 5 $
  • Non è possibile accedere ai file in un VMFS.
  • Viene visualizzato il messaggio di danneggiamento di un datastore nelle schede eventi di vCenter Server.

Soluzione

Per verificare la coerenza dei metadati, eseguire VOMA dalla CLI di un host ESXi. VOMA può essere utilizzato per verificare e correggere i problemi di incoerenza minori per un datastore VMFS o per volumi logici che supportano il datastore VMFS.
VOMA può verificare e correggere i seguenti elementi.
Tabella 1. Funzioni VOMA

Funzioni VOMA

Descrizione

Verifica e correzione dei metadati

Gli esempi di verifica e correzione dei metadati includono, ma non solo, i seguenti:

  • Convalida dell'intestazione del volume VMFS per la coerenza dei metadati di base.

  • Verifica della coerenza dei file di risorse VMFS (file di sistema).

  • Verifica del nome del percorso e della connettività di tutti i file.

Verifica e correzione dei metadati di affinità

Per abilitare la verifica di affinità per VMFS6, utilizzare l'opzione -a|--affinityChk.

Gli esempi di verifica e correzione dei metadati di affinità includono i seguenti:

  • Contrassegni di affinità nei tipi di risorse e in FS3_ResFileMetadata.

  • Convalida dei contrassegni di affinità nei metadati SFB RC (FS3_ResourceClusterMDVMFS6).

  • Convalida di tutte le voci nelle voci affinityInfo in rcMeta di RC, inclusa la chiave di overflow, per assicurarsi che non siano presenti voci non valide. Verifica delle voci mancanti.

Convalida directory

VOMA è in grado di rilevare e correggere i seguenti errori:

  • Danneggiamento del blocco dell'hash della directory.

  • Allocazione della mappatura danneggiata.

  • Danneggiamenti dei blocchi del collegamento.

  • Danneggiamenti del blocco delle voci della directory.

In base alla natura dei danneggiamenti, VOMA può correggere solo le voci danneggiate o ricreare completamente il blocco hash, i blocchi della mappa di allocazione e i blocchi dei link.

File persi e trovati

Durante la verifica di un file system, VOMA è in grado di trovare file a cui non si fa riferimento in alcuna posizione nel file system. Questi file orfani sono validi e completi, ma non hanno un nome o una voce di directory nel sistema.

Se VOMA incontra file orfani durante la scansione, crea una directory denominata lost+found (persi+trovati) nella radice del volume per archiviare i file orfani. I nomi dei file utilizzano il formato Filesequence-number.

Le opzioni del comando che lo strumento VOMA segue includono le seguenti.

Tabella 2. Opzioni del comando VOMA

Opzione comando

Descrizione

-m|--module

I moduli da eseguire includono i seguenti:

vmfs

Se non si specifica il nome del modulo, questa opzione viene utilizzata per impostazione predefinita.

È possibile verificare i file system VMFS e i file system che supportano le risorse Flash virtuali. Se si specifica questo modulo, vengono eseguite verifiche minime anche per LVM.

lvm

Verificare i volumi logici che supportano gli archivi dati VMFS.

ptbl

Verificare e convalidare le partizioni VMFS, ad esempio MBR o GPT. Se non esiste alcuna partizione, determinare se le partizioni devono esistere.

-f|--func

Le funzioni da eseguire includono:

query

Elencare le funzioni supportate dal modulo.

check

Verificare la presenza di errori.

fix

Verificare e correggere gli errori.

dump

Raccogliere il dump dei metadati.

-a|--affinityChk

Includere il controllo dell'affinità e la correzione per VMFS6.

-d|--device

Indicare il dispositivo o il disco da esaminare. Assicurarsi di fornire il percorso assoluto della partizione del dispositivo che supporta il datastore VMFS. Se il datastore comprende più dispositivi, specificare l'UUID dell'estensione principale.

Ad esempio, voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x.

Se si utilizza il comando -x|--extractDump, immettere più percorsi di dispositivo, con un qualificatore di partizione, separato da una virgola. Il numero di percorsi dei dispositivi inseriti è uguale al numero di dispositivi con spanning.

-b|--blockSize

Indicare le dimensioni del blocco del disco.

-s|--logfile

Specificare il percorso del file di registro per generare risultati.

-x|--extractDump

Estrarre il dump raccolto utilizzando VOMA.

-D|--dumpfile

Indicare il file di dump in cui salvare il dump dei metadati raccolti.

-v|--version

Visualizzare la versione di VOMA.

-h|--help

Visualizzare il messaggio della guida per il comando VOMA.

-Y

Indicare che si esegue VOMA senza utilizzare le tabelle PE per la risoluzione degli indirizzi.

-Z| --file

Indicare che si esegue VOMA nei file del dispositivo estratti.

Esempio

Raccogliere dump dei metadati da un volume di spanning:

voma -m vmfs -f dump -d head_extent -D dump_filename

Estrarre dump raccolto sui dispositivi di un volume di spanning:

voma -x dump_filename -d head_extent,extent_2,extent_3...extent_n

Utilizzo di VOMA per verificare la coerenza dei metadati

L'attività illustra come utilizzare VOMA per verificare la coerenza dei metadati VMFS. VOMA può essere utilizzato per controllare e correggere i problemi di incoerenza minori per un datastore VMFS o una risorsa flash virtuale. Eseguire VOMA dalla CLI di un host ESXi.

Prerequisiti

Disattivare tutte le macchine virtuali in esecuzione o migrarle in un datastore diverso.

Procedura

  1. Ottenere il nome e il numero di partizione del dispositivo che supporta il datastore VMFS che si desidera controllare.
    #esxcli storage vmfs extent list
    Le colonne Nome dispositivo e Partizione nell'output identificano il dispositivo. Ad esempio:
    Volume Name  .....  Device Name                             Partition  
    1TB_VMFS6    .....  naa.xxxx                                   3
  2. Controllare gli errori VMFS.

    Specificare il percorso assoluto della partizione del dispositivo che supporta il datastore VMFS e specificare un numero di partizione con il nome del dispositivo. Ad esempio:

    # voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x

    L'output elenca i possibili errori. Ad esempio, l'output seguente indica che l'indirizzo heartbeat non è valido.

    XXXXXXXXXXXXXXXXXXXXXXX
    Phase 2: Checking VMFS heartbeat region
     ON-DISK ERROR: Invalid HB address
    Phase 3: Checking all file descriptors.
    Phase 4: Checking pathname and connectivity.
    Phase 5: Checking resource reference counts.
    
    Total Errors Found:           1