De consistentie van VMFS-metadata controleren met behulp van vSphere On-disk Metadata Analyzer (VOMA)
Summary: De VOMA-tool kan worden gebruikt om een bestandssysteemcontrole van metadata uit te voeren.
Symptoms
- Wanneer er problemen zijn met het openen van bepaalde bestanden op een VMFS-datastore
- Wanneer het niet mogelijk is om bestanden in een VMFS-datastore te wijzigen of te wissen
- Bij een poging om bestanden op een VMFS-datastore te lezen, mislukt dit met een fout
Ongeldig argument
Bij een poging om de partitietabel te wijzigen, mislukt met de fout:
Error: Read-only file system during write on /dev/disks/naa.600601603b503400de93e0a87e9ce211 SetPtableGpt: Unable to commit to disk
In het bestand /var/log/vmkernel zijn vermeldingen te zien die lijken op:
vmkernel: 0:00:20:51.964 cpu3:1085)WARNING: Swap: vm 1086: 2268: Failed to open swap file '/volumes/4730e995-faa64138-6e6f-001a640a8998/mule/mule-560e1410.vswp': Invalid metadata
vmkernel: 0:00:20:51.964 cpu3:1085)WARNING: Swap: vm 1086: 3586: Failed to initialize swap file '/volumes/4730e995-faa64138-6e6f-001a640a8998/mule/mule-560e1410.vswp': Invalid metadata
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 $
Cause
De volgende scenario's zijn van toepassing op het uitvoeren van een metadatacontrole:
- De omgeving ervaart storage-uitval.
- Na het opnieuw opbouwen van een RAID-volume of het vervangen van een schijf
- Er zitten metadatafouten in het vmkernel.log bestand.
- Er is geen toegang tot bestanden op een VMFS-datastore die niet op een andere host aanwezig is.
Resolution
Voorwaarden:
Voordat u VOMA uitvoert, moet u ervoor zorgen dat:
- Schakel alle virtuele machines in de betreffende datastore uit of gemigreerd naar een andere datastore.
- Wanneer u een virtuele machine afsluit die wordt uitgevoerd op bestanden met bepaalde typen beschadigde metadata door de vSphere On-disk Metadata Analyzer, kunnen de virtuele machine en de bijbehorende data permanent onbeschikbaar worden. Daarom is het altijd aan te raden om actuele back-ups te hebben van de virtuele machines in de omgeving.
- Voor VMFS-5/VMFS-6 datastores wordt de datastore ontkoppeld op alle ESXi 7.x/8.x hosts.
- Als VOMA wordt uitgevoerd op een volume met toegang tot een of meer ESXi-hosts, produceert VOMA een bericht dat lijkt op:
voma -m vmfs -d /vmfs/devices/disks/naa.00000000000000000000000000: Checking if device is actively being used by other hosts Found 1 actively heart beating hosts on device '/vmfs/devices/disks/naa.00000000000000000000000000:1' 1): MAC Address xx:xx:xx:xx:xx:xx
- Als VOMA wordt uitgevoerd op een volume met toegang tot een of meer ESXi-hosts, produceert VOMA een bericht dat lijkt op:
Als u de consistentie van metadata wilt controleren, voert u VOMA uit vanaf de CLI van een ESXi-host. VOMA kan worden gebruikt om kleine inconsistentieproblemen te controleren en op te lossen voor een VMFS-datastore of logische volumes die de VMFS-datastore ondersteunen.
VOMA kan de volgende items controleren en repareren.
| VOMA-functies | Beschrijving |
|---|---|
Metadata check and fix |
Voorbeelden van metadatacontrole en -oplossing zijn onder andere:
|
Affinity metadata check and fix |
Als u de affiniteitscontrole voor VMFS6 wilt inschakelen, gebruikt u de -a|--affinityChk .Enkele voorbeelden van het controleren en oplossen van affiniteitsmetadata zijn de volgende:
|
Directory validation |
VOMA kan de volgende fouten detecteren en corrigeren:
|
Lost and found files |
Tijdens een controle van het bestandssysteem kan VOMA bestanden vinden waarnaar nergens in het bestandssysteem wordt verwezen. Deze zwevende bestanden zijn geldig en volledig, maar hebben geen naam of vermelding in de map op het systeem. Als VOMA tijdens het scannen zwevende bestanden tegenkomt, wordt in de hoofdmap van het volume een map met de naam verloren+gevonden gemaakt om de zwevende bestanden op te slaan. De namen van de bestanden hebben de indeling Bestandsvolgnummer. |
De VOMA-tool heeft de volgende opdrachtopties.
| Opdrachtoptie | Beschrijving |
|---|---|
-m|--module |
Beschikbare modules zijn:
|
-f|--func |
Functies die de module ondersteunt:
|
-a|--affinityChk |
Inclusief een affiniteitsgerelateerde check/fix voor VMFS6. |
-d|--device |
Apparaat en schijf die moeten worden gebruikt. Bijvoorbeeld: voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x |
-b|--blockSize |
Geef de blokgrootte van de schijf aan. |
-s|--logfile |
Geef het pad naar het logboekbestand op om de resultaten uit te voeren. |
-x|--extractDump |
Pak de verzamelde stortplaats uit met behulp van VOMA. |
-D|--dumpfile |
Geef het dumpbestand aan om de verzamelde metadatadump op te slaan. |
-v|--version |
Toon de versie van VOMA. |
-h|--help |
Het Help-bericht voor de VOMA-opdracht weergeven. |
-Y |
Geef aan dat VOMA wordt uitgevoerd zonder gebruik te maken van PE-tabellen voor adresresolutie. |
-Z| --file |
Geeft aan dat VOMA wordt uitgevoerd op uitgepakte apparaatbestanden. |
Procedure:
Verkrijg de naam en het partitienummer van het apparaat dat een back-up maakt van de VMFS-datastore die u wilt controleren.
#esxcli storage vmfs extent list
De kolommen Device Name en Partition in de uitvoer identificeren het apparaat. Bijvoorbeeld:
Volume Name ..... Device Name Partition 1TB_VMFS6 ..... naa.xxxx 3
Controleer op VMFS-fouten.
Geef het absolute pad op naar de apparaatpartitie die een back-up is van de VMFS-datastore en geef een partitienummer op met de apparaatnaam. Bijvoorbeeld:
# voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x The output lists possible errors. For example, the following output indicates that the heartbeat address is invalid. 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
Referentiedocumentatie:
vSphere On-disk Metadata Analyzer (VOMA) gebruiken om de consistentie van VMFS-metadata te controleren (broadcom.com)
Metadataconsistentie controleren met VOMA (vmware.com)