Logical Volume Manager

LVM(Logical Volume Manager)은 리눅스 커널을 위한 논리적 볼륨 관리 및 스토리지 추상화 기술이다. 물리적 디스크의 스토리지 공간을 논리적인 단위로 풀링하여, 전통적인 디스크 파티셔닝 방식보다 유연하게 용량을 할당하고 크기를 조정할 수 있도록 한다.

주요 구성 요소 LVM 아키텍처는 세 가지 주요 계층으로 구성된다.

  1. 물리 볼륨 (Physical Volume, PV) 실제 하드 드라이브, SSD, 또는 하드웨어 RAID 컨트롤러의 LUN과 같은 물리적 블록 장치이다. LVM 시스템에 스토리지를 제공하기 위해 초기화된 장치이다.

  2. 볼륨 그룹 (Volume Group, VG) 하나 이상의 물리 볼륨(PV)을 모아 만든 단일 스토리지 풀이다. 스토리지 용량의 중앙 저장소 역할을 하며, 이 그룹 내에서 논리 볼륨을 생성한다.

  3. 논리 볼륨 (Logical Volume, LV) 볼륨 그룹(VG)의 사용 가능한 공간 일부를 할당받아 생성된 가상의 파티션이다. 사용자는 이 계층에 파일 시스템(ext4, XFS 등)을 생성하고 마운트하여 데이터를 저장한다. 시스템 가동 중에도 크기를 확장하거나 축소할 수 있다.

전통적인 파티셔닝과 LVM 비교

전통적인 물리적 파티셔닝 시스템과 LVM의 구조적 및 기능적 차이는 다음과 같다.

특징 (Feature)전통적인 파티셔닝 (Traditional Partitioning)LVM (Logical Volume Manager)
크기 조정 (Resizing)파티션 크기 변경이 제한적이며, 연속된 빈 실린더/섹터가 필요함.파일 시스템 언마운트 없이 온라인 상태에서 볼륨 크기 확장/축소 가능.
디스크 확장 (Spanning)파티션은 단일 물리적 디스크의 크기를 초과할 수 없음.여러 개의 물리적 디스크를 결합하여 단일 대용량 볼륨으로 구성 가능.
스냅샷 (Snapshots)OS 수준에서 기본적으로 지원하지 않음.활성 상태의 논리 볼륨에 대한 읽기/쓰기 스냅샷 지원. 백업 목적에 적합함.
복잡성 (Complexity)구조가 단순하고 설정이 직관적임.물리 계층과 파일 시스템 사이에 추상화 계층이 추가되어 관리 구조가 복잡함.
데이터 이동 (Data Migration)데이터를 다른 디스크로 마이그레이션하려면 수동 복사 필요.pvmove 명령을 사용하여 서비스 중단 없이 물리적 장치 간 데이터 이동 가능.

출처 (Sources)

  • Red Hat System Design Guide: “Storage management with Logical Volume Manager (LVM)”
  • Arch Linux Wiki: “LVM (Logical Volume Manager)”
  • Ubuntu Server Documentation: “Logical Volume Manager (LVM)“

Entities