Linux/LVM - 가상머신(VM) 디스크 파티션 확장 (pvresize, lvextend, resize2fs)

JIWON·2025년 10월 23일

Linux

목록 보기
20/20
post-thumbnail

문제 상황: VM 디스크 할당량과 실제 파티션 용량 불일치

LMV 클러스터 구축 시 가상머신에 아래와 같이 디스크 용량을 설정했지만, 실제 파티션을 확인해 보면 루트(/) 파티션이 12GB(11.5G)밖에 할당되지 않은 문제를 확인한다.

  • Master: 25GB

  • worker1: 50GB

  • worker2: 50GB

  • kafkaconnect 전용 worker: 25GB

이로 인해 KafkaConnect 파드 배포 시 용량 부족 문제가 발생할 수 있으므로, 할당된 디스크 용량만큼 파티션을 늘려주는 작업이 필요하다.


1단계: 파티션 확인 (lsblk)

먼저 lsblk 명령어로 현재 디스크와 파티션 구조를 확인한다.

lsblk

[실행 결과 예시]

NAME                      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
loop0                       7:0    0 63.8M  1 loop /snap/core20/2599
loop1                       7:1    0 91.4M  1 loop /snap/lxd/35819
loop2                       7:2    0 38.8M  1 loop /snap/snapd/21759
loop3                       7:3    0 50.8M  1 loop /snap/snapd/25202
loop4                       7:4    0 89.4M  1 loop /snap/lxd/31333
loop5                       7:5    0 63.8M  1 loop /snap/core20/2669
sda                         8:0    0   25G  0 disk 
├─sda1                      8:1    0    1M  0 part
├─sda2                      8:2    0    2G  0 part /boot
└─sda3                      8:3    0   23G  0 part 
  └─ubuntu--vg-ubuntu--lv 253:0    0 11.5G  0 lvm  /
sr0                        11:0    1 1024M  0 rom
  • sda (물리 디스크)의 총용량은 25G로 정상적으로 늘어나 있다.

  • sda3 (LVM이 사용하는 파티션)도 23G로 확장되어 있다.

  • 하지만 가장 중요한 루트 파일 시스템 (ubuntu--vg-ubuntu--lv)은 여전히 11.5G에 묶여있다.

따라서 늘어난 23G 공간을 LVM이 사용하도록 확장하는 2단계 작업이 필요하다.


2단계: (게스트 VM) LVM 파티션 확장

파티션 확장이 필요한 VM(예: lmv-kafka )에서 다음 명령어들을 순서대로 실행한다.

2-1. LVM Physical Volume(PV) 리사이즈

먼저 sda3 파티션이 커졌다고 LVM(Logical Volume Manager)에 알려준다.

sudo pvresize /dev/sda3

(실행 결과 예시: Physical volume "/dev/sda3" changed ...)

2-2. LVM Logical Volume(LV) 확장

이제 LVM이 인식한 여유 공간(+100%FREE)을 모두 루트(/) 볼륨에 할당한다.

sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv

(실행 결과 예시: Size of logical volume ... changed from 11.50 GiB to 22.99 GiB ...)

2-3. 파일 시스템 리사이즈 (가장 중요)

마지막으로, 확장된 논리 볼륨(LV) 크기에 맞게 실제 파일 시스템을 늘린다. 이 단계가 누락되면 시스템은 확장된 공간을 인식하지 못한다.

sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

(실행 결과 예시: Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required ... The filesystem is now ... blocks long.)


3단계: 최종 확인 (df -h)

df -h 를 실행하여 루트(/) 파티션의 전체 크기(Size)가 23G에 가깝게 늘어났는지 확인한다.

df -h

Size가 23G (또는 22G)로 표시되고, Use% (사용률)가 79%보다 훨씬 낮게 표시되면 정상적으로 확장된 것이다. 이것이 확인되면 KafkaConnect 파드가 정상적으로 배포될 것이다.


[참고] LVM (Logical Volume Manager) 이란?

LVM은 리눅스 환경에서 디스크 파티션을 보다 유연하게 관리하기 위한 기술이다.

  1. PV (Physical Volume; 물리 볼륨): sda3 와 같은 실제 디스크 파티션.

  2. VG (Volume Group; 볼륨 그룹): 여러 개의 PV를 묶어 하나의 큰 저장 공간(풀)로 만든 것. (예: ubuntu--vg)

  3. LV (Logical Volume; 논리 볼륨): VG라는 큰 풀에서 필요한 만큼 논리적으로 할당받은 파티션. (예: ubuntu--lv, 이것이 /dev/mapper/ubuntu--vg-ubuntu--lv로 마운트됨)

이번 작업은 VM의 디스크 크기(sda)는 늘어났지만, LVM이 사용하는 PV(sda3), LV(ubuntu--lv), 그리고 그 위의 파일 시스템이 자동으로 확장되지 않아 발생한 문제이다. 따라서 pvresize (PV 확장 알림) -> lvextend (LV 확장) -> resize2fs (파일 시스템 확장) 순서로 작업을 진행해야 한다.

0개의 댓글