웹사이트 검색

Linux에서 RAID 레벨 6(이중 분산 패리티를 사용한 스트라이핑) 설정 - 5부


RAID 6RAID 5의 업그레이드 버전으로, 두 개의 드라이브에 장애가 발생한 후에도 내결함성을 제공하는 두 개의 분산 패리티가 있습니다. 두 개의 동시 디스크 오류가 발생하는 경우에도 미션 크리티컬 시스템은 계속 작동합니다. RAID 5와 유사하지만 패리티를 위해 디스크를 하나 더 사용하므로 더욱 강력합니다.

이전 기사에서는 RAID 5의 분산 패리티를 살펴봤지만 이 기사에서는 이중 분산 패리티가 있는 RAID 6을 살펴보겠습니다. 다른 RAID보다 추가 성능을 기대하지 마십시오. 그렇다면 전용 RAID 컨트롤러도 설치해야 합니다. 여기 RAID 6에서는 2개의 디스크가 손실되더라도 예비 드라이브를 교체하여 데이터를 다시 가져오고 패리티에서 구축할 수 있습니다.

RAID 6을 설정하려면 세트에 최소 4개 이상의 디스크가 필요합니다. RAID 6에는 일부 세트에도 디스크가 여러 개 있을 수 있습니다. 읽는 동안 모든 드라이브에서 읽으므로 읽기는 더 빠르지만 쓰기는 열악합니다. 여러 디스크에 걸쳐 스트라이프합니다.

이제 우리 중 많은 사람들은 다른 RAID처럼 작동하지 않는 RAID 6을 사용해야 하는 이유에 대해 결론을 내렸습니다. 흠... 이 질문을 하시는 분들은 높은 내결함성이 필요하다면 RAID 6을 선택해야 한다는 점을 아셔야 합니다. 데이터베이스에 대한 고가용성을 갖춘 모든 상위 환경에서는 데이터베이스가 가장 중요하고 중요하기 때문에 RAID 6을 사용합니다. 어떤 비용을 치르더라도 안전해야 하며 비디오 스트리밍 환경에도 유용할 수 있습니다.

RAID 6의 장점과 단점

  1. 성능이 좋습니다.
  2. RAID 6은 패리티 기능에 사용되는 두 개의 독립 드라이브가 필요하므로 비용이 많이 듭니다.
  3. 패리티 정보를 사용하기 위한 두 개의 디스크 용량이 느슨해집니다(이중 패리티).
  4. 두 개의 디스크에 장애가 발생하더라도 데이터 손실이 없습니다. 장애가 발생한 디스크를 교체한 후 패리티에서 재구축할 수 있습니다.
  5. 여러 디스크에서 읽기 때문에 읽기는 RAID 5보다 좋지만 전용 RAID 컨트롤러가 없으면 쓰기 성능이 매우 저하됩니다.

요구사항

RAID 6을 생성하려면 최소 4개의 디스크가 필요합니다. 더 많은 디스크를 추가하려면 가능하지만 전용 RAID 컨트롤러가 있어야 합니다. 소프트웨어 RAID에서는 RAID 6에서 더 나은 성능을 얻을 수 없습니다. 따라서 물리적 RAID 컨트롤러가 필요합니다.

RAID 설정을 처음 접하시는 분들은 아래의 RAID 문서를 읽어 보시기를 권장합니다.

  1. Linux의 RAID 기본 개념 – 1부
  2. Linux에서 소프트웨어 RAID 0(스트라이프) 생성 - 2부
  3. Linux에서 RAID 1(미러링) 설정 – 3부
내 서버 설정
Operating System :	CentOS 6.5 Final
IP Address	 :	192.168.0.228
Hostname	 :	rd6.tecmintlocal.com
Disk 1 [20GB]	 :	/dev/sdb
Disk 2 [20GB]	 :	/dev/sdc
Disk 3 [20GB]	 :	/dev/sdd
Disk 4 [20GB]	 : 	/dev/sde

이 문서는 9개 튜토리얼로 구성된 RAID 시리즈의 5부입니다. 여기서는 소프트웨어 RAID 6 또는 이중 분산 패리티를 사용한 스트라이핑을 만들고 설정하는 방법을 살펴보겠습니다. /dev/sdb, /dev/sdc, /dev/sdd 및 /dev/sde라는 4개의 20GB 디스크를 사용하는 Linux 시스템 또는 서버.

1단계: mdadm 도구 설치 및 드라이브 검사

