VOMA(vSphere On-disk Metadata Analyzer)를 사용하여 파일 시스템 또는 기본 논리적 볼륨에 영향을 주는 메타데이터 손상 문제를 식별하고 수정할 수 있습니다.

문제

VMFS 데이터스토어나 가상 플래시 리소스에서 문제가 발생한 경우에 메타데이터 일관성을 검사할 수 있습니다. 예를 들어 다음과 같은 경우에는 메타데이터 검사를 수행해야 합니다.

  • 스토리지 운영 중단이 발생한 경우.

  • RAID를 재구축하거나 디스크 교체를 수행한 이후.

  • vmkernel.log 파일에 다음과 유사한 메타데이터 오류가 표시되는 경우

    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 $
  • VMFS의 파일에 액세스할 수 없는 경우.

  • vCenter Server의 이벤트 탭에서 데이터스토어에 대한 손상이 보고되는 경우.

해결책

메타데이터 일관성을 확인하려면 ESXi 호스트의 CLI에서 VOMA를 실행합니다. VOMA를 사용하여 VMFS 데이터스토어 또는 VMFS 데이터스토어를 지원하는 논리적 볼륨에 대한 작은 불일치 문제를 확인하고 수정할 수 있습니다.

VOMA는 다음과 같은 항목을 확인하고 수정할 수 있습니다.

표 1. VOMA 기능

VOMA 기능

설명

메타데이터 확인 및 수정

메타데이터 확인 및 수정의 예에는 다음이 포함되며 이에 국한되지 않습니다.

  • 기본적인 메타데이터 일관성을 위해 VMFS 볼륨 검증

  • VMFS 리소스 파일(시스템 파일)의 일관성 확인

  • 모든 파일의 경로 이름 및 연결 상태 확인

선호도 메타데이터 확인 및 수정

VMFS6에 대한 선호도 확인을 사용하려면 -a|--affinityChk 옵션을 사용합니다.

선호도 메타데이터 확인 및 수정의 예에는 다음이 포함됩니다.

  • 리소스 유형 및 FS3_ResFileMetadata의 선호도 태그

  • SFB RC 메타(FS3_ResourceClusterMDVMFS6)의 선호도 플래그 검증

  • 잘못된 항목이 없는지 확인하기 위해 RC의 rcMeta에 있는 affinityInfo 항목의 모든 항목 검증(오버플로 키 포함). 누락된 항목 확인

디렉토리 검증

VOMA는 다음과 같은 오류를 감지하고 수정할 수 있습니다.

  • 디렉토리 해시 블록 손상

  • 할당 맵 손상

  • 연결 블록 손상

  • 디렉토리 항목 블록 손상

VOMA는 손상의 특성에 따라, 손상된 항목만 수정하거나, 해시 블록, 할당 맵 블록 및 연결 블록을 완전히 재구성할 수 있습니다.

분실 파일

파일 시스템을 확인하는 동안 VOMA는 파일 시스템에서 아예 참조되지 않는 파일을 찾을 수 있습니다. 이러한 분리된 파일은 유효하고 온전한 상태이지만 시스템에서 이름 또는 디렉토리 항목이 없는 파일입니다.

검색 중에 이러한 분리된 파일이 발견되면 VOMA는 볼륨의 루트에 lost+found라는 이름의 디렉토리를 생성하여 해당 파일을 저장합니다. 파일 이름은 Filesequence-number 형식으로 지정됩니다.

VOMA 도구에서 사용되는 명령 옵션에는 다음이 포함됩니다.

표 2. VOMA 명령 옵션

명령 옵션

설명

-m|--module

실행해야 하는 모듈은 다음과 같습니다.

vmfs

모듈 이름을 지정하지 않으면 이 옵션이 기본적으로 사용됩니다.

VMFS 파일 시스템과 가상 플래시 리소스를 지원하는 파일 시스템을 확인할 수 있습니다. 이 모듈을 지정하는 경우 LVM에 대해서도 최소 확인이 수행됩니다.

lvm

VMFS 데이터스토어를 지원하는 논리적 볼륨을 확인합니다.

ptbl

MBR 또는 GPT 같은 VMFS 파티션을 검사하고 검증합니다. 파티션이 없는 경우, 파티션이 있어야 하는지 확인합니다.

-f|--func

수행해야 하는 기능은 다음과 같습니다.

query

모듈이 지원하는 기능을 나열합니다.

check

오류를 확인합니다.

fix

오류를 확인하고 수정합니다.

dump

메타데이터 덤프를 수집합니다.

-a|--affinityChk

VMFS6에 대한 선호도 관련 확인 및 수정을 포함합니다.

-d|--device

검사할 디바이스 또는 디스크를 나타냅니다. VMFS 데이터스토어를 지원하는 디바이스 파티션에 절대 경로를 제공했는지 확인합니다. 데이터스토어가 여러 디바이스에 걸쳐있는 경우 헤드 익스텐트의 UUID를 제공합니다.

예를 들어 voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x입니다.

-x|--extractDump 명령을 사용하는 경우 여러 디바이스 경로를 쉼표로 구분된 파티션 한정자를 사용하여 입력합니다. 입력하는 디바이스 경로 수는 걸쳐있는 디바이스의 수와 동일합니다.

-b|--blockSize

디스크 블록 크기를 나타냅니다.

-s|--logfile

결과를 출력할 로그 파일의 경로를 지정합니다.

-x|--extractDump

VOMA를 사용하여 수집된 덤프를 추출합니다.

-D|--dumpfile

수집된 메타데이터 덤프를 저장할 덤프 파일을 나타냅니다.

-v|--version

VOMA 버전을 표시합니다.

-h|--help

VOMA 명령에 대한 도움말 메시지를 표시합니다.

-Y

주소 확인을 위해 PE 테이블을 사용하지 않고 VOMA를 실행함을 나타냅니다.

-Z| --file

추출된 디바이스 파일에서 VOMA를 실행함을 나타냅니다.

확장된 볼륨에서 메타데이터 덤프 수집:

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

수집된 덤프를 확장된 볼륨의 디바이스로 다시 추출합니다.

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