Hardware RAID information on Linux: Difference between revisions
Jump to navigation
Jump to search
(Added Knowledge Graph section) |
(Fix: remove --- horizontal lines (12 removed)) |
||
| Line 20: | Line 20: | ||
* 언제 사용하는가? — 서버 도입, 디스크 교체, RAID 재구성 | * 언제 사용하는가? — 서버 도입, 디스크 교체, RAID 재구성 | ||
== Purpose == | == Purpose == | ||
| Line 30: | Line 29: | ||
* Non-goals: RAID 구성 자체 (Storcli 문서 참조), 소프트웨어 RAID | * Non-goals: RAID 구성 자체 (Storcli 문서 참조), 소프트웨어 RAID | ||
== Key Concepts == | == Key Concepts == | ||
| Line 64: | Line 62: | ||
|} | |} | ||
== Architecture == | == Architecture == | ||
| Line 82: | Line 79: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Workflow == | == Workflow == | ||
| Line 116: | Line 112: | ||
|} | |} | ||
== Detailed Explanation == | == Detailed Explanation == | ||
| Line 219: | Line 214: | ||
* 디스크 교체 전 smartctl으로 건강 상태 확인 | * 디스크 교체 전 smartctl으로 건강 상태 확인 | ||
== Configuration == | == Configuration == | ||
| Line 243: | Line 237: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Examples == | == Examples == | ||
| Line 276: | Line 269: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Best Practices == | == Best Practices == | ||
| Line 287: | Line 279: | ||
* RAID 구성은 Storcli 등 공식 도구 사용 | * RAID 구성은 Storcli 등 공식 도구 사용 | ||
== Limitations == | == Limitations == | ||
| Line 295: | Line 286: | ||
* 일부 컨트롤러는 전용 관리 도구 필요 (HP SmartArray 등) | * 일부 컨트롤러는 전용 관리 도구 필요 (HP SmartArray 등) | ||
== References == | == References == | ||
| Line 301: | Line 291: | ||
* https://community.hpe.com/t5/operating-system-linux/how-to-partition-a-raid-hard-disk/td-p/4742335 | * https://community.hpe.com/t5/operating-system-linux/how-to-partition-a-raid-hard-disk/td-p/4742335 | ||
== Related Pages == | == Related Pages == | ||
| Line 312: | Line 301: | ||
* [[Linux File System Types]] | * [[Linux File System Types]] | ||
[[Category:Linux]] | [[Category:Linux]] | ||
Latest revision as of 11:28, 17 July 2026
Hardware RAID Information on Linux
Overview
하드웨어 RAID 컨트롤러는 RAID 연산을 위한 전용 프로세서를 탑재하여 서버 CPU 부하를 줄입니다. Linux에서 하드웨어 RAID 정보 확인, 디스크 식별, 파티션/포맷/마운트 방법을 다룹니다.
Summary
- 무엇인가? — Linux에서 하드웨어 RAID 정보 확인 및 관리
- 왜 필요한가? — RAID 상태 모니터링, 디스크 교체, 파티션 구성
- 언제 사용하는가? — 서버 도입, 디스크 교체, RAID 재구성
Purpose
이 문서가 존재하는 이유
- Goal: Linux에서 하드웨어 RAID 정보 확인, 디스크 식별, 파티션 구성 방법 제공
- Scope: lspci, lsscsi, lshw, smartctl, parted, mkfs, mount
- Non-goals: RAID 구성 자체 (Storcli 문서 참조), 소프트웨어 RAID
Key Concepts
| Concept | Description | Related |
|---|---|---|
| Hardware RAID | 전용 프로세서로 RAID 연산 | Hardware RAID information on Linux |
| HBA/RAID controller | RAID 컨트롤러 개요 | HBA/RAID controller |
| Storcli | Broadcom/LSI RAID 관리 도구 | Storcli |
| smartctl | 디스크 SMART 모니터링 | Smartctl |
| lsscsi | SCSI 디바이스 목록 | Hardware RAID information on Linux |
| /dev/sdX | Linux 디바이스 이름 | Hardware RAID information on Linux |
Architecture
하드웨어 RAID 아키텍처:
graph TD
A[Linux OS] --> B[/dev/sdX]
B --> C[RAID 컨트롤러]
C --> D[Physical Disk 1]
C --> E[Physical Disk 2]
C --> F[Physical Disk N]
G[lspci/lsscsi/lshw] --> C
H[smartctl] --> C
I[Storcli] --> C
Workflow
| Stage | Input | Output |
|---|---|---|
| Detect Controller | grep raid | Controller info |
| List Disks | lsscsi | RAID group list |
| Check Health | smartctl -d megaraid | Disk health |
| Partition | parted | Partition table |
| Format | mkfs.ext4 | Filesystem |
| Mount | mount / fstab | Mounted filesystem |
Detailed Explanation
하드웨어 RAID란
하드웨어 RAID 컨트롤러는 전용 프로세서를 탑재하여 RAID 연산을 처리합니다. 이로 인해 서버 CPU는 RAID 계산 부하에서 해방됩니다.
자세한 HBA/RAID 컨트롤러 개요는 HBA/RAID controller 문서를 참조하세요.
하드웨어 RAID 정보 확인
# RAID 컨트롤러 정보 확인
$ lspci -knn | grep -i raid
# RAID 제조사 및 모델 목록
$ lsscsi
# 디스크 상세 정보
$ lshw -class disk
# RAID 배열 정의 확인
$ dmesg | grep -i scsi
# RAID 배열 디스크 정보
$ smartctl --all /dev/<raid array>
# 물리적 디스크 건강 상태
$ sudo smartctl --all -d megaraid,<disk #> /dev/<raid array>
- smartctl** 페이지에서 더 많은 예시를 확인할 수 있습니다. Identify a defective hard drive 가이드에서는 결함 디스크 식별 방법을 다룹니다.
하드웨어 RAID 디바이스 이름
하드웨어 RAID 그룹은 컨트롤러에 따라 다른 이름으로 표시됩니다:
| Controller type | Description | Example |
|---|---|---|
| HP SmartArray | SmartArray 연결 디스크 | /dev/cciss/cXdY /dev/cciss/cXdYpZ (파티션) |
| LSI Logic Megaraid | 표준 Linux 이름 사용 | /dev/sdX |
| Broadcom/Avago | 표준 Linux 이름 사용 | /dev/sdX |
- HP SmartArray 파티션 예시:**
- `/dev/cciss/c0d0` — 컨트롤러 0, 디스크 0
- `/dev/cciss/c0d0p1` — 컨트롤러 0, 디스크 0, 파티션 1
RAID 그룹 파티션, 포맷, 마운트
파티션 확인
# RAID 그룹 확인
$ lsblk
$ blkid
파티션 생성
# GPT 파티션 테이블 생성 (전체 용량)
$ sudo parted -s -a optimal /dev/sda mklabel gpt mkpart primary 0% 100%
파일시스템 포맷
# ext4 포맷
$ sudo mkfs.ext4 /dev/sda1
# xfs 포맷
$ sudo mkfs.xfs /dev/sda1
마운트
# 수동 마운트
$ sudo mount /dev/sda1 /mnt/data
# /etc/fstab에 영구 설정 추가
/dev/sda1 /mnt/data ext4 defaults 0 2
RAID 구성 팁
- 하드웨어 RAID 위에 소프트웨어 RAID를 중복으로 구성하지 마세요
- RAID 구성은 Storcli 등 컨트롤러별 도구로 수행
- 디스크 교체 전 smartctl으로 건강 상태 확인
Configuration
# RAID 컨트롤러 확인
$ lspci -knn | grep -i raid
# 디스크 목록
$ lsscsi
# 디스크 건강 상태
$ sudo smartctl --all -d megaraid,0 /dev/sda
# 파티션 생성
$ sudo parted -s -a optimal /dev/sda mklabel gpt mkpart primary 0% 100%
# 파일시스템 포맷
$ sudo mkfs.ext4 /dev/sda1
# 마운트
$ sudo mount /dev/sda1 /mnt/data
Examples
Example 1: RAID 정보 확인
# 컨트롤러 확인
$ lspci -knn | grep -i raid
# 디스크 목록
$ lsscsi
# 디스크 상세
$ lshw -class disk
Example 2: RAID 디스크 포맷 및 마운트
# 파티션 생성
$ sudo parted -s -a optimal /dev/sda mklabel gpt mkpart primary 0% 100%
# ext4 포맷
$ sudo mkfs.ext4 /dev/sda1
# 마운트
$ sudo mount /dev/sda1 /mnt/data
# /etc/fstab에 추가
echo '/dev/sda1 /mnt/data ext4 defaults 0 2' | sudo tee -a /etc/fstab
Best Practices
- 하드웨어 RAID 위에 소프트웨어 RAID 중복 구성 금지
- 디스크 교체 전 smartctl으로 건강 상태 확인
- GPT 파티션 테이블 사용 (UEFI 호환)
- /etc/fstab에 UUID 사용 (디바이스 이름 변경 방지)
- 정기적인 smartctl 모니터링
- RAID 구성은 Storcli 등 공식 도구 사용
Limitations
- 컨트롤러별로 디바이스 이름이 다를 수 있음
- smartctl은 RAID 백 디스크에 megaraid,<DID> 옵션 필요
- 일부 컨트롤러는 전용 관리 도구 필요 (HP SmartArray 등)
References
Related Pages
Knowledge Graph
Related
→ Linux Kernel Tuning → SSD → systemd → LVM → iptables → Ubuntu → Storcli → fstab