LVM, RAID 란

강정우·2024년 1월 6일
1

Dev_Ops

목록 보기
4/20
post-thumbnail

현재 pc에 실제로 장착되어있는 물리적 디스크는 450GB ssd 2개 2TB hdd 4개가 달려있다.
그런데 디스크 정보를 찍어보면 450GB짜리가 1개 6TB짜리가 1개 이렇게 찍힌다.
이는 2개 이상의 물리적 디스크를 논리적 유닛으로 묶어서 사용하여 안정성과 속도를 높히는 RAID 개념과 관련이 있다.
그리고 위 사진에서 처럼 1개의 물리적 디스크의 파티션을 논리적으로 묶어서 관리하는 기술이다.

LVM 이란?

LVM은 Logical Volume Manager의 약자로, 리눅스에서 사용하는 디스크 관리 시스템이다.

LVM을 사용하면 여러개의 물리적인 디스크들을 논리적인 볼륨으로 묶어서 하나의 디스크처럼 사용할 수 있다.
이렇게 하면 여러 디스크를 관리하는 것이 간편해지며, 더욱 효율적인 디스크 관리가 가능해진다.

LVM 구성요소

LVM은 크게 세 가지 구성요소로 이루어져 있다.

1. 물리적 볼륨 ( Physical Volumes, PV )

이는 실제 하드디스크나 그 하드디스크의 파티션을 말한다.
물리적 볼륨은 하나 이상의 물리적 볼륨으로 구성된 볼륨 그룹에 포함될 수 있다.

2. 볼륨 그룹 ( Volume Groups, VG )

이는 하나 이상의 물리적 볼륨으로 구성되고, 볼륨 그룹 내의 공간은 논리적 볼륨으로 분할한다.
이는 마치 하나의 큰 디스크 드라이브처럼 작동한다.

3. 논리적 볼륨 ( Logical Volumes, LV )

볼륨 그룹의 공간을 논리적 볼륨으로 쪼개어 사용한다.
논리적 볼륨은 일반적인 디스크 파티션과 유사하게 파일 시스템을 포함할 수 있다.

LVM 장단점

장점

1. 유연성

논리적 볼륨의 크기는 필요에 따라 쉽게 변경할 수 있다.
즉, 너무 크게 설정한 볼륨을 줄이거나, 너무 작게 설정한 볼륨을 늘릴 수 있다.

2. 스냅샷

논리적 볼륨의 상태를 스냅샷으로 캡처하여, 이후에 그 시점으로 볼륨을 복원할 수 있다.
다중 디스크 활용: 여러 개의 디스크를 하나로 묶어서 사용할 수 있으므로, 저장 공간을 유연하게 확장할 수 있다.

단점

1. 복잡성

일반적인 디스크 파티션 방식에 비해 복잡한 구조를 가지고 있으며, 이를 설정하고 관리하기 위해서는 추가적인 지식이 필요하다.

2. 데이터 손실 위험

볼륨 그룹 내의 한 물리적 볼륨이 손상되면, 그 볼륨 그룹 전체가 사용 불가능해질 가능성이 있다.
따라서 데이터의 안정성을 위해 백업 등의 추가적인 대책이 필요하다.

즉, LVM은 디스크 관리의 유연성을 높이는 대신 복잡성을 동반하는 시스템이라고 볼 수 있다.

RAID란?

RAID는 Redundant Array of Independent Disks의 약자로, 여러 개의 독립적인 디스크를 하나의 논리적인 유닛으로 묶어서 사용하는 기술이다.
RAID는 데이터의 안정성과 입출력 성능 향상을 목표로 한다.

RAID는 다양한 레벨로 구분되며, 각 레벨마다 데이터를 디스크에 분산 저장하는 방식과 오류 복구 방법이 다르다.

LV별 RAID

RAID 0 (스트라이핑)

데이터를 여러 디스크에 분산해서 저장한다.
이 방식은 입출력 성능은 향상시키지만, 어느 한 디스크가 고장 나면 모든 데이터를 잃게 되므로 안정성은 낮다.

용량: N배
성능: N배
안정성: 1/N

RAID 1 (미러링)

데이터를 두 개 이상의 디스크에 동일하게 저장한다.
디스크 하나가 고장 나도 다른 디스크에서 데이터를 복구할 수 있어 안정성이 높지만, 디스크 용량 효율은 낮다.

용량: N
성능-쓰기: 데이터를 복제하여 기록하기 때문에, RAID 컨트롤러가 복제, 연산 하는 시간을 감안하면 단일 디스크의 Write 성능보다 낮다.
성능-읽기: 전체 디스크에서 읽어오기 때문에 단일 디스크의 N배
안정성: N-1개의 디스크가 고장나도 데이터 사용이 가능

RAID 5 (스트라이핑 with 패리티)

Block 단위로 striping을 하고, error correction을 위해 패리티를 1개의 디스크에 저장한다.
즉, 데이터와 패리티(오류 검출 및 복구 정보)를 교차하여 여러 디스크에 저장한다.
한 디스크가 고장 나도 패리티를 이용해 데이터를 복구할 수 있다.
최소 3개의 디스크 필요

용량: (N-1) 배
성능: (N-1) 배
안정성: 1개의 디스크 에러 시 복구 가능(2개 이상의 디스크 에러 시 복구 불가능)

RAID 6 (스트라이핑 with 더블 패리티)

RAID 5와 유사하지만 두 개의 패리티를 사용하여 더 높은 안정성을 제공한다.
최소 4개의 디스크 필요

용량: (N-2) 배
성능: (N-2) 배
안정성: 2개의 디스크 에러 시 복구 가능(3개 이상의 디스크 에러 시 복구 불가능)

RAID VS LVM

RAID는 여러 개의 물리적 디스크를 하나의 논리적 유닛으로 묶어서 사용하는 기술
RAID는 데이터의 안정성과 입출력 성능 향상을 목표로 함.

LVM은 물리적 디스크의 파티션을 논리적으로 묶어서 관리하는 기술
LVM는 디스크의 용량 관리를 보다 유연하게 하는 것을 목표로 함.

RAID와 LVM은 각각 디스크의 안정성과 유연성을 목표로 하는 서로 다른 기술이지만, 실제 시스템 구축 시에는 이 두 가지 기술을 함께 사용하는 경우가 많다.
예를 들어, 먼저 RAID를 구성하여 디스크의 안정성을 확보한 후, 이 위에 LVM을 적용하여 디스크의 용량을 유연하게 관리하는 방식을 사용할 수 있다. 이렇게 하면 RAID의 안정성과 LVM의 유연성을 동시에 활용할 수 있다.

profile
智(지)! 德(덕)! 體(체)!

0개의 댓글