-
CenTOS7 : Disk Management-2(LVM:Logical Volume Manager)공부합시다!/LInux 2022. 1. 11. 15:01728x90
어제 예고한 대로 오늘은 LVM(Logical Volume Manager)대한 포스팅 입니다.
내용이 조금 많으니 집중하셔야 할 듯!
포스팅은 내일 합니다만 중요 Issue가 있어 글 먼저 올려 놓습니다.
1. lvm 설치
# yum install -y lvm2
2. 아래와 같은 오류발생시
[root@localhost /]# lvcreate -L 2G -n sdkim1 sdkim
/dev/sdkim/sdkim1: not found: device not cleared
Aborting. Failed to wipe start of new LV.
중요 : # yum install libudev-devel -y============================================================================
1. 정의 : Logical Volume을 유연하게 효율적으로 관리하기 위한 프로그램이자 커널의 일부분
2. 등장배경 :
2.1. 기존방식이 파일시스템을 Block Storage에 직접 접근해서 RW
2.2. LVM은 파일시스템이 LVM이 만든 가상의 Block Storage에 RW
3. 장점
3.1. LVM은 물리적 스토리지 상위에 추상적 레이어를 생성, Logical Storage 생성 가능.
3.2. 유연한 용량 조절
3.3. 크기 조정이 가능한 스토리지 풀(Pool) 제공
3.4. 자유로운 장치 이름 지정
3.5. 디스크 스트라이핑, 미러 볼륨 등을 제공합니다.
4. LVM의 주요 5가지 용어
4.1. PV(Physical Volume)
4.1.1. LVM에서 Block Storage를 사용하려면 PV로 초기화
4.1.2. Block Storae를 이루고 있는 파티션들을 LVM에서 사용할 수 있게 변환4.1.3. Blcok Storage /dev/sda1, /dev/sda2 등을 PV로 초기화.
4.1.4. PV는 일정한 크기의 PE(Physical Extent)들로 구성이 됩니다.
4.2. PE(Physical Extent)
4.2.1. PV를 구성하는 일정한 크기의 블록으로 LVM2에서의 기본크기는 4MB.
4.2.2. LVM은 LVM1과 LVM2, LVM2가 LVM1의 기능 개선
4.2.3. LV(Logical Volume)의 LE(Logical Extent)들과 1:1로 대응. 항상 PE와 LE의 크기는 동일
4.2.4. Block Storage의 파티션들을 PV들로 초기화.4.2.5. PV들은 동일한 크기의 PE들로 구성이됩니다.
4.3. VG(Volume Group)
4.3.1. PV들의 집합으로 LV를 할당할 수 있는 공간, 즉 BaseCamp의 역할.
4.3.2. PV들로 초기화된 장치들은 VG로 통합
4.3.3. VG에 Free Size만 존재한다면 원하는대로 공간을 분리하여 LV 생성 가능4.4. LV(Logical Volume)
4.4.1. 사용자가 최종적으로 다루게 되는 Logical Storage.
4.4.2. LV는 파일 시스템 및 애플리케이션(Database 등)으로 사용
4.4.3. LV를 구성하는 LE들은 PV의 PE들과 1대1 맵핑하며 존재.
4.4.4. LE와 PE가 맵핑되면서 총 3가지 유형의 LV가 생성됩니다.
4.4.4.1 선형(Linear) LV
4.4.4.1.1 하나의 LV로 PV들을 토합.4.4.4.1.2. 두개의 100GB 디스크(PV를 의미합니다.)를 가지고 200GB의 LV 생성.
4.4.4.1.3. LV만을 사용하는 사용자의 입장에서는 200GB의 단일 장치 인식
4.4.4.2.스트라이프(Striped)된 LV
4.4.4.2.1. LV에 데이터를 기록하게되면, 파일 시스템은 PV에 데이터를 기록4.4.4.2.2. 스트라이프된 LV을 생성해서 데이터가 PV에 기록되는 방식 변경 가능.
4.4.4.2.3. 대량의 순차적 읽기/쓰기 작업의 경우에 효율성 향상.
4.4.4.2.4. Round-Robin 방식으로 미리 지정된 PV들에 데이터를 분산 기록하여 성능 향상, RW를 병렬로 실행4.4.4.3. 미러(Mirrored)된 LV
4.4.4.3.1. 블록 장치에 저장된 데이터의 복사본을 다른 블록 장치에 저장하는 방식.
4.4.4.3.2. 데이터가 하나의 PV에 저장될때, 이를 미러하고있는 PV에 동일한 데이터가 저장.
4.4.4.3.3. 장치에 장애가 발생하게 될경우 데이터를 보호.4.4.4.3.4. 하나의 장치에 장애가 발생하게 되면, 선형(Linear)으로 저장되어있기에 다른 장치에서 쉽게 접근이 가능
4.4.4.3.5. 미러활용하여 Data 동기화 여부에 대한 로그를 디스크에 저장.
4.5. LE(Logical Extent)
4.5.1. LV를 구성하는 일정한 크기의 블록으로 기본크기는 PE와 마찬가지로 4MB.
4.5.2. LV들은 동일한 크기의 LE로 구성이되며 PE들과 1:1로 맵핑.
5. 전통적 Block Storage
5.1. 물리 디스크를 파티션이라는 단위로 분할 후 OS에 마운트하여 사용
5.2. 마운트를 하려면 파티션을 특정 디렉토리와 연결.
5.3. 전통적 Partitions 방식의 문제점
5.3.1. 만약 특정 파티션 - /var 이라 가정 - 에 마운트된 파티션이 용량이 일정 수준 이상 찼을 경우
5.3.1.1. 추가 디스크를 장착
5.3.1.2. 추가된 디스크에 파티션 생성 및 포맷
5.3.1.3. 새로운 마운트 포인트(/var2) 를 만들고 추가한 파티션을 마운트
5.3.1.4. 기존 /var 데이타를 /var2 에 복사 또는 이동
5.3.1.5. 기존 /var 파티션을 언마운트(umount)
5.3.1.6. /var2 를 /var 으로 마운트
6. LVM 특징
6.1. LVM 은 이름처럼 파티션대신 볼륨이라는 단위로 저장 장치를 Control
6.2. 물리 디스크를 볼륨 그룹으로 묶고 이것을 논리 볼륨으로 분할하여 관리.
6.3. 스토리지의 확장이나 변경시 서비스의 변경 가능
6.3. 특정 영역의 사용량이 많아져서 저장 공간이 부족할 경우에 유연하게 대응
6.4. /var 영역이 거의 찼을 경우 LVM이 적용되었을 경우
6.4.1. 추가 디스크를 장착
6.4.2. 추가된 디스크에 파티션을 만들어서 물리 볼륨(PV) 생성
6.4.3. 물리 볼륨을 볼륨 그룹(VG)에 추가. 여기서는 vg_data 볼륨 그룹으로 추가합니다.
6.4.5. /var 이 사용하는 논리 볼륨인 lv_var의 볼륨 사이즈를 증가
6.5. 변경 작업을 기존 데이터의 삭제나 이동 없이
6.5. 서비스가 구동중인 상태에서 유연하게 볼륨 사이즈 증가.
다음시간에는 실제 사용법을 알아봅니다.
728x90'공부합시다! > LInux' 카테고리의 다른 글
CentOS7 File Management : tar (Tape Archive)-1 (0) 2022.01.14 CenTOS7 : Disk Management-3(LVM:Logical Volume Manager) (0) 2022.01.12 CenTOS7 : Disk Management-1 (0) 2022.01.11 CenTOS7 : /etc/default/useradd, /etc/login.defs 제어 (0) 2022.01.11 CenTOS7 : File Metadata, Directory Metadata, 권한및 소유권 (0) 2022.01.10