1. 지난 두 개의 Raid 기사(파트 2 및 P아트 3)를 따르고 있는 경우, 이미 방법을 보여드렸습니다. 'mdadm' 도구를 설치합니다. 이 글을 처음 접하신다면 'mdadm'이 Linux 시스템에서 Raid를 생성하고 관리하는 도구라는 점을 설명하겠습니다. Linux 배포판에 따라 다음 명령을 사용하여 도구를 설치해 보겠습니다.

yum install mdadm		[on RedHat systems]
apt-get install mdadm 	[on Debain systems]

2. 도구를 설치한 후 이제 다음 'fdisk' 명령을 사용하여 RAID 생성에 사용할 연결된 4개의 드라이브를 확인할 차례입니다.

fdisk -l | grep sd

3. RAID 드라이브를 생성하기 전에 디스크에 이미 생성된 RAID가 있는지 디스크 드라이브를 항상 검사하십시오.

mdadm -E /dev/sd[b-e]
mdadm --examine /dev/sdb /dev/sdc /dev/sdd /dev/sde

참고: 위 이미지에서는 감지된 슈퍼 블록이 없거나 4개의 디스크 드라이브에 정의된 RAID가 없음을 보여줍니다. RAID 6 생성을 시작하기 위해 더 나아갈 수도 있습니다.

2단계: RAID 6용 드라이브 파티셔닝

4. 이제 '/dev/sdb', '/dev/sdc', '/dev/에 RAID용 파티션을 만듭니다. sdd' 및 '/dev/sde'는 다음 fdisk 명령을 사용하여 생성됩니다. 여기서는 sdb 드라이브에 파티션을 생성하는 방법과 나머지 드라이브에 대해 동일한 단계를 수행하는 방법을 보여줍니다.

/dev/sdb 파티션 생성
fdisk /dev/sdb

파티션을 생성하려면 아래 지침을 따르십시오.

  1. 새 파티션을 만들려면 'n'을 누르세요.
  2. 그런 다음 기본 파티션으로 'P'를 선택합니다.
  3. 다음으로 파티션 번호를 1로 선택합니다.
  4. Enter 키를 두 번 눌러 기본값을 정의하세요.
  5. 다음으로 'P'를 눌러 정의된 파티션을 인쇄하세요.
  6. 사용 가능한 모든 유형을 나열하려면 'L'을 누르세요.
  7. 파티션을 선택하려면 't'를 입력하세요.
  8. Linux raid auto의 경우 'fd'를 선택하고 Enter를 눌러 적용합니다.
  9. 그런 다음 다시 'P'를 사용하여 변경 사항을 인쇄합니다.
  10. 변경사항을 작성하려면 'w'를 사용하세요.

/dev/sdb 파티션 생성
fdisk /dev/sdc

/dev/sdd 파티션 생성
fdisk /dev/sdd

/dev/sde 파티션 생성
fdisk /dev/sde

5. 파티션을 생성한 후에는 항상 드라이브에서 슈퍼 블록을 검사하는 것이 좋습니다. 슈퍼 블록이 존재하지 않으면 새로운 RAID 설정을 생성할 수 있습니다.

mdadm -E /dev/sd[b-e]1


or

mdadm --examine /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

3단계: MD 장치(RAID) 생성

6. 이제 Raid 장치 'md0'(예: /dev/md0)을 만들고 새로 생성된 모든 파티션에 raid 수준을 적용할 차례입니다. 다음 명령을 사용하여 습격을 확인하십시오.

mdadm --create /dev/md0 --level=6 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1
cat /proc/mdstat

7. 아래 화면 캡쳐와 같이 watch 명령을 사용하여 현재 레이드 진행 상황을 확인할 수도 있습니다.

watch -n1 cat /proc/mdstat

8. 다음 명령을 사용하여 RAID 장치를 확인하십시오.

mdadm -E /dev/sd[b-e]1

참고:: 위 명령은 4개 디스크의 정보를 표시합니다. 정보가 너무 길어 여기에 출력이나 화면 캡처를 게시할 수 없습니다.

9. 그런 다음 RAID 배열을 확인하여 재동기화가 시작되는지 확인합니다.

mdadm --detail /dev/md0

4단계: Raid 장치에 파일 시스템 생성

10. '/dev/md0'에 대해 ext4를 사용하여 파일 시스템을 생성하고 /mnt/raid6에 마운트합니다. 여기서는 ext4를 사용했지만 원하는 대로 모든 유형의 파일 시스템을 사용할 수 있습니다.

mkfs.ext4 /dev/md0

11. 생성된 파일 시스템을 /mnt/raid6에 마운트하고 마운트 지점에서 파일을 확인하면 Lost+found 디렉터리를 볼 수 있습니다.

mkdir /mnt/raid6
mount /dev/md0 /mnt/raid6/
ls -l /mnt/raid6/

