일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- 한정 분기
- Flutter
- 페이코 추천인코드
- 백준
- 페이코 친구코드
- SWEA
- 자바
- Java
- php 프로그래밍 입문 3판
- php 프로그래밍 입문 문제풀이
- 배열
- 페이코 초대코드
- C언어
- 페이코 추천인
- php 프로그래밍 입문 연습문제
- 최단 경로
- 플러터
- 스프링
- spring
- php 프로그래밍 입문 예제
- php 프로그래밍 입문
- 자바 스프링
- JAVA SPRING
- php 프로그래밍
- php 프로그래밍 입문 솔루션
- php
- C
- 플러터 개발환경 설정
- programmers
- 파이썬
Archives
- Today
- Total
ImJay
[리눅스 마스터 2급] LVM(Logical Volume Manager) 완벽 가이드 — 기초부터 활용까지 본문
반응형
LVM(Logical Volume Manager) 완벽 가이드 — 기초부터 활용까지
1. 들어가며
서버나 스토리지를 운영하다 보면, “디스크 공간이 부족해졌을 때 어떻게 확장하지?”라는 고민을 하게 됩니다.
전통적인 파티션 방식은 구조가 고정되어 있어, 용량을 변경하려면 서비스 중단이 필요하고 데이터 손실 위험도 있습니다.
이때 **LVM(Logical Volume Manager)**을 사용하면, 디스크 공간을 훨씬 더 유연하고 안전하게 관리할 수 있습니다.
2. 기본 배경 지식
2-1. 파티션(Partition)이란?
- 하드디스크나 SSD를 '논리적으로 나눈 구역'
- 각 구역은 독립적으로 운영체제에서 관리
- 예: C 드라이브(운영체제), D 드라이브(데이터), E 드라이브(백업)
- 리눅스에서는 /dev/sda1, /dev/sda2 같은 형식
- 단점: 크기를 변경하기 어렵고, 다른 디스크 공간을 합치는 것이 사실상 불가능
2-2. 컨트롤러(Controller)란?
- 하드웨어 장치와 운영체제(OS) 사이에서 데이터를 주고받는 장치
- 스토리지 컨트롤러: 디스크 입출력, RAID 관리 등을 수행
- RAID의 동작 레벨
- 하드웨어 RAID: 컨트롤러가 직접 관리, OS에는 하나의 디스크처럼 보임
- 소프트웨어 RAID: OS가 직접 RAID 기능을 수행 (리눅스 mdadm 등)
3. LVM이란?
**LVM(Logical Volume Manager)**는 운영체제(OS) 레벨에서 디스크를 추상화해 논리적 볼륨으로 관리하는 기술입니다.
즉, 여러 디스크나 파티션을 하나의 저장 풀(VG)로 묶고, 필요한 만큼 잘라서(LV) 사용할 수 있습니다.
4. LVM의 구성 요소
- PV (Physical Volume) – 물리 볼륨
LVM이 관리할 수 있도록 초기화된 디스크 또는 파티션 -
bash복사편집pvcreate /dev/sda1
- VG (Volume Group) – 볼륨 그룹
여러 PV를 묶어서 하나의 큰 저장 풀로 만든 것 -
bash복사편집vgcreate my_vg /dev/sda1 /dev/sdb1
- LV (Logical Volume) – 논리 볼륨
VG에서 필요한 만큼 공간을 할당해 만든 가상의 디스크 -
nginx복사편집lvcreate -L 100G -n my_lv my_vg
5. LVM과 전통 파티션의 차이
항목전통 파티션LVM
크기 변경 | 어려움, 위험 | 유연하고 안전 |
여러 디스크 결합 | 불가능 | 가능 |
서비스 중 용량 변경 | 불가능(마운트 해제 필요) | 가능(실시간 확장) |
스냅샷 | 불가능 | 가능 |
복잡성 | 단순 | 구조 이해 필요 |
6. "마운트 해제 없이"란?
- 마운트(Mount): 디스크를 특정 경로(폴더)에 연결하는 것
- 마운트 해제(Unmount): 연결을 끊는 것
- 전통 파티션 방식: 용량 변경 시 반드시 마운트 해제 → 해당 서비스 중단
- LVM: 온라인 상태에서 크기 변경 가능 → 서비스 중단 없이 운영 가능
7. LVM이 좋은 이유
- 용량 확장/축소 자유로움
새 디스크를 VG에 추가 → LV 용량 확장 → 파일시스템 확장
(예: /home을 500GB → 800GB로 확장, 서비스 중단 없음) - 여러 디스크를 하나처럼 사용
서로 다른 크기·종류의 디스크도 하나의 VG로 묶어 활용 - 스냅샷 지원
작업 전 상태를 저장해두고, 실패 시 해당 시점으로 롤백 가능 - 마운트 해제 없이 관리 가능
서비스 가동 중에도 디스크 관리 가능
8. LVM을 굳이 쓰지 않는 경우
- 단순 환경: 개인 PC, NAS, 외장하드 등 용량 변동이 거의 없는 경우
- 성능 우선 환경: 극한의 I/O 성능이 필요한 경우(미세한 성능 저하 방지)
- 호환성 문제: 오래된 OS나 일부 복구 툴이 LVM을 지원하지 않는 경우
- 복잡성 회피: PV/VG/LV 구조 학습이 부담되는 경우
9. LVM과 RAID의 관계
- RAID: 디스크를 묶어 성능·안정성 향상 (하드웨어 또는 소프트웨어에서 처리)
- LVM: 디스크를 묶어 공간 관리 유연성 향상 (OS 레벨에서 처리)
- 둘은 계층이 다르며, 병행 사용 가능
- 예: RAID-5로 묶은 디스크를 LVM으로 관리
10. 정리
LVM은 운영 중 디스크 관리가 필요한 환경에서 강력한 도구입니다.
특히 서버 운영 중 용량 부족 문제를 서비스 중단 없이 해결할 수 있다는 점이 큰 장점입니다.
다만 단순 환경에서는 오히려 복잡성만 늘릴 수 있으므로, 용도에 맞게 선택하는 것이 중요합니다.
💡 한 줄 요약
LVM = 디스크 공간을 가변적으로 나누고 합치는 ‘가변형 칸막이’
RAID = 여러 디스크를 묶어 성능과 안정성을 높이는 ‘집의 기초 공사’
반응형
'CS 지식' 카테고리의 다른 글
[리눅스 마스터 2급] RAID 완벽 정리 — 원리부터 스페어 디스크, 복구 방식까지 (2) | 2025.08.09 |
---|---|
[기출문제] 리눅스마스터 2급 기출문제 (2) | 2025.05.06 |
문자열 비교 주의사항 (1) | 2023.12.30 |
컴파일 에러, 런타임 에러, 디버그 에러 정리 (0) | 2023.12.30 |
Comments