RAID ?? (Redundant Array of Independent/Inexpensive Disks)
- 디스크 어레이 (Disk Array)
- 여러 개의 Disk(Physical)를 하나의 Disk 처럼 사용하는 방법
- 비용절감 및 신뢰성과 성능 향상
- 데이터 보호나 디스크의 성능을 개선하기위해 사용하는 기술
RAID 방식의 종류
- Hardware RAID
- Raid 컨트롤러 내부의 하드웨어 및 펌웨어에 의해 구현
- 독자적인 메모리와 프로세서를 가지고 있다.
- 안정적이나 대부분 고가이다.
- 제조사에 따라서 RAID를 설정하는 펌웨어 사용 방식이 다르다.
- Software RAID
- H/W RAID 비해 신뢰성이나 속도 등이 떨어진다.
- 저렴한 비용으로 H/W RAID와 동일하게 RAID 구성이 가능하다.
Data 나누는 방법에 따른 종류
-레벨(Level)로 구분하며, 다양한 Level이 존재
-대표 Raid Level - Linear RAID, RAID 0, RAID1, RAID5, RAID6
Linear Raid를 실습해 보겠다.
Linear Raid
- 선형 RAID는 여러개의 디스크를 연결해 하나의 큰 가상 디스크를 만든다.
- 첫 번째 디스크가 완전히 채위지면 순차적으로 다음 디스크에 데이터를 저장한다.
- 성능 면에서는 큰 장점이 없으며, 하나의 디스크가 고장이나면
묶여 있던 볼륨자체를 사용할 수 없게 된다.
작업 확경 구성
(1) 스냅샷으로 초기화
(2) 0.25GB Disk * 9개 추가
- ADD를 통해서 20기가 본래 디스크를 제외한 9개의 디스크를 만든다.
(3) 재부팅
(4) #fdisk -l
-#fdisk -l을 통해서 /dev/sdj까지 만들어졌나 확인한다.
Linear RAID 구성 (/dev/sdb, /dev/sdc)
파티션 생성
- #fdisk /dev/sdb를 통해 주 파티션으로 모두 할당해주고
옵션 -t (change a partition's system id // 파티션 타입 변경 시 사용)를 통해 파티션 타입을 지정해준다.
그렇게하면 타입 리스트가 나오는 것을 확인 할 수 있는데, "fd" 즉, Linux Raid Autodetect를 선택해주고 P를통해 파티션 설정 확인 후 W로 저장 후 나오면 된다.
과정을 다시 적는 다면 다음과 같다.
#fdisk /dev/sdb
"n" 새로운 생성
"p" 주파티션
"1" 1번 선택
"enter" 디스크의 처음부터
"enter" 끝까지 사용
"t" 타입변경
"fd" Linux Raid Autodetect
"w" 저장
#fdisk /dev/sdc
/dev/sdb와 동일하게 진행
#fdisk -l /dev/sdb
#fdisk -l /dev/sdc //파티션 타입 변경 및 생성 확인
(2) RAID 설정
RAID 생성
#mdadm --create [볼륨명] --level [레이드레벨] --raid-devices=[디스크 갯수][장치명][장치명]....[장치명]
RAID 정보 파일
/proc/mdstat
RAID 설정 저장
#mdadm --detail --scan > /etc/mdadm.conf
// 해당 명령어를 사용하지 않으면 볼륭명이 변경이 된다.
RAID 확인
#mdadm --detail --scan
#mdadm --detail [장치명]
(3) 파일 시스템 생성
#mkfs -t ext4 /dev/md9
(4) 마운트 포인트 생성 및 마운트
#mkdir /RAID-LINEAR // 마운트 포인트 생성
#mount /dev/md9 /RAID-LINEAR // 마운트
#df -h // 마운트 설정 확인
#blkid // /dev/md9 UUID 확인
#vi /etc/fstab // 설정 추가
UUID=d2a7d0fa-968b-49ee-8933-34d554204b47 /RAID-LINEAR ext4 defaults 0 0
(5) 구성 확인
#mdadm --detail /dev/md9
RAID0 ??
- 스트라이핑 (Striping) RAID라고도 불린다.
- 데이터를 여러개의 디스크에 나누어 쓰고 읽어 들임으로서
데이터를 중복해서 기록하지 않아 가장 높은 입출력 성능을 제공한다. (가장 큰 장점)
- RAID0의 용량은 모든 디스크의 총 용량 같다.
- 데이터 보호 기능이 없다. -> Fault Tolerant 기능이 없다
Fault Tolerant (결함 감냄/장애 내성)
고장이나 결함이 발생하여도 정상적 혹은 부분적으로 기능을 수행할 수 있는 능력/환경
예를들어, 1TB 디스크와 10TB짜리 Disk 2개를 RAID를 구성했을때 총 용량???
Linaer RAID = 11TB
RAID 0 = 2TB
Linear RAID 는 순차적으로 용량을 쓰기때문에 총 11TB가 되고,
RAID 0 는 용량을 나누어 쓰기 때문에 작은 디스크 1TB 큰 디스크도 1TB 밖에 못쓴다.
RAID0 의 구성도 비슷하다.
(1) fdisk 파티션 생성 (/dev/sdd, /dev/sde )
#fdisk /dev/sdd
"n" 새로운 생성
"p" 주파티션
"1" 1번 선택
"enter" 디스크의 처음부터
"etner" 끝까지 사용
"t" 타입변경
"fd" Linux Raid Autodetect
"w" 저장
#fdisk /dev/sde
/dev/sdd와 동일하게 진행
(2) RAID 볼륨 생성
#mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/sdd1 /dev/sde1
#mdadm --detail --scan // UUID
#mdadm --detail /dev/md0 // 설정 확인
(3) 파일 시스템 생성
#mkfs -t ext4 /dev/md0
(4) 마운트 포인트 생성 및 마운트
#mkdir /RAID-0
#mount /dev/md0 /RAID-0
(5) UUID 확인 후 /etc/fstab
#blkid /dev/md0
#vi /etc/fstab
(6) 설정 적용
#mdadm --detail --scan > /etc/mdadm.conf
(7) Reboot 후 자동 마운트 확인
볼륨명 변경시에는 #vi /etc/mdadm.conf 파일열어
장치명 부분을 변경하고 저장한뒤 재부팅 후에 적용
변경 전 ARRAY /dev/md127 metadata=1.2 name=Server-A:9
변경 후 ARRAY /dev/md9 metadata=1.2 name=Server-A:9
'Foundation > - Linux' 카테고리의 다른 글
압축(gzip, bzip2, xz ) (0) | 2017.04.27 |
---|---|
RAID란 ? (RAID1, RAID5,RAID0+1,RAID6) (0) | 2017.04.26 |
파일과 디렉터리의 소유와 허가권 (0) | 2017.04.23 |
사용자 관리와 파일 속성 (0) | 2017.04.22 |
기본 명령어 (0) | 2017.04.21 |