12. 마운트 지점 아래에 일부 파일을 생성하고 파일 중 하나에 일부 텍스트를 추가하여 내용을 확인합니다.

touch /mnt/raid6/raid6_test.txt
ls -l /mnt/raid6/
echo "tecmint raid setups" > /mnt/raid6/raid6_test.txt
cat /mnt/raid6/raid6_test.txt

13. /etc/fstab에 항목을 추가하여 시스템 시작 시 장치를 자동으로 마운트하고 아래 항목을 추가합니다. 마운트 지점은 환경에 따라 다를 수 있습니다.

vim /etc/fstab

/dev/md0                /mnt/raid6              ext4    defaults        0 0

14. 다음으로 'mount -a' 명령을 실행하여 fstab 항목에 오류가 있는지 확인합니다.

mount -av

5단계: RAID 6 구성 저장

15. 기본적으로 RAID에는 구성 파일이 없습니다. 아래 명령을 사용하여 수동으로 저장한 다음 '/dev/md0' 장치의 상태를 확인해야 합니다.

mdadm --detail --scan --verbose >> /etc/mdadm.conf
mdadm --detail /dev/md0

6단계: 예비 드라이브 추가

16. 이제 4개의 디스크가 있고 두 개의 패리티 정보를 사용할 수 있습니다. RAID 6에는 이중 패리티가 있기 때문에 디스크 중 하나에 오류가 발생하면 데이터를 얻을 수 있는 경우도 있습니다.

두 번째 디스크에 오류가 발생하면 세 번째 디스크가 손실되기 전에 새 디스크를 추가할 수 있습니다. RAID 세트를 생성하는 동안 예비 드라이브를 추가할 수 있지만 RAID 세트를 생성하는 동안 예비 드라이브를 정의하지 않았습니다. 그러나 드라이브 오류가 발생하거나 RAID 세트를 생성하는 동안 예비 드라이브를 추가할 수 있습니다. 이제 우리는 이미 RAID 세트를 생성했습니다. 이제 시연을 위해 예비 드라이브를 추가하겠습니다.

데모를 위해 새 HDD 디스크(예: /dev/sdf)를 핫플러그했습니다. 연결된 디스크를 확인해 보겠습니다.

ls -l /dev/ | grep sd

17. 이제 모든 RAID에 대해 새로 연결된 디스크가 이미 구성되어 있는지 또는 동일한 mdadm 명령을 사용하고 있지 않은지 다시 확인하세요.

mdadm --examine /dev/sdf

참고: 평소와 같이 앞서 4개의 디스크에 대한 파티션을 생성한 것처럼 마찬가지로 fdisk<를 사용하여 새로 연결된 디스크에 새 파티션을 생성해야 합니다. /강> 명령.

fdisk /dev/sdf

18. 다시 /dev/sdf에 새 파티션을 생성한 후 파티션의 RAID를 확인하고 예비 드라이브를 /dev/md0에 포함시킵니다. > 장치를 습격하고 추가된 장치를 확인합니다.

mdadm --examine /dev/sdf
mdadm --examine /dev/sdf1
mdadm --add /dev/md0 /dev/sdf1
mdadm --detail /dev/md0

7단계: Raid 6 내결함성 확인

19. 이제 어레이에서 디스크 중 하나라도 오류가 발생하는 경우 예비 드라이브가 자동으로 작동하는지 확인해 보겠습니다. 테스트를 위해 드라이브 중 하나에 오류가 발생했다고 개인적으로 표시했습니다.

여기서는 /dev/sdd1을 실패한 드라이브로 표시하겠습니다.

mdadm --manage --fail /dev/md0 /dev/sdd1

20. 이제 RAID 세트의 세부정보를 가져오고 예비 부품이 동기화되기 시작했는지 확인하겠습니다.

mdadm --detail /dev/md0

만세! 여기서 스페어가 활성화되고 재구축 프로세스가 시작된 것을 볼 수 있습니다. 하단에서 결함이 있는 드라이브 /dev/sdd1가 결함으로 표시된 것을 볼 수 있습니다. 다음 명령을 사용하여 빌드 프로세스를 모니터링할 수 있습니다.

cat /proc/mdstat

결론:

여기에서는 4개의 디스크를 사용하여 RAID 6을 설정하는 방법을 살펴보았습니다. 이 RAID 레벨은 중복성이 높고 비용이 많이 드는 설정 중 하나입니다. 다음 기사에서는 중첩 RAID 10을 설정하는 방법과 더 많은 내용을 살펴보겠습니다. 그때까지 TECMINT와 연락을 유지하세요.