LVM 파티션으로 EBS 볼륨을 확장하려면 어떻게 해야 하나요?
LVM 파티션이 있는 Amazon Elastic Block Store(Amazon EBS) 볼륨을 확장하려고 합니다.
간략한 설명
논리 볼륨을 확장하기 위한 두 가지 옵션이 있습니다.
- 기존 EBS 볼륨의 크기를 늘립니다.
- 볼륨 그룹에 EBS 볼륨을 추가하고 VG-LV를 확장합니다.
해결 방법
옵션 1: 기존 EBS 볼륨 크기 늘리기
참고: 기존 볼륨의 크기 변경은 일반적으로 볼륨이 최적화 상태로 바뀐 후 몇 초 내에 적용됩니다. 최적화 상태에서는 볼륨 성능이 영향을 받지만 소스 구성 사양보다 낮지는 않습니다. 볼륨 유형에 따라 변경되는 데 몇 분에서 몇 시간까지 걸릴 수 있습니다. 자세한 내용은 볼륨 수정 진행 상태 모니터링을 참조하세요.
1. 기존 EBS 볼륨의 크기를 수정하세요.
2. 다음 명령을 실행하여 growpart 유틸리티를 설치하세요.
$ sudo yum install cloud-utils-growpart
참고: 다음 명령을 실행하여 Debian 또는 Ubuntu 기반 시스템에 growpart 유틸리티를 설치하세요.
$ sudo apt install -y cloud-guest-utils
3. growpart 명령을 실행하여 파티션을 확장하세요.
$ sudo growpart /dev/xvdh 1 CHANGED: disk=/dev/xvdh partition=1: start=2048 old: size=20971519,end=16777182 new: size=41940958,end=41943006
4. pvresize 명령을 실행하여 PV 크기를 조정하세요. 다음 예에서는 /dev/xvdh1 파티션이 확장되었습니다.
$ sudo pvresize /dev/xvdh1 Physical volume "/dev/xvdh1" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized
pvs 또는 pvdisplay를 사용하여 물리 볼륨 세부 정보를 볼 수 있습니다.
$ sudo pvs PV VG Fmt Attr PSize PFree /dev/xvdh1 examplegroup1 lvm2 a-- <20.00g <13.00g
vgs 또는 vgdisplay를 사용하여 볼륨 그룹 세부 정보를 볼 수 있습니다.
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 1 1 0 wz--n- <20.00g <13.00g
5. lvextend 명령을 실행하여 논리 볼륨을 확장하세요.
$ sudo lvextend -L 19G /dev/examplegroup1/lvexample1
참고: 위 예에서 19G는 새롭게 늘어난 LV 크기입니다. 19G는 LV를 늘려야 하는 크기가 아닙니다.
lvs 또는 lvdisplay 명령을 사용하여 논리 볼륨 세부 정보를 볼 수 있습니다.
$ sudo lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvexample1 examplegroup1 -wi-a----- 19.00g
6. 다음 명령을 실행하여 파일 시스템을 확장하세요.
Ext2, Ext3 및 Ext4 파일 시스템:
$ sudo resize2fs /dev/examplegroup1/lvexample1
XFS 파일 시스템:
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
옵션 2: 볼륨 그룹에 추가 EBS 볼륨을 추가하고 VG-LV를 확장하세요.
1. 10GB의 다른 EBS 볼륨을 생성한 다음 인스턴스에 해당 볼륨을 연결하세요. EBS 볼륨의 파티션에 물리 볼륨 생성의 3단계에 따라 /dev/xvdi 디바이스에 파티션을 생성하세요. 그런 다음, pvcreate 명령을 실행하세요. 다음 예에서 볼륨의 블록 디바이스 이름은 /dev/xvdi1입니다.
$ sudo pvcreate /dev/xvdi1 Physical volume "/dev/xvdi1" successfully created
2. vgextend 명령을 사용하여 볼륨 그룹을 확장하고 새 볼륨을 추가하세요. 다음 예에서는 /dev/xvdi1 볼륨을 포함하도록 examplegroup1 볼륨 그룹을 확장합니다.
$ sudo vgextend examplegroup1 /dev/xvdi1 Volume group "examplegroup2" successfully extended
확장자를 확인하려면 vgs 또는 vgdisplay 명령을 실행하세요. 다음 예에서는 이제 examplegroup1 볼륨 그룹에 두 개의 PV가 있음을 보여 줍니다.
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 2 1 0 wz--n- 29.99g 20.99g
3. lvextend 명령을 실행하여 논리 볼륨을 확장하세요.
$ sudo lvextend -L 29G /dev/examplegroup1/lvexample1
참고: 이전 예에서 29G는 새로 늘어난 LV 크기입니다. 29G는 LV를 늘려야 하는 크기가 아닙니다.
4. 파일 시스템 크기 조정:
Ext2, Ext3 및 Ext4 파일 시스템:
$ sudo resize2fs /dev/examplegroup1/lvexample1
XFS 파일 시스템:
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
스트라이프 볼륨 확장
스트라이핑은 데이터를 여러 디스크에 분산하는 기술입니다. 논리 볼륨을 확장할 때 다음과 비슷한 메시지가 표시될 수 있습니다.
$ pvcreate /dev/xvdd Physical volume "/dev/xvdd" successfully created. $ vgextend vg01 /dev/xvdd Volume group "vg01" successfully extended $ vgs VG #PV #LV #SN Attr VSize VFree vg01 3 1 0 wz--n- <23.99g <13.99g $ lvextend /dev/vg01/lv01 -L +10G Using stripesize of last segment 128.00 KiB Insufficient suitable allocatable extents for logical volume lv01: 1026 more required
데이터를 스트라이핑하기에 충분한 수의 디바이스를 추가하지 않고 ‘스트라이핑된’ 논리 볼륨을 확장할 때 이전 오류 또는 유사한 오류가 발생합니다.
스트라이프 볼륨을 확장할 때 이러한 오류를 방지하려면 다음 단계를 완료하세요.
1. 다음 명령을 실행하여 LV가 데이터를 스트라이핑하는 디바이스 수를 식별하세요.
$ lvs -o+lv_layout,stripes LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Layout #Str lv01 vg01 -wi-a----- 10.00g striped 2
2. #Str 또는 스트라이프 열은 데이터가 스트라이핑되는 디바이스의 수를 나타냅니다. 위 예에서는 데이터가 2개의 디바이스에 걸쳐 스트라이핑됩니다. 따라서 LV를 확장하려면 vg에 최소 2개의 디바이스(또는 2의 배수 장치)를 추가해야 합니다. 이전 단계에서 디바이스를 하나를 추가했으므로 두 번째 디바이스를 추가하고 확장을 다시 시도하세요.
$ pvcreate /dev/xvde Physical volume "/dev/xvde" successfully created. $ vgextend vg01 /dev/xvde Volume group "vg01" successfully extended $ vgs VG #PV #LV #SN Attr VSize VFree vg01 4 1 0 wz--n- 31.98g 21.98g $ lvextend /dev/vg01/lv01 -L +10G Using stripesize of last segment 128.00 KiB Size of logical volume vg01/lv01 changed from 10.00 GiB (2560 extents) to 20.00 GiB (5120 extents). Logical volume vg01/lv01 successfully resized. $ lvs -o+lv_layout,stripes LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Layout #Str lv01 vg01 -wi-a----- 20.00g striped 2 lv01 vg01 -wi-a----- 20.00g striped 2
위 예제 출력은 두 번째 디바이스가 추가되었을 때 lvextend 명령이 성공적으로 완료되었음을 보여줍니다.
3. 다음 명령을 실행하여 파일 시스템의 크기를 조정하세요.
Ext2, Ext3 및 Ext4 파일 시스템:
$ sudo resize2fs /dev/vg01/lv01
XFS 파일 시스템:
$ sudo xfs_growfs /dev/vg01/lv01
관련 콘텐츠
- 질문됨 10일 전lg...
- 질문됨 2달 전lg...
- 질문됨 7년 전lg...
- AWS 공식업데이트됨 일 년 전
- AWS 공식업데이트됨 일 년 전
- AWS 공식업데이트됨 일 년 전
- AWS 공식업데이트됨 2년 전