두 개의 디스크로 ZFS RAIDZ zpool을 시작한 다음 세 번째 디스크를 추가 하시겠습니까?


13

두 개의 2TB HDD가 있고 첫 번째 ZFS zpool을 시작하려고한다고 가정하겠습니다. 이 두 개의 디스크로만 RAIDZ를 생성하여 2TB의 사용 가능한 스토리지를 제공 한 다음 (올바로 이해하면) 총 2TB의 사용 가능한 스토리지를 제공하는 다른 2TB HDD를 추가 할 수 있습니까? 처음에 올바른 3 개의 HDD가 있어야합니까?

내가 묻는 이유는 이미 파일이 가득 찬 2TB 드라이브가 하나 있기 때문입니다. zpool로 전환하고 싶지만 가능한 경우 2TB 드라이브를 2 개만 더 구매하고 싶습니다. 내가 이해 한 바에 따르면, RAIDZ는 RAID5와 비슷하게 작동합니다 (일부 큰 차이점이 있지만 용량 측면에서). 그러나 RAID5에는 3 개 이상의 드라이브가 필요합니다. RAIDZ에 동일한 요구 사항이 있는지 궁금합니다.

내가해야한다면, 나는 세 개의 드라이브를 구입하고 거기에서 시작하여 나중에 네 번째 드라이브를 추가 할 수 있지만 두 개로 시작하여 세 개로 이동하면 80 달러를 절약 할 수 있습니다.

답변:


13

일부 사람들이 사용하는 방법이지만 권장하지 않습니다.

  1. 2 개의 드라이브와 스파 스 파일 (오른쪽 가상 드라이브 크기의 다른 드라이브)이있는 풀을 만든 다음 스파 스 파일을 즉시 오프라인으로 만듭니다. 이렇게하면 용량이 2 개의 드라이브이고 중복성이없는 성능이 저하 된 RAID-Z1 풀이 생성됩니다.
  2. 성능이 저하 된 풀에 데이터를 복사하십시오.
  3. 오프라인 스파 스 파일을 세 번째 디스크 및 리 실버로 교체하십시오.

vdev가 생성 된 "장치"의 수는 생성 후 영구적입니다. 따라서 작성시 세 개의 "디스크"가 있어야합니다. 이 방법을 사용하면 성능이 저하 된 RAID-Z1 풀을 만들고 나중에 중복성을 복원 할 수 있습니다.

이 방법은 복사하는 동안과 세 번째 드라이브가없는 동안 중복 / 패리티가 없기 때문에 권장되지 않습니다. 그러나 작동 할 수 있습니다.


1
이 답변에 감사드립니다. 항상 권장되는 솔루션을 찾고있는 것은 아닙니다. 때때로 우리는 모든 솔루션을 찾고 있습니다. 설명하는 방법에 대한 링크는 좋을 것입니다.
jsaddwater

불행히도 250GB 드라이브에서 1TB 스파 스 파일을 만들 수 없으므로 2 개의 1TB 드라이브 + 하나의 스파 스 파일 (10GB)로 RAIDZ 어레이를 만들 때 어레이는 3x10GB가됩니다. 스파 스 파일을 제거한 후 세 번째 드라이브에서 3x10GB의 작은 배열로 데이터를 복사 할 수 없었고 배열을 저하 상태에서 성장시킬 수 없기 때문에 배열을 확장 할 수 없었습니다. Catch 22.
jsaddwater

6

불행히도 현재로서는 불가능합니다 .

디스크를 RAID-Z, RAID-Z2 또는 RAID-Z3 vdev에 열로 추가 할 수 없습니다. 이 기능은 곧 추가 될 예정인 블록 포인터 재 작성 기능에 따라 다릅니다. 그러나 새 RAID-Z vdev를 만들어 zpool에 추가 할 수 있습니다.

RAID-Z1은 2 개의 드라이브에서만 작동 할 수 있지만 나중에 추가 드라이브를 추가 할 수없는 경우에는 유용하지 않습니다. RAID-Z (RAID 5와 같은)는 사용 가능한 저장 공간 측면에서 사용되는 드라이브 수가 많을수록 더 효율적입니다.


4
여기에 우리는 3 년 후 Wikipedia 페이지에 여전히 "추가 될 예정"이라고 표시됩니다. ... :(
Icydog

2
@Icydog real soon now ;-)
jlliagre

지금은 어때? :)
black_puppydog

3

