Ongoing service disruptions
For the most recent update on ongoing service disruptions affecting the AWS Middle East (UAE) Region (ME-CENTRAL-1), refer to the AWS Health Dashboard. For information on AWS Service migration, see How do I migrate my services to another region?
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
관련 콘텐츠
- 질문됨 일 년 전
