핵심 요약
이 글은 데비안/우분투 환경에서 mdadm을 사용해 소프트웨어 RAID1(미러)을 설치하고 검증하는 실무 절차를 단계별로 설명합니다. 파티션 계획, RAID 장치 생성, 파일시스템 설정 및 동기화 확인 방법, 문제 발생 시 점검 항목과 대안까지 포함합니다.
개요
원문 출처와 도움을 주신 분들:
- Emidio Planamente의 페이지: http://www.planamente.ch/emidio/pages/linux_howto_root_lvm_raid.php
- Tado의 서버 설정 문서: https://www.howtoforge.com
테스트된 배포판: Debian 3.1 & 3.1r1a sarge, Ubuntu-server 5.10 “The Breezy Badger Release”.
이 문서는 ISPconfig 설치 튜토리얼(https://www.howtoforge.com/perfect_setup_ubuntu_5.10)을 따르던 중 서버에 RAID1을 추가한 실제 절차를 바탕으로 합니다. 모든 명령과 파일 경로는 원문을 유지했습니다.
사전 준비
- 두 개 이상의 물리 디스크(hda, hdb 등)가 있어야 합니다. 본 예시는 hda와 hdb를 사용합니다.
- 관리자(root) 권한이 필요합니다.
- 설치 중 데이터는 모두 삭제될 수 있으니 중요한 데이터는 백업하세요.
- mdadm 도구의 문서를 읽어보세요: http://freshmeat.net/projects/mdadm/
중요 용어 한 줄 정의
- mdadm: 리눅스 소프트웨어 RAID를 구성·관리하는 유틸리티입니다.
파티션 계획 예시
원문에서는 다음 파티션 스킴을 사용했습니다(각 디스크에 동일하게 생성).
- /boot 50 MB
- swap 1 GB
- / 10 GB
- /var 나머지 전체
각 파티션을 파일시스템(ext3 등)으로 만들기 전, 파티션 타입을 “Linux RAID”로 설정하여 두 디스크에 동일한 레이아웃을 만듭니다. 예: 2 디스크 × 4 파티션 = 총 8개 파티션.
소프트웨어 RAID 구성 단계
- 설치 프로그램이나 파티션 도구에서 두 디스크에 동일한 크기의 파티션을 만듭니다. 파티션 타입은 “Linux RAID”로 설정합니다.
- 파티션 설정이 끝나면 “Configure Software RAID” 항목으로 이동합니다. 이 메뉴는 mdadm을 활용한 RAID 작업을 수행합니다.
- 원하는 RAID 레벨을 선택합니다. 예시에서는 백업 목적이므로 RAID1(미러)을 선택했습니다. RAID0, RAID1, RAID5 등 선택 가능.
- 동일한 크기의 파티션 2개를 묶어 하나의 RAID 디바이스로 만듭니다. 두 디스크의 /boot 파티션끼리, swap 파티션끼리, / 파티션끼리, /var 파티션끼리 각각 묶습니다. 결과적으로 4개의 RAID1 장치가 생성됩니다.
- RAID 구성 화면을 닫고 파티션 화면으로 돌아가면 4개의 새로운 RAID1 항목이 보입니다. 각각을 선택하여 파일시스템 타입과 마운트 지점을 지정합니다. 예시 설정:
- 첫 번째: ext3, 마운트 지점 /boot
- 두 번째: swap
- 세 번째: ext3, 마운트 지점 /
- 네 번째: ext3, 마운트 지점 /var
- 설정을 저장합니다. RAID 동기화(리빌드)는 시간이 걸립니다. 시스템 성능 저하가 발생할 수 있으니 인내심을 가지세요. 원문에서는 동기화 동안 시스템이 한 시간 이상 크게 느려졌다고 보고합니다.
RAID 동기화 확인
동기화 상태는 다른 콘솔(예: ALT+F2)에서 아래 명령으로 확인할 수 있습니다.
cat /proc/mdstat
또는 지속적으로 모니터링하려면 다음을 사용합니다.
watch cat /proc/mdstat
원문에서 기록된 예시 출력(변형없이 원문 보존):
root@server1:/home/patje/install_ispconfig# cat /proc/mdstat
Personalities : [raid1]md3 : active raid1 sda4[0] sdb4[1] 133596416 blocks [2/2] [UU]* #Creating%20RAID%20devices *md2 : active raid1 sda3[0] sdb3[1] 24410688 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1] 1951808 blocks [2/2] [UU]
md0 : active raid1 sda1[0] sdb1[1] 120384 blocks [2/2] [UU]
unused devices: *
위 출력은 md 장치들이 active 상태이고, 각 레이드의 구성원이 모두 정상([UU])임을 보여줍니다. 리빌드가 진행 중이면 [U_] 또는 복구 퍼센트(progress) 정보가 표시됩니다.
설치 계속 및 mdadm 학습
레벨과 파일시스템을 설정한 뒤, 데비안/우분투 설치 프로그램은 나머지 설치를 진행합니다. 설치 완료 후에는 mdadm 매뉴얼과 옵션을 숙지하세요. mdadm으로는 다음 작업이 가능합니다.
- RAID 생성, 삭제
- RAID 디바이스 상태 점검
- 결함 디스크 교체 및 재동기화
mdadm 다중 사용 예시(기본 참고용):
# RAID 생성 예시(단순 예시, 실제 디바이스명과 옵션 확인 필수)
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
# 상태 확인
mdadm --detail /dev/md0
# 구성 파일 업데이트(영구 저장)
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
중요: 위 명령은 예시이며, 실제 환경에서는 파티션명과 옵션을 정확히 확인한 뒤 실행하세요.
문제 해결 및 점검 체크리스트
- 동기화가 오래 걸릴 때: 다른 I/O 작업을 줄이고, 리빌드가 완료될 때까지 기다립니다.
- 한 디스크가 빠져있거나 실패한 경우: mdadm으로 결함(disabled) 디바이스를 확인하고 교체 후 re-add합니다.
- 부팅 문제: /boot가 RAID로 설정되어 있고 부트로더가 RAID를 지원하지 않으면 부팅에 실패할 수 있습니다. 부트로더(grub)가 RAID 구성과 호환되는지 확인하세요.
- fstab 설정: 설치 후 /etc/fstab에 올바른 UUID나 /dev/mdX를 사용했는지 확인합니다.
대안과 고려사항
- 하드웨어 RAID 대체: 하드웨어 RAID 컨트롤러는 더 높은 성능과 부팅 통합을 제공하지만 비용과 컨트롤러 의존도가 증가합니다.
- LVM + RAID 조합: LVM을 RAID 위에 올리거나 RAID 위에 LVM을 올리는 구성도 가능하며 유연성을 위해 자주 사용됩니다. 순서에 따라 장단점이 다릅니다.
- RAID 레벨 선택: 디스크 수와 목적(성능 vs 내구성)에 따라 RAID 레벨을 결정하세요. RAID1은 미러, RAID5는 패리티 분산으로 용량 효율이 좋습니다.
역할 기반 체크리스트
시스템 관리자
- 파티션 크기와 타입을 두 디스크에 동일하게 생성했는가?
- mdadm으로 RAID를 생성하고 /etc/mdadm/mdadm.conf에 저장했는가?
- /etc/fstab에 올바른 엔트리를 추가했는가?
- 부트로더가 RAID 부팅을 지원하는가?
운영팀
- RAID 리빌드 시 시스템 부하를 모니터링하고 필요시 스케줄 조정했는가?
- 디스크 장애 발생 시 교체 절차를 문서화했는가?
간단한 체크 명령 모음(치트 시트)
- 상태 확인: cat /proc/mdstat
- 상세 확인: mdadm –detail /dev/mdX
- 구성 스캔 출력: mdadm –detail –scan
- 구성 파일에 추가: mdadm –detail –scan >> /etc/mdadm/mdadm.conf
- RAID 생성(예시): mdadm –create /dev/md0 –level=1 –raid-devices=2 /dev/sda1 /dev/sdb1
수용 기준
- 모든 RAID 디바이스가 active 상태여야 합니다.
- /proc/mdstat 출력에서 각 RAID 라인에 [UU]와 같이 모든 멤버가 정상이어야 합니다.
- 설치 완료 후 시스템이 정상적으로 부팅되어야 합니다.
한 줄 용어집
- mdadm: 리눅스 소프트웨어 RAID 관리 도구.
- /proc/mdstat: 커널이 보고하는 RAID 동기화 및 상태 정보 파일.
요약
이 가이드는 파티션을 “Linux RAID” 타입으로 만들고 mdadm 기반의 소프트웨어 RAID1을 구성하는 실제 절차를 설명합니다. RAID 생성, 파일시스템 지정, 동기화 확인, 문제 해결과 대안을 포함해 초보자가 따라할 수 있도록 구조화했습니다. 설치 전에 백업을 반드시 하고, 부트로더 호환성을 확인하세요.
중요
부팅 파티션을 RAID로 구성할 경우 부트로더와의 호환성 문제를 반드시 확인해야 합니다. 실무에서는 테스트 환경에서 절차를 먼저 검증한 뒤 운영 서버에 적용하세요.