RAID-Z1은 두 개의 디스크에만 사용할 수 있지만 두 디스크의 섹터 크기가 다르기 때문에 미러링 할 수없는 경우를 제외하고는 미러링과 비교할 때 전혀 이점이 없습니다 (예 : 새 4K 섹터 디스크 및 이전 512 바이트 디스크).

이미 언급했듯이 장치를 RAID-Z에 추가하는 것은 지원되지 않습니다. 기존 RAID-Z에 디스크를 추가하려는 경우 유일한 방법은 데이터를 다른 곳에서 백업하고 풀을 파괴 한 다음 추가 디스크를 추가하여 다시 생성 한 다음 데이터를 복원하는 것입니다.


3

언급 할 "평판"이 충분하지 않으므로 별도의 답변으로 작성하십시오.

RE : Holger G 제안

나는 이것이 안전하지 않다는 데 동의하지만 ...이 스레드는 나중에 추가 드라이브를 얻을 수있을 때 RAIDZ1에서 RAIDZ2로가는 방법을 찾고 있습니다.

따라서 Holgers 제안은 저에게 효과적입니다. 희소 한 파일로 하나의 개발자로 RAIDZ2를 생성하고 파일 장치를 오프라인으로 만들고 잠시 동안 효과적으로 RAIDZ1을 만든 다음 어느 시점에서 실제 장치를 추가하여 중복성을 두 배로 늘립니다.

OP와 마찬가지로 하나의 드라이브가 새로운 RAID에 복사 할 데이터를 보유하는 상황에서도 작동합니다.


RAIDZ2는 어리석은 일입니다. 구성이 유용 할 수있는 유일한 상황 은 두 드라이브 의 상관 된 오류입니다. 이를 방지하기 위해 두 개의 디스크를 사용하는 대신 다른 제조업체 및 / 또는 다른 모델의 동일한 용량의 디스크를 사용하여 이러한 장애로부터 자신을 보호하십시오 .
Mikhail T.

@MikhailT. -다른 제조업체를 사용하는 것은 좋은 조언이지만 RaidZ2가 바보라고 말하는 것은 끔찍한 조언입니다. 재 구축은 다른 드라이브를 죽일 가능성이 높습니다.
antiduh

재 구축은 다른 드라이브를 죽일 가능성이 큽니다. 모든 드라이브가 이미 고장난 드라이브와 동일하여 상관 된 고장이 발생할 수 있습니다. 이 경우 두 개의 드라이브가 있어도 도움이되지 않습니다 . 한 번 에 모두 실패 할 수 있습니다. 예상되는 드라이브 장애가 독립적 인 경우 여러 디스크를 중복성으로 희생 해도 신뢰성이 크게 향상되지는 않습니다 .
Mikhail T.

0

빛을 비추는 요점 :

  • 한 디스크가 언제 실패하는지 미리 알지 못하고 실패 할 수 있다면 ... 왜 두 디스크가 동시에 실패 할 수 없습니까? 또는 3 개 또는 4 개 또는 5 개 등?

그러나이 다른 상황에 대해 생각하십시오.

  1. 하나의 디스크가 고장났습니다
  2. 새것을 넣고 안전하게 다시 만들도록하세요
  3. 이러한 '재 구축'이 완료된 동안 (어쩌면 몇 시간 동안) 다른 디스크가 실패합니다

당신은 모든 것을 잃었다! 이것이 동시에 두 개의 디스크 장애를 허용하는 주된 이유입니다.

그러나 만약 당신이 정말로 나처럼 편집증이라면, 다른 RAID 레벨이 아닌 Stripping 만 사용할 것입니다.

내가 화났어? 아니요, 물론 ... 한 디스크가 고장 나더라도 모든 데이터가 느슨해지지 않습니다! 나는 정말 편집증이기 때문에 아무것도 풀지 않을 것입니다.

나의 편집증 계획 :

  • 버스의 최대 대역폭 (Sata III, USB 3.1 Gen 2 등)에 맞게 스트립 기능이있는 ZFS (2x, 3x, 4x ... 또는 10x 디스크)
  • 그리고 다른 유사한 5 ZFS (전원이 없으므로 손상되지 않습니다)

이러한 ZFS를 모두 사용하는 방법 :

  • 5 개의 슬레이브가있는 마스터와 같이 동시에 두 개만 가져 오십시오 (변경 사항을 동기화하기 위해).

