Red Hat Training
A Red Hat training course is available for RHEL 8
8.17. RAID 오류 정책 설정
LVM RAID는 lvm.conf
파일의 raid_fault_policy
필드에 의해 정의된 기본 설정에 따라 자동 방식으로 장치 오류를 처리합니다.
-
raid_fault_policy
필드가allocate
로 설정된 경우 시스템은 볼륨 그룹의 예비 장치로 오류가 발생한 장치를 대체하려고 합니다. 사용 가능한 예비 장치가 없으면 시스템 로그에 보고됩니다. -
raid_fault_policy
필드가warn
으로 설정되면 시스템에서 경고가 생성되고 로그는 장치가 실패했음을 나타냅니다. 이를 통해 사용자는 수행할 작업을 결정할 수 있습니다.
사용 편의성을 지원하기에 충분한 장치가 남아 있는 경우 RAID 논리 볼륨이 계속 작동합니다.
8.17.1. 할당 RAID 오류 정책
다음 예에서 raid_fault_policy
필드는 lvm.conf
파일에 할당
하도록 설정되어 있습니다. RAID 논리 볼륨은 다음과 같이 배치됩니다.
# lvs -a -o name,copy_percent,devices my_vg
LV Copy% Devices
my_lv 100.00 my_lv_rimage_0(0),my_lv_rimage_1(0),my_lv_rimage_2(0)
[my_lv_rimage_0] /dev/sde1(1)
[my_lv_rimage_1] /dev/sdf1(1)
[my_lv_rimage_2] /dev/sdg1(1)
[my_lv_rmeta_0] /dev/sde1(0)
[my_lv_rmeta_1] /dev/sdf1(0)
[my_lv_rmeta_2] /dev/sdg1(0)
/dev/sde
장치가 실패하면 시스템 로그에 오류 메시지가 표시됩니다.
# grep lvm /var/log/messages
Jan 17 15:57:18 bp-01 lvm[8599]: Device #0 of raid1 array, my_vg-my_lv, has failed.
Jan 17 15:57:18 bp-01 lvm[8599]: /dev/sde1: read failed after 0 of 2048 at
250994294784: Input/output error
Jan 17 15:57:18 bp-01 lvm[8599]: /dev/sde1: read failed after 0 of 2048 at
250994376704: Input/output error
Jan 17 15:57:18 bp-01 lvm[8599]: /dev/sde1: read failed after 0 of 2048 at 0:
Input/output error
Jan 17 15:57:18 bp-01 lvm[8599]: /dev/sde1: read failed after 0 of 2048 at
4096: Input/output error
Jan 17 15:57:19 bp-01 lvm[8599]: Couldn't find device with uuid
3lugiV-3eSP-AFAR-sdrP-H20O-wM2M-qdMANy.
Jan 17 15:57:27 bp-01 lvm[8599]: raid1 array, my_vg-my_lv, is not in-sync.
Jan 17 15:57:36 bp-01 lvm[8599]: raid1 array, my_vg-my_lv, is now in-sync.
raid_fault_policy
필드가 할당
되도록 설정되어 있으므로 실패한 장치는 볼륨 그룹의 새 장치로 교체됩니다.
# lvs -a -o name,copy_percent,devices vg
Couldn't find device with uuid 3lugiV-3eSP-AFAR-sdrP-H20O-wM2M-qdMANy.
LV Copy% Devices
lv 100.00 lv_rimage_0(0),lv_rimage_1(0),lv_rimage_2(0)
[lv_rimage_0] /dev/sdh1(1)
[lv_rimage_1] /dev/sdf1(1)
[lv_rimage_2] /dev/sdg1(1)
[lv_rmeta_0] /dev/sdh1(0)
[lv_rmeta_1] /dev/sdf1(0)
[lv_rmeta_2] /dev/sdg1(0)
실패한 장치가 교체되었지만 디스플레이는 여전히 LVM에 실패한 장치를 찾을 수 없음을 나타냅니다. 이는 실패한 장치가 RAID 논리 볼륨에서 제거되었지만 볼륨 그룹에서 실패한 장치가 아직 제거되지 않았기 때문입니다. 볼륨 그룹에서 실패한 장치를 제거하려면 first reduce --removemissing VG
를 실행할 수 있습니다.
raid_fault_policy
가 allocate
로 설정되었지만 예비 장치가 없는 경우 할당이 실패하고 논리 볼륨이 그대로 유지됩니다. 할당이 실패하면 드라이브를 수정한 다음 lvresh 명령의
. 또는 오류가 발생한 장치를 교체할 수 있습니다.
--refresh
옵션을 사용하여 실패한 장치를 복구할 수 있습니다
8.17.2. 경고 RAID 오류 정책
다음 예에서 raid_fault_policy
필드는 lvm.conf
파일에서 warn
으로 설정되어 있습니다. RAID 논리 볼륨은 다음과 같이 배치됩니다.
# lvs -a -o name,copy_percent,devices my_vg
LV Copy% Devices
my_lv 100.00 my_lv_rimage_0(0),my_lv_rimage_1(0),my_lv_rimage_2(0)
[my_lv_rimage_0] /dev/sdh1(1)
[my_lv_rimage_1] /dev/sdf1(1)
[my_lv_rimage_2] /dev/sdg1(1)
[my_lv_rmeta_0] /dev/sdh1(0)
[my_lv_rmeta_1] /dev/sdf1(0)
[my_lv_rmeta_2] /dev/sdg1(0)
/dev/sdh
장치가 실패하면 시스템 로그에 오류 메시지가 표시됩니다. 그러나 이 경우 LVM은 이미지 중 하나를 교체하여 RAID 장치를 자동으로 복구하지 않습니다. 대신 장치에 오류가 발생하면 lvconvert
명령의 --repair
인수로 장치를 교체할 수 있습니다.