더 큰 드라이브가 재 구축 중에 URE를 경험할 가능성이 높아졌다는 주장을 이해하지만, 실제 영향이 무엇인지 잘 모르겠습니다. 이 답변에 따르면 전체 재 구축이 실패하지만 모든 데이터에 액세스 할 수 없습니까? 왜 그런가요? 드라이브의 단일 섹터에서 나온 단일 URE는 최대 몇 개의 파일과 관련된 데이터에만 영향을 미칩니다. 몇 개의 파일이 약간 손상 되어도 어레이가 여전히 재 구축되지 않습니까?
(여기서는 ZFS의 RAID5 구현에 특히 관심이 있지만 모든 RAID5 구현에서 논리는 동일하게 보입니다.)
답변
실제로 특정 RAID 구현에 따라 다릅니다.
-
대부분의 하드웨어 RAID는 재구성을 중단하고 일부는 어레이를 실패한 것으로 표시하여 중단 시킵니다. 이론적 근거는 RAID5 재 구축 중에 URE가 발생하면 일부 데이터 가 손실 된다는 의미 이므로 자동 데이터 손상의 위험이 있으므로 어레이를 완전히 중지하는 것이 좋습니다. 참고 : 일부 하드웨어 RAID (주로 LSI 기반)는 대신 어레이에 구멍 을내어 영향을받는 섹터를 읽을 수없는 것으로 표시하면서 (Linux 소프트웨어 RAID의 동작 방식과 유사) 재 구축을 진행할 수 있습니다.
-
리눅스 소프트웨어 RAID는 a) 어레이 재 구축 중지 ( “고대”MDRAID / 커널 빌드의 유일한 동작) 또는 b) 일부 LBA를 불량 / 접근 불가로 표시하는 재 구축 프로세스를 계속하도록 지시 할 수 있습니다. 이론적 근거는 사용자가 자신의 선택을하도록하는 것이 더 낫다는 것입니다. 결국, 단일 URE는 여유 공간에있을 수 있으며 데이터에 전혀 영향을 미치지 않거나 중요하지 않은 파일에만 영향을 줄 수 있습니다.
-
ZRAID는 일부 파일이 손상된 것으로 표시하지만 재 구축 프로세스를 계속합니다 ( 예는 여기 참조 ). 다시 한 번, 근거는 사용자에게 계속보고하고 다시보고하는 것이 더 좋다는 것입니다.
답변
URE가 발생하면 일반적으로 크기가 256KB-1MB 인 블록에서 일부 데이터 손상이 발생하지만 볼륨의 모든 데이터가 손실되는 것은 아닙니다. RAID5에서 그리 좋지 않은 것은 완전히 다른 것입니다. 재구성 자체는 스트레스가 많으며 두 번째 디스크 장애가 연속으로 발생할 가능성이 높습니다. 이 경우 모든 데이터가 손실됩니다.
답변
나는 다른 방법으로 설명 할 것이다.
RAID 컨트롤러가 URE에서 멈추지 않으면 어떻게됩니까?
나는 서버에서 그것을 살았고, RAID는 URE를 발견하지 못했으며, 재구성 후 손상이 전체 RAID 볼륨에 쌓이기 시작했습니다.
재 구축 후 디스크의 불량 섹터가 증가하기 시작했으며 데이터가 손상되기 시작했습니다.
디스크가 RAID 볼륨에서 시작되지 않았습니다. 컨트롤러 실패는 데이터 무결성을 보호하는 작업입니다.
이 예제는 볼륨이 백업이 아니라 디스크 장애에 대한 복원력을 가지기 때문에 컨트롤러가 데이터 무결성을 위해 URE로 볼륨을 전혀 스러스트 할 수 없다고 생각하도록 작성되었습니다.
답변
이 질문을 읽고 조금 더 배경에 대한 답변을 제안 합니다. 그런 다음 다시 연결 한 질문을 다시 읽으 십시오 .
누군가가이 상황에 대해 “RAID 실패”라고 말하면 RAID의 이점을 잃어 버렸음을 의미합니다. 처음에 RAID 어레이를 설정 한 이유 인 데이터에 대한 지속적인 액세스 권한을 상실했습니다.
모든 데이터를 잃어버린 것은 아니지만 하나의 죽은 드라이브와 (일부) 나머지 드라이브에서 (일부) URE를 복구하는 가장 일반적인 방법은 어레이를 처음부터 완전히 다시 작성하는 것이므로 모든 데이터를 복원해야합니다. 백업에서.