Apakah array RAID-Z besar sama buruknya dengan array RAID-5 besar?

11

Untuk waktu yang lama saya telah mendengar tentang seberapa buruk sebuah ide array RAID-5 besar (> 5TB?) Hanya karena ada risiko tinggi untuk drive lain gagal.

Apakah RAID-Z1 berhasil memperbaiki ini untuk berbagai ukuran (jika Anda benar-benar membutuhkan nomor, pertimbangkan 4x2TB atau 5x2TB)? Mungkin cara yang lebih aman untuk mereplikasi ulang data yang tidak sekuat pada semua drive?

TheLQ
sumber

Jawaban:

8

Bahkan mengingat apa yang salah satu jawaban lain di sini diletakkan, yaitu bahwa ZFS hanya bekerja dengan blok yang digunakan sebenarnya dan tidak mengosongkan ruang, ya, masih berbahaya untuk membuat vdev RAIDZ1 besar. Sebagian besar kumpulan berakhir setidaknya 30-50% digunakan, banyak yang mencapai maksimum 80% yang disarankan (beberapa melewati itu, saya sangat menyarankan Anda tidak melakukan itu sama sekali, karena alasan kinerja), sehingga penawaran ZFS hanya dengan blok yang digunakan bukanlah kemenangan besar. Juga, beberapa jawaban lain membuatnya terdengar seperti bacaan yang buruk adalah apa yang menyebabkan masalah. Ini tidak benar. Sedikit membusuk di dalam blok bukan apa yang akan mengacaukan Anda di sini, biasanya, itu disk lain hanya akan rusak sementara resilver dari disk pertama menjadi buruk masih terjadi yang akan membunuh Anda .. dan pada 3 TB disk dalam raidz1 besar itu bisa memakan waktu berhari-hari, bahkan berminggu - minggu untuk resilver ke disk baru, sehingga peluang Anda untuk melakukan itu tidak signifikan.

Rekomendasi pribadi saya kepada pelanggan adalah jangan pernah menggunakan RAIDZ1 (setara RAID5) sama sekali dengan disk> 750 GB, hanya, untuk menghindari banyak potensi ketidaknyamanan. Saya baik-baik saja dengan mereka melanggar aturan ini karena alasan lain (sistem memiliki cadangan di tempat lain, data tidak begitu penting, dll), tetapi biasanya saya melakukan yang terbaik untuk mendorong RAIDZ2 sebagai opsi minimum dengan besar disk.

Juga, karena beberapa alasan, saya biasanya merekomendasikan untuk tidak menggunakan lebih dari 8-12 disk dalam strip raidz2 atau 11-15 disk dalam strip raidz3. Anda harus berada pada kisaran rendah dari kisaran tersebut dengan 3 disk TB, dan mungkin bisa OK pada kisaran tinggi dari kisaran tersebut pada disk 1 TB. Bahwa ini akan membantu menjauhkan Anda dari gagasan bahwa lebih banyak disk akan gagal saat resilver sedang berlangsung hanyalah salah satu alasan itu, tetapi yang besar.

Jika Anda mencari beberapa aturan praktis yang masuk akal (sunting 04/10/15 - Saya menulis aturan ini dengan hanya memikirkan disk yang berputar - karena mereka juga logis [mengapa Anda melakukan kurang dari 3 disk dalam raidz1] mereka masuk akal bahkan untuk kolam SSD tetapi semua kolam SSD bukanlah sesuatu di kepala saya ketika saya menuliskan ini):

  • Jangan gunakan raidz1 sama sekali pada> 750 GB disk.
  • Jangan gunakan kurang dari 3 atau lebih dari 7 disk pada raidz1.
  • Jika berpikir untuk menggunakan vdevs 3-disk raidz1, pertimbangkan serius mirror vdev 3-arah sebagai gantinya.
  • Jangan gunakan kurang dari 6 atau lebih dari 12 disk pada raidz2.
  • Jangan gunakan kurang dari 7 atau lebih dari 15 disk pada raidz3.
  • Selalu ingat bahwa tidak seperti array RAID tradisional di mana # disk meningkatkan IOPS, di ZFS itu # dari VDEVS, jadi pergi dengan vdev stripe pendek meningkatkan potensi kumpulan IOPS.
