리눅스/이슈 확인

[ISSUE] Rocky9.5 shared volume LVM 인식 불가 현상

ㅎㄷㄹㅁㅇ 2025. 6. 19. 17:49
반응형

Rocky9.5 VMware VM에서 Shared Volume LVM 인식 불가

목차

    설명

    VMware 위에 구성된 VM node1,2에서 Shared Volume 을 사용 할 때 발생한 이슈입니다. OS 버전은 Rocky9.5 버전으로 최신 버전으로 OS를 설치 한 뒤 Pacemaker 구성을 하는 과정에서 발생했습니다. 할당받은 Shared volume 을 LVM으로 파티셔닝 하는 과정에서 node1에서는 LVM이 확인되나, node2에서는 확인되지 않는 이슈가 발생했습니다. 

     

     

    증상

    node1,2에 각각 Shared volume을 할당하는 과정에서 node1에서 할당된 shared volume을 LVM 구성을 진행했고 node2에서 LVM 명령어를 통해 확인했으나 확인이 되지 않았습니다. node2를 재부팅 한 뒤에도 동일 증상이 해소되지 않았습니다. lvscan 등의 명령어를 통해서도 해소되지 않았고 lsblk 명령어를 통해 device가 제대로 할당된 것은 확인했습니다.

     

     

    상태 확인

    ### node1
    $ lsblk
    NAME                 MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    sda                    8:0    0   70G  0 disk
    └─sda1                 8:1    0   56G  0 part
      ├─rl-root          253:0    0   20G  0 lvm  /
      ├─rl-swap          253:1    0    8G  0 lvm  [SWAP]
      ├─rl-var           253:5    0    8G  0 lvm  /var
      ├─rl-tmp           253:6    0    4G  0 lvm  /tmp
      └─rl-home          253:7    0    3G  0 lvm  /home
    └─sda2                 8:2    0    1G  0 part /boot
    sdb                    8:16   0   61G  0 disk
    ├─VG10-bk1        253:8    0   10G  0 lvm
    ├─VG10-bk3           253:9    0    5G  0 lvm
    ├─VG10-bk4         253:10   0    5G  0 lvm
    ├─VG10-bk5           253:11   0    5G  0 lvm
    ├─VG10-bk6          253:12   0    5G  0 lvm
    ├─VG10-bk2     253:13   0   10G  0 lvm
    ├─VG10-bk7          253:14   0    5G  0 lvm
    └─VG10-bk8            253:15   0   12G  0 lvm$ pvs
    
    $ pvs
      PV         VG   Fmt  Attr PSize   PFree
      /dev/sda1  rl   lvm2 a--   56.00g  4.00m
      /dev/sdb   VG10 lvm2 a--  <61.00g <4.00g
      
    $ vgs
      VG   #PV #LV #SN Attr   VSize   VFree
      VG10   1   8   0 wz--n- <61.00g <4.00g
      rl     1   8   0 wz--n-  56.00g  4.00m
      
    $ lvs
      LV            VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      bk1        	VG10 -wi-a----- 10.00g
      bk2     		VG10 -wi-a----- 10.00g
      bk3           VG10 -wi-a-----  5.00g
      bk4         	VG10 -wi-a-----  5.00g
      bk5           VG10 -wi-a-----  5.00g
      bk6          	VG10 -wi-a-----  5.00g
      bk7          	VG10 -wi-a-----  5.00g
      bk8           VG10 -wi-a----- 12.00g
      home          rl   -wi-ao----  3.00g
      root          rl   -wi-ao---- 20.00g
      swap          rl   -wi-ao---- <8.00g
      tmp           rl   -wi-ao----  4.00g
      var           rl   -wi-ao----  8.00g
    
    
    ### node2
    $ lsblk
    NAME                 MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    sda                    8:0    0   70G  0 disk
    └─sda1                 8:1    0   56G  0 part
      ├─rl-root          253:0    0   20G  0 lvm  /
      ├─rl-swap          253:1    0    8G  0 lvm  [SWAP]
      ├─rl-var           253:5    0    8G  0 lvm  /var
      ├─rl-tmp           253:6    0    4G  0 lvm  /tmp
      └─rl-home          253:7    0    3G  0 lvm  /home
    └─sda2                 8:2    0    1G  0 part /boot
    sdb                    8:16   0   61G  0 disk
    
    $ pvs
      PV         VG Fmt  Attr PSize  PFree
      /dev/sda1  rl lvm2 a--  56.00g 4.00m
    $ vgs
      VG #PV #LV #SN Attr   VSize  VFree
      rl   1   8   0 wz--n- 56.00g 4.00m
    $ lvs
      LV            VG Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      home          rl -wi-ao----  3.00g
      root          rl -wi-ao---- 20.00g
      swap          rl -wi-ao---- <8.00g
      tmp           rl -wi-ao----  4.00g
      var           rl -wi-ao----  8.00g

     

     

    원인 분석 및 해결 방법

    RedHat 계열(RHEL 9 이상)에서는 LVM이 사용할 수 있는 디바이스를 /etc/lvm/devices/system.devices 파일로 관리합니다. 이 파일에 등록된 디바이스만 LVM이 인식하고 이곳에 shared volume device가 등록되어 있지 않으면, 서버를 reboot를 해도 LVM이 해당 디바이스를 스캔하지 않으므로 구성한 LVM 정보가 보이지 않습니다.

     

    해결 방법으로는 lvmdevices --adddev 명령어를 실행하여 디바이스가 system.devices 파일에 추가하면 됩니다. 명령어를 통해 등록된  device(shared volume)의 LVM 정보를 정상적으로 인식합니다. 위와 관련된 설정 값은 /etc/lvm/lvm.conf의 use_devicesfile 으로 설정되어 있는데 OS version 의 default 값이 변경되어 이슈가 발생했습니다.

     

    아래는 /etc/lvm/devices/system.devices 에 lvmdevices 명령어를 사용 할 때 device의 wwid가 등록되는 과정입니다. 

    ### node2의 /etc/lvm/devices/system.devices 확인
    $ cat /etc/lvm/devices/system.devices
    PRODUCT_UUID=3c752b42-3cad-7ef4-70f8-16a428a7ccfe
    VERSION=1.1.127
    IDTYPE=devname IDNAME=/dev/sda1 DEVNAME=/dev/sda1 PVID=gdG2YdzwOnlhsyM3XOIYw1CnPUEnBycH PART=1
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=EN7JARGplOOAqQ1QWE6BN0rf2vAdAzSQ
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=ZZZuB4zcIyYgp3Te6Q93s3Xd6PLjRIR7
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=.
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=.
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=I678Od4v2U6A34BZ4QaA7ndgFk1nHf3b
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=02qfo9qjLYjHaUr6cbcY9XKicS7ZJT6P
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=m4uE0erAZ0VIvAfyJ0GrGUBZ4me3EYvd
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=qweQASDVsd123qsaAWEmL50tC82GyfMA
    
    ### lvmdevices 명령어를 통한 특정 device의 LVM 사용 인식
    $ lvmdevices --adddev /dev/sdb
    
    ### node2의 /etc/lvm/devices/system.devices 확인
    $ cat /etc/lvm/devices/system.devices
    PRODUCT_UUID=f5802b42-ed81-a0bb-0519-abd3b146d614
    VERSION=1.1.58
    IDTYPE=devname IDNAME=/dev/sda1 DEVNAME=/dev/sda1 PVID=gdG2YdzwOnlhsyM3XOIYw1CnPUEnBycH PART=1
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=EN7JARGplOOAqQ1QWE6BN0rf2vAdAzSQ
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=ZZZuB4zcIyYgp3Te6Q93s3Xd6PLjRIR7
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=.
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=.
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=I678Od4v2U6A34BZ4QaA7ndgFk1nHf3b
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=02qfo9qjLYjHaUr6cbcY9XKicS7ZJT6P
    
    $ cat /etc/lvm/devices/system.devices
    PRODUCT_UUID=f5802b42-ed81-a0bb-0519-abd3b146d614
    VERSION=1.1.64
    IDTYPE=devname IDNAME=/dev/sda1 DEVNAME=/dev/sda1 PVID=gdG2YdzwOnlhsyM3XOIYw1CnPUEnBycH PART=1
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=fUUuB4zcIyYgp3Te6Q93s3Xd6PLjRIR7
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=.
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=.
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=I678Od4v2U6A34BZ4QaA7ndgFk1nHf3b
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=02qfo9qjLYjHaUr6cbcY9XKicS7ZJT6P
    IDTYPE=devname IDNAME=/dev/sdb DEVNAME=/dev/sdb PVID=qweQASDVsd123qsaAWEmL50tC82GyfMA
    
    ### lsblk 명령어로 확인
    $ lsblk
    NAME                 MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    sda                    8:0    0   70G  0 disk
    └─sda1                 8:1    0   56G  0 part
      ├─rl-root          253:0    0   20G  0 lvm  /
      ├─rl-swap          253:1    0    8G  0 lvm  [SWAP]
      ├─rl-var           253:5    0    8G  0 lvm  /var
      ├─rl-tmp           253:6    0    4G  0 lvm  /tmp
      └─rl-home          253:7    0    3G  0 lvm  /home
    └─sda2                 8:2    0    1G  0 part /boot
    sdb                    8:16   0   61G  0 disk
    ├─VG10-bk1        253:8    0   10G  0 lvm
    ├─VG10-bk3           253:9    0    5G  0 lvm
    ├─VG10-bk4         253:10   0    5G  0 lvm
    ├─VG10-bk5           253:11   0    5G  0 lvm
    ├─VG10-bk6          253:12   0    5G  0 lvm
    ├─VG10-bk2     253:13   0   10G  0 lvm
    ├─VG10-bk7          253:14   0    5G  0 lvm
    └─VG10-bk8            253:15   0   12G  0 lvm

     

     

    아래는 /etc/lvm/lvm.conf의 use_devicesfile 버전 별 default 값을 표로 정리한 내용입니다.

      use_devicesfile default 설명
    RHEL 7 0 (비활성화) system.devices 파일을 사용하지 않음. 모든 블록 디바이스를 LVM이 직접 스캔함.
    RHEL 8 0 (비활성화) 기본적으로 system.devices 파일을 사용하지 않음. 필요 시 수동 활성화.
    RHEL 9 1 (활성화) system.devices 파일이 기본적으로 활성화되어, 이 파일에 등록된 디바이스만 LVM이 인식함. 

    - RHEL 8.5 이상에서는 필요에 따라 system.devices 파일을 활성화할 수 있지만, 기본값은 여전히 비활성화입니다.

    반응형
    TOP