리눅스

[리눅스] RAID 란?

코딩하는 공부방 2022. 5. 16. 17:17

오늘은 리눅스에

RAID 관해서

자세하게 설명을 할게요


SATA 장치와 SCSI 장치 구성

<그림 1-Server의 현재 디스크 구성 상태>

메인보드의 SATA 0 슬롯(메인보드에 케이블을 꽂을 수 있는 홈이라고 생각하면 된다)에는 각각 30개의 SATA 장치를 장착할 수 있다. VMware에서는 SATA 슬롯은 4개가 지원하므로 SATA 장치는 총 120개까지 장착할 수 있다.

이 SATA 장치는 주로 SATA 0:0, SATA 0:1, SATA 0:2... 과 같은 방식으로 표기한다.

 

<그림2 -SATA 장치에 장착된 CD/DVD 확인>

[그림 1]을 보면 SATA 0:1에 CD/DVD 자치가 장착되어 있다.  VMware는 기본적으로 SATA 0:1에 CD/DVD 장치를 장착한다. 그러므로 SATA 장치(주로 하드디스크)를 추가하려면 나머지 비어 있는 119개의 장치 중 하나에 장착해야 한다.(하지만 우리는 SATA 하드디스크가 아닌 SCSI 하드디스크를 사용할 것이다.)

[Player] -> [Manage] ->[Virtual Machine Settings]를 선택하면 SATA 장치를 확인할 수 있다.

 

그림 3 - SCSI 장치에 장착된 하드디스크 확인

SCSI 0번 슬롯의 경우 SCSI 0:0 ~ SCSI 0:15(SCSI 0:7 제외)까지 15개의 하드디스크를 장착할 수 있다.  SCSI 1,2,3번 슬롯도 각각 사용할 수 있으므로 4 X 15 = 60개의 SCSI 하드디스크를 사용할 수 있다.

실무에서는 서버용 컴퓨터에 주로 SCSI를 사용한다.

 

하드디스크 파티션

하드디스크를 처음 장착하면 그냥 깡통 기계일 뿐이다. 그래서 하드디스크를 사용하려면 먼저 파티션(Partition)을 설정해야 만다. 만약 하드디스크를 통째로 하나의 파티션으로 사용하려면 1개의 파티션으로 전체를 설정하고, 2개로 나눠서 사용하려면 2개의 파티션을 설정한다.

 

파티션은 Primary 파티션Extended 파티션 두 가지가 있는데, 1개의 하드디스크에 4개의 Primary 파티션까지 설정할 수 있다. 만약 파티션을 5개 이상 설정하고 싶다면 3개의 Primary 파티션과 1개의 Extended 파티션으로 설정한 후 Extended 파티션을 2개 이상의 Logical 파티션으로 설정해야 한다.

 

파티션을 할 때 명령어는 fdisk 명령어를 사용한다.

 

/etc/fstab 파일

/etc/fstab 파일은 리눅스 부팅될 때마다 자동으로 읽는 중요한 파일이다. 이 파일에는 마운트 정보가 수록되어 있으며 글자가 틀린 경우 아예 부팅되지 않을 수 도 있으므로 수정 시 주의를 요한다.

 

6개의 필드는 '장치 이름', '마운트 될 디렉터리', '파일 시스템', '속성', 'dump 사용 여부', '파일 시스템 체크 여부'를 의미한다. 파일 시스템과 속성 'defaults'로 설정하면 읽기/쓰기/실행 등 대부분의 작업이 가능하다. dump 사용 여부를 '1'로 설정하면 리눅스 dump 명령을 이용해 백업할 수 있다. 파일 시스템 체크 여부를 '1' 또는 '2'로 설정하면 부팅 시 이 파티션을 체크하는데, 1인 파일 시스템을 먼저 체크하고 2는 1을 체크한 후에 체크한다. 3은 없다. 일반적으로 '/'파일 시스템을 '1'로 설정하고 이외에는 '2'로 설정하거나 별로 중요하지 않다면 '0'으로 설정한다. '0'으로 설정하면 파일 시스템 체크를 생략하므로 부팅 속도가 향상된다.


RAID 정의 및 개념

  • RAID는 여러 개의 디스크를 하나의 디스크처럼 사용할 수 있다.
  • 비용절감 + 신뢰성 향상 + 성능 향상의 효과를 냅니다.
  • 하드웨어 RAID소프트웨어 RAID가 존재합니다.