Nex7
sumber
Dengan perubahan ukuran dan kinerja disk, apakah Anda masih merekomendasikan aturan praktis yang sama? (2014)
Lord Loh.
Adakah sumber atau motivasi untuk aturan praktis?
Kenny Evitt
Sumbernya adalah pengalaman saya dan rekan kerja di sekitar 1000-an dari penyebaran ZFS di Nexenta. Adapun pembaruan - aturan berdiri (04/10/15), tidak ada yang berubah yang membuat saya ingin mengedit poin-poin, meskipun saya AKAN mengatakan saya menulis aturan-aturan itu tanpa memikirkan SSD. Aturan tidak harus sama untuk SSD, tergantung pada faktor situasinya. Bersama mereka, Anda juga memiliki beberapa pertimbangan lain, seperti bottlenecking HBA.
Nex7
1
@ Nex7, apa logika untuk ini di artikel blog Anda? "8. RAIDZ - Genap / Ganjil Disk Hitungan: Coba (dan tidak terlalu sulit) untuk menjaga jumlah disk data dalam raidz vdev ke nomor genap"
Costin Gușă
Penting untuk mengingat kasus penggunaan. Di sini, di serverfault kami fokus pada aplikasi profesional / bisnis sehingga jawaban Anda tepat. Yang mengatakan, bagi mereka yang melakukan instalasi konsumen (dan mungkin bahkan aplikasi bisnis terbatas?), Pertimbangkan seberapa buruk kehilangan satu blok dari satu file (mungkin pasangan) dari array Anda jika Anda mengalami kegagalan selama membangun kembali. Bukan masalah besar? Maka RAIDZ1 mungkin baik-baik saja.
Dan Pritts
11

Apakah RAID-Z seburuk R5, tidak. Apakah sebagus R1 atau R10, biasanya tidak.

RAID-Z menyadari adanya titik-titik kosong pada drive, di mana R5 tidak. Jadi RAID-Z hanya perlu membaca area dengan data untuk memulihkan disk yang hilang. Selain itu, data tidak harus bergaris di semua disk. File yang sangat kecil mungkin berada hanya pada satu disk, dengan paritas pada disk lain. Karena RAID-5 ini harus membaca data sebanyak ruang yang digunakan pada array (jika 1mb digunakan pada array 5TB, maka pembangunan kembali hanya perlu membaca 1 mb).

Pergi ke arah lain, jika sebagian besar array besar penuh, maka sebagian besar data perlu dibaca semua disk. Dibandingkan dengan R1 atau R10 di mana data hanya perlu ditarik tepat satu disk (per disk gagal; jika beberapa disk gagal hanya dalam situasi di mana array masih dapat dipulihkan juga).

Apa yang Anda khawatirkan adalah kenyataan bahwa dengan setiap operasi baca sektor ada kemungkinan Anda akan menemukan sektor yang tidak ditulis dengan benar atau tidak lagi dapat dibaca. Untuk drive biasa hari ini sekitar 1x10 ^ -16 (tidak semua drive sama, jadi cari spesifikasi pada drive Anda untuk mengetahui peringkatnya). Ini sangat jarang terjadi, tetapi muncul sekitar sekali setiap 1PB; untuk array 10TB ada 1% peluang array Anda bersulang dan Anda tidak mengetahuinya sampai Anda mencoba memulihkannya.

ZFS juga membantu mengurangi peluang ini, karena sebagian besar sektor yang tidak dapat dibaca terlihat sebelum Anda mulai mencoba membangun kembali array Anda. Jika Anda menggosok larik ZFS Anda secara teratur, operasi gosok akan mengambil kesalahan ini dan mengatasinya (atau mengingatkan Anda sehingga Anda dapat mengganti disk jika itu cara Anda menggulung). Mereka merekomendasikan Anda menggosok disk tingkat perusahaan sekitar satu hingga empat kali sebulan; dan drive tingkat konsumen setidaknya sekali seminggu, atau lebih.

Chris S
sumber
3

Beberapa kelebihan RAID-Z dibanding RAID-5 tradisional adalah tidak memerlukan perangkat keras khusus dan lebih andal dengan menghindari lubang penulisan RAID-5.

Namun, baik RAID-Z dan RAID-5 tidak mempertahankan lebih dari satu kegagalan disk.

Jika Anda ingin selamat dari dua kegagalan disk dengan ZFS, Anda dapat menggunakan RAIDZ2 , dan tiga kegagalan disk RAIDZ3 .

Jlliagre
sumber
1
+1 Juga, checksum perblock memungkinkan ZFS, jika ditemukan korupsi dalam array, untuk memilih file yang terpengaruh. Kebanyakan HBA R5 hanya akan menandai seluruh volume sebagai rusak, atau melaporkan kembali ke OS bahwa suatu sektor rusak, baik cara HBA tidak memiliki cara untuk mengetahui disk mana yang salah dalam skenario korupsi.
Chris S
Diskusi lebih lanjut tentang penanganan kegagalan resilver ZFS
CVn