편집증 관점 :

  • 한 ZFS가 실패하면 ... 폭풍 ligth에 의해 맞았거나, 화상을 입거나, 도난당하는 등 ... 다른 장소 (은행, 벙커, 인터넷 클라우드, 친구 집, 휴가 집 등) 안에 여전히 5 개의 사본이 더 있습니다.

그들 중 일부를 동기화하려면 ... 나는 하나의 ZFS를 가지고 다니고 다른 물리적 장소 / 국가 / 등에서 동기화를 수행해야합니다. 그래서 나는 끔찍한 노예 중 하나를 사용합니다.

한 ZFS의 HDD에 대해 이야기 할 때 다른 ZFS의 3.1 Gen2 64GiB USB 스틱이 될 수 있습니다! 동일한 크기, 유형 등일 필요는 없습니다.

정말 편집증의 관점.

너무 편집증 적이 지 않은 사람들을 위해, 그리고 그들이 모두를 풀 수 있도록 지원할 수 있다면 ... RaidZ 레벨이 있습니다 ... 나는 내 자신에 의해 '거울'을 선호합니다.

수동 '동기화'의 또 다른 장점은 자신의 실패입니다.

  • hypotetic perfect는 결코 ZFS 시스템에 절대 실패하지 않지만 파일을 삭제하기로 결정했습니다 ... 며칠 후에 삭제하려는 파일을 놓치고 원하지 않는 파일을 삭제했습니다 (인적 오류로). 백업이 없으면 운이 나빠집니다.

다시 ... 백업이 필요한 경우 스트라이핑만으로 최대 ZFS 속도를 높이 지 않겠습니까? ... 결국에도 백업을 수행해야합니다.

대답은 다음과 같습니다.

  • 24 시간 온라인 시스템을위한 시스템 파티션

데이터 파티션의 경우 사용중인 주 ZFS가 실패하자마자 외부 USB ZFS 클론을 연결할 준비가 된 것과 비교하여 RaidZ 레벨이 필요하지 않습니다 ... ZFS 메인 포인트를 마운트 해제하고 다른 좋은 ZFS를 마운트하십시오 ... 그런 다음 다른 컴퓨터에서 손상된 오프라인 ZFS를 다시 만듭니다.

컴퓨터가 두 대인 경우 몇 초 (부팅 시간)의 다운 타임으로 7x24h에 필요한 것을 갖습니다.

사진을 안전하게 유지하려는 개인 사용자의 경우 두 개 이상의 ZFS를 사용하고 나머지 하나와 동시에 연결되지 않은 최소 하나 또는 두 개의 ZFS를 사용하십시오. 편집증? 전혀.

그것은 단지 일이 정말로 잘못 될 수있는 어려운 방법을 배우는 것입니다!

분명히하기 위해 ... 무슨 일이 ...

  1. 나는 PC를 정상적으로 사용하고 있었다
  2. 데이터 실패
  3. 나는 HDD를 꺼내고 괜찮은 것을 배치
  4. 그들에 대한 데이터도 10 초 이내에 손상되었습니다
  5. 나는 모든 데이터를 잃어 버렸다.

문제는 실제로 디스크가 아닌 컨트롤러 (메인 보드에 통합)에있었습니다. 읽기 / 쓰기 작업에서 데이터가 변경되었습니다.

그 이후로 ... 내 데이터는 더 이상 내부 SATA 디스크에 있지 않습니다. 외부 USB 3.1 Gen 2 인클로저에만 있습니다. (각 디스크는 자체 인클로저에 있음) ... 실패 할 때 ... RAM, 프로세서, USB 포트 등과 같은 실제 데이터로 더미 USB 인클로저를 사용하여 패턴을 테스트하기 위해 PC에 연결하기 전에 모든 것을 테스트하십시오. 실패한 디스크 ... 다른 인클로저에서 작동하거나 다른 PC에서 작동하는지 여부 등 ... 실패의 원인이되는 사람을 실제로 알기 위해 ... 정상 편집증입니다.

그러나 경험을 통한 학습 :

  • 디스크 고장으로 인해 디스크 고장이 발생했다는 사실을 절대로 믿지 마십시오. 디스크를 테스트하십시오 ... 컨트롤러, 케이블, 전원 공급 장치 등일 수 있습니다.
  • 또는 최악의 경우 RAM 일 수 있습니다.