하드웨어 RAID

  • 하드웨어 제조업체에서 여러 개의 하드디스크를 가지고 장비를 만들어서 그 자체를 공급
  • 좀 더 안정적이지만, 상당한 고가입니다.

소프트웨어 RAID

  • 고가의 하드웨어 RAID의 대안
  • 운영체제에서 지원하는 방식입니다.
  • 저렴한 비용으로 좀 더 안전한 데이터 저장이 가능합니다.
  • 주로 다루는 내용은 소프트웨어 RAID입니다.

RAID 방식의 비교

<그림 4 - 각 RAID 방식 비교>

Linear RAID - 2개 이상의 하드디스크를 1개의 볼륨을 사용. 첫 번째 다 저장된 후 2번째 디스크 사용

RAID 0 - 결함이 생길 수 있어서 신뢰성이 떨어질 수가 있습니다

RAID 1 - 동시 저장이 되기 때문에 사용량은 1/2이 됩니다. 결함 허용이 제공합니다.

RAID 5 - 패리티 정보 사용을 합니다. 결함 허용 제공, 사용량은 N-1입니다.

RAID 6 - 중복 패리티 정보 사용, 결함 허용 제공, 사용량은 N-2입니다.

Linear RAID, RAID 0

Linear RAID 개요

  • 최소 2개의 하드디스크가 필요
  • 2개 이상의 하드디스크를 1개의 볼륨을 사용
  • 앞 디스크부터 차례로 저장
  • 100% 공간 효율성(=비용 저렴)

RAID 0 개요

  • 최소 2개의 하드디스크가 필요
  • 모든 디스크에 동시에 저장
  • 100% 공간 효율성(= 비용 저렴)
  • 신뢰성 낮음
  • '빠른 성능을 요구하되, 혹시 전부 잃어버려도 큰 문제가 되지 않는 자료'가 적당함
  • 디스크 크기가 다르면 공간 효율이 100%로 아닙니다.

※상식으로 RAID 같은 크기로 두는 게 맞음. 모델도 같은 모델로 구성하는 게 맞음

 

RAID 1

RAID 1 개요

  • '미러링(Mirroring)'이라 부름
  • 데이터 저장에 두 배의 용량이 필요
  • '결함 허용(Fault-tolerance)'을 제공 = 신뢰성 높음
  • 두 배의 저장 공간 = 비용이 두 배 = 공간 효율 나쁨
  • '중요한 데이터'를 저장하기에 적절함

 

 

 

 

 

 

 

※RAID 0와 RAID 1 비교

구분 RAID0 RAID1
성능(속도) 뛰어남 변화 없음
데이터 안정성(결함 허용) 보장못함(결함 허용 X) 보장함(결함 허용 O)
공간 효율성 좋음 나쁨

RAID 5

RAID 5 개요

<RAID5 저장방식>

  • RAID 1의 데이터의 안전성 + RAID 0처럼 공간 효율성
  • 최소한 3개 이상의 하드디스크
  • 오류가 발생할 때는 '패리티(Parity)'를 이용해서 데이터를 복구

RAID 5 특징

  • 어느 정도의 결함 허용을 해 주시면서 저장 공간의 효율도 좋음
  • '디스크의 개수 -1'의 공간을 사용
  • 디스크 2개가 고장 나면 복구를 못함다는 단점이 있음
  • 디스크 개수가 많아질수록 신뢰도가 떨어집니다. 5개 이상 10개 이하 실무에서 보통 사용

 

RAID 6

RAID 6 개요 및 특징

  • RAID 6 방식은 RAID 5 방식이 개선된 것
  • 공간 효율은 RAID 5보다 약간 떨어지지만, 2개의 디스크가 동시에 고장이 나도 데이터에는 이상이 없도록 하는 방식
  • RAID 6의 경우에는 최소 4개의 디스크 필요
  • 공간 효율은 RAID 5보다 약간 떨어지는 반면에 데이터에 대한 신뢰도는 좀 더 높아지는 효과
  • 성능(속도)은 RAID 5에 비해 약간 떨어진다.

 

그 외 RAID를 조합하는 법

<RAID 1+0의 저장 방식>

신뢰성(안전성)성능(속도)이 동시에 뛰어난 방법

 

mdadam - 디스크 여러 개를 묶은 뒤에 RAID로 만들어주는 명령어입니다.