RAID 사용 여부 확인

RAID 사용 여부 확인

나는 Linux 서버를 가지고 있는데 그 하드 디스크 크기를 보고 싶을 때 다음 명령을 사용합니다. df -h
그러나 사실 내 서버는 여러 개의 하드 디스크로 구성되어 있고 원시 디스크 공간은 그 이상이라는 것을 알고 있습니다.
RAID가 있을 수 있습니다.
제 질문은:
서버에서 RAID가 사용되는지 여부와 원시 하드 드라이브 크기를 어떻게 알 수 있습니까?

답변1

Linux 시스템에서 RAID를 구성할 수 있는 위치는 네 가지가 있습니다.

  1. 하드웨어 수준에서. 즉, 시스템에 실제 물리적 RAID 컨트롤러가 있습니다. 소프트웨어에서 이것을 확인할 수 있는 100% 신뢰할 수 있는 쉬운 방법은 없습니다. 그러나 lspci그것이 있는 경우 실행하면 목록이 표시됩니다(100% 확신할 수는 없지만).어떻게나열됩니다).
  2. 펌웨어 수준에서. 이는 일반적으로 하드웨어 수준보다 효율성이 낮고 블록 수준보다 유연성이 떨어지기 때문에 서버 시스템에서는 거의 발생하지 않습니다. 대부분의 Intel 및 AMD SATA 컨트롤러에 있는 "RAID" 모드가 그 예입니다. 나는 이것을 확인하는 방법에 대한 조언이 전혀 없습니다. 어떤 대가를 치르더라도 그것을 피하기 때문입니다(성능은 일반적으로 기껏해야 평범하고 구성에 대한 Linux 지원은 기본적으로 존재하지 않습니다).
  3. 블록 레이어에서. 이는 MD 또는 LVM을 사용하여 수행되는 RAID입니다. 확인하는 방법은 매우 간단합니다. 장치가 나열 되면 /proc/mdstat시스템에 MD RAID가 구성된 것입니다. 장치가 나열되어 있으면 lvs -a시스템에 LVM 기반 RAID가 있을 가능성이 높습니다(속성 열에 r첫 번째 위치로 시작하는 항목이 표시되면 복제(RAID1 또는 RAID10) 또는 삭제 코딩이 포함된 장치가 하나 이상 있는 것입니다. 쉬운 방법은 없습니다. 스트라이프 볼륨(RAID5 또는 RAID6)을 확인합니다.
  4. 파일 시스템에서. 이는 파일 시스템이 ZFS 또는 BTRFS를 사용하는 경우 발생할 수 있습니다. ZFS에서는 어떤 복제/스트라이핑/패리티가 사용되고 있는지 확인하는 방법을 잘 모르겠습니다. BTRFS의 경우 실행하여 btrfs filesystem show볼륨에 여러 장치가 나열되어 있는지 확인합니다(여기서 관심 있는 사항에 대해 이러한 볼륨은 RAID처럼 처리되어야 합니다).

이제 디스크 크기를 파악하는 데 있어서는 정확하지만 df원하는 정보는 표시되지 않습니다. 각 디스크의 크기를 표시하는 것과는 달리 마운트된 각 파일 시스템의 사용량만 표시합니다.

기본 장치에 직접 액세스할 수 있는 경우(위의 사례 3과 4, 일반적으로 사례 1과 2에도 해당) blockdev --getsize64장치에서 실행하여 디스크 크기를 직접 쿼리할 수 있습니다. 장치의 사용 가능한 크기(단위: 킬로바이트).

기본 장치에 직접 액세스할 수 없는 경우(위의 시나리오 1과 2 모두 가능) 보유하고 있는 RAID 컨트롤러의 구성 도구를 통해 해당 장치를 확인해야 합니다.

물론 드라이브 크기를 계산하는 가장 신뢰할 수 있는 방법은 관련된 모든 소프트웨어를 무시하고 케이스를 열고 드라이브 자체를 살펴보는 것입니다. 모든 최신 드라이브에는 레이블에 용량이 표시되어 있습니다.

관련 정보