RAM에 대해 말하면, 나는 오래되지 않은 PC (BIOS 기반 64 비트 프로세서)를 사용하여 (3 개의 동일한 RAM 모듈을 생각하면 A, B 및 C라고 부릅니다) :

  • PC에 A를 넣으면 완벽하게 작동합니다 (네 개의 슬롯에 관계없이)
  • 나는 PC에 B를 넣었다. (네 개의 슬롯에 관계없이)
  • C를 PC에 완벽하게 작동시킵니다 (그러나 4 개의 슬롯 중 하나에서만, 다른 트리에서는 많은 실패, BSOD 등이 발생합니다)
  • A & B를 넣으면 많은 실패, BSOD 등이 발생합니다.
  • 나는 PC에 A & C를 넣어 완벽하게 작동합니다 (네 개의 슬롯에 상관없이)
  • 나는 PC에 B & C를 넣었습니다. (네 개의 슬롯에 상관없이) 완벽하게 작동합니다.
  • PC에 A & B & C를 넣으면 많은 실패, BSOD 등이 발생합니다.

다른 PC에서 이러한 모듈을 테스트하면 모든 모듈이 실제로 훌륭하고 문제가 없으며 결함이 없습니다.

일이 정말로 화를 낼 수 있습니다 ... 그리고 모든 조합을 테스트하지 않으면 실패한 것을 알 수 없습니다 ... 그렇습니다 네 개의 슬롯에서 세 개의 램 모듈의 모든 조합을 테스트하기 위해 편집증이 있습니다 ... 맹인 ... 실패한 모듈은 다른 모듈이 있으면 완벽하게 작동하지만 다른 두 개는 그렇지 않은 경우 ... 그렇습니다. 나는 다른 세 가지로 테스트하여 실패했습니다!

아, 그렇습니다. 같은 브랜드, 종류 등 .. 동일 ... 그것들을 구별하는 유일한 방법은 제가 그런 스티커를 붙이는 것입니다! 그리고 그렇습니다, 동시에 샀습니다, 그들은 같은 제조용 잠긴 플라스틱 상자에 왔습니다.

때때로 ZFS 오류는 RAM으로 인해 발생할 수 있습니다. 그러면 RaidZ의 수에 관계없이 모든 것을 잃을 수 있습니다.

아, 잊어 버리세요 ... ECC 메모리를 사용하십시오. 그렇지 않으면 ZFS를 신뢰할 수 없습니다! 전송 된 순서대로 쓰거나 (또는 ​​전원 차단 상태에서 모두 수행하도록) 설계된 경우가 아니라면 내부 캐시, internat RAID 등이있는 HDD를 사용하지 마십시오.

갑작스러운 전원 손실 후 플레이트에 모든 캐시를 기록하기에 충분한 내부 에너지 용량을 가진 HDD 만 사용합니다!

이 모든 점 / 약점은 하나의 결론으로 ​​나를 보자.

  • 작업 속도를 높이고 자체 백업을 수행
  • 오프라인 및 전원없이 약 100 % 복사
  • 전원을 받고 결함이있는 부품을 교체 할 준비가 된 것

그렇기 때문에 USB HDD가 10 개 이상인 PC가 2 대 이상 (5 ZFS 사본 * 3 개의 HDD가 각각 제거됨) ... 안전하고 속도가 가장 좋은 이유는 무엇입니까? 그러나 나는 최악의 부분을 얻습니다 ... 주기적으로 모든 것을 동기화해야합니다 ...하지만 데이터 안전이 가장 중요한 부분입니다! 또한 나는 그런 동기화를 위해 많은 것을 기다리기를 원하지 않습니다 (일명, 스트라이핑이 작동합니다).

그리고 3 * HDDs 스트라이프가 실패하면 ... 어떤 ZFS copie가 온라인에 있고 작동하는 동안 몇 시간 / 일 / 주 동안 이러한 세 가지가 실패했는지 테스트 할 수 있습니다. 2 개는 괜찮습니다. 새로운 제품을 구매하고 (아마 30 일에서 45 일 정도 소요될 수 있습니다) 3 * HDD ZFS를 다시 만들어 데이터를 다시 5 번째 사본으로 가져 오십시오.

전혀 싸지 않다! 그러나 주요 데이터 센터 가격이 아니며 전기 요금이 없습니다 (대부분의 HDD에는 전원이 공급되지 않고 동시에 3 또는 6에 불과합니다).

누군가 아이디어가 유용하다고 생각하기를 바랍니다 (매일 사용합니다).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.