현재 3 개의 3TB 드라이브와 4TB 드라이브라는 4 개의 장치가있는 Btrfs 파티션이 있습니다. 데이터와 메타 데이터는 RAID 10이므로 6TB의 사용 가능한 공간이 거의 가득합니다. 스토리지가 가득 찰 때 Btrfs의 RAID 5 지원이 성숙 할 것으로 예상했지만 우선 순위는 아닙니다.
내 질문은 : RAID 1보다 RAID 10을 선호하는 이유가 있습니까? 현재 하드웨어의 실제 RAID 1이 각 블록마다 4 개의 복사본으로 3TB의 사용 가능한 공간을 제공해야한다는 것을 알고 있지만 Btrfs는 이러한 방식으로 작동하지 않습니다. 로부터 BTRFS 자주 묻는 질문 :
btrfs는 모든 장치를 저장 영역 풀에 먼저 결합한 다음 파일 데이터가 작성 될 때 청크를 복제합니다. RAID-1은 현재 "다른 장치에있는 모든 데이터의 2 개 사본"으로 정의됩니다. 이는 MD-RAID 및 dmraid와 다릅니다. 이는 n 개의 장치에 대해 정확히 n 개의 복사본을 만듭니다. 3 개의 1TB 장치에있는 btrfs RAID-1에서 1.5TB의 사용 가능한 데이터를 얻습니다. 각 블록은 2 개의 장치에만 복사되므로 지정된 블록을 작성하려면 정확히 2 개의 장치 만 작성하면됩니다. 한 번만 읽을 수 있습니다.
그리고 Jens Erat의 스택 오버플로 :
Btrfs는 데이터 (및 RAID 1 사본)를 블록 단위로 분배하므로 크기가 다른 하드 디스크를 매우 잘 처리합니다. 모든 하드 디스크의 합계를 2로 나눈 값을 받게되며, 비슷한 크기의 쌍으로 묶는 방법을 생각할 필요가 없습니다.
둘 이상의 디스크에 장애가 발생하면 항상 데이터가 손실 될 위험이 있습니다. RAID 1은 동시에 두 개의 디스크가 손실되는 것을 처리 할 수 없습니다. 위의 예에서 잘못된 두 디스크가 죽으면 항상 데이터가 손실됩니다.
이는 RAID 10에서 RAID 1로 재조정하면 4TB 드라이브로 인해 추가로 500GB의 데이터 (6TB가 아닌 6.5TB)를 제공한다는 의미입니까? 그리고 RAID 10을 사용해야 할 이유가 있습니까?
scrub
및 replace
지원은 3.19의 추가되었습니다했지만, 사람들은 여전히 장치 오류 경고의 부족에 대해 불평했다. 매주 스크럽과 매주 / 매월 SMART 자체 테스트를 위해 크론을 설치 했으므로 이러한 문제를 파악할 수 있어야합니다. 시도해 볼게요.
dev stats
다른 cronjob 일 수있는을 사용하여 오류 수를 확인하십시오 .