Mulai ZFS RAIDZ zpool dengan dua disk lalu tambahkan yang ketiga?

13

Katakanlah saya memiliki dua HDD 2TB dan saya ingin memulai ZFS zpool pertama saya. Apakah mungkin untuk membuat RAIDZ hanya dengan dua disk itu, memberi saya 2TB penyimpanan yang dapat digunakan (jika saya memahaminya dengan benar) dan kemudian menambahkan 2TB HDD lain sehingga total menjadi 4TB penyimpanan yang dapat digunakan. Apakah saya benar atau perlu ada tiga HDD untuk memulai?

Alasan saya bertanya adalah saya sudah memiliki satu drive 2TB yang saya gunakan yang penuh dengan file. Saya ingin beralih ke zpool tetapi saya lebih suka hanya membeli dua drive 2TB lagi jika saya bisa. Dari apa yang saya mengerti, RAIDZ berperilaku mirip dengan RAID5 (dengan beberapa perbedaan utama, saya tahu, tetapi dalam hal kapasitas). Namun, RAID5 membutuhkan 3+ drive. Saya bertanya-tanya apakah RAIDZ memiliki persyaratan yang sama.

Jika saya harus, saya dapat membeli tiga drive dan hanya mulai di sana, kemudian menambahkan yang keempat, tetapi jika saya bisa mulai dengan dua dan pindah ke tiga yang akan menghemat $ 80.

Komunitas
sumber

Jawaban:

13

Metode yang digunakan beberapa orang, tetapi itu tidak disarankan:

  1. Buat kumpulan dengan 2 drive dan file jarang (dari kanan, ukuran virtual untuk mencocokkan drive lain), dan kemudian segera luring file jarang. Ini akan membuat kumpulan RAID-Z1 terdegradasi dengan kapasitas dua drive dan tanpa redundansi.
  2. Salin data ke kolam terdegradasi.
  3. Ganti file jarang yang diuraikan dengan disk ketiga dan resilver.

Jumlah "perangkat" yang dibuat dengan vdev, bersifat permanen setelah dibuat. Karena itu, Anda harus memiliki tiga "disk" pada saat pembuatan. Metode ini memberikan cara untuk membuat kumpulan RAID-Z1 yang terdegradasi dan kemudian mengembalikan redundansi yang tidak ada.

Metode ini tidak disarankan, karena saat menyalin dan sementara drive ke-3 tidak ada, tidak ada redundansi / paritas. Tapi itu bisa berhasil.

Holger G
sumber
1
Terima kasih atas jawaban ini. Kami tidak selalu mencari solusi yang disarankan. Terkadang kami mencari solusi APA SAJA. Tautan ke bagaimana melakukan apa yang Anda jelaskan akan bagus
jsaddwater
Sayangnya saya tidak dapat membuat file sparse 1TB pada drive 250GB, jadi ketika membuat array RAIDZ dengan 2 drive 1TB + satu file sparse (10GB) array menjadi 3x10GB. Setelah menghapus file jarang, saya tidak bisa menumbuhkan array karena saya tidak bisa menyalin data dari drive ketiga ke array kecil 3x10GB dan array tidak dapat tumbuh dalam keadaan terdegradasi. Tangkap 22.
jsaddwater
6

Sayangnya, saat ini tidak mungkin :

Tidak mungkin untuk menambahkan disk sebagai kolom ke RAID-Z, RAID-Z2, atau RAID-Z3 vdev. Fitur ini tergantung pada fungsi penulisan ulang pointer blok yang akan ditambahkan segera. Namun seseorang dapat membuat vdev RAID-Z baru dan menambahkannya ke zpool.

RAID-Z1 mungkin bekerja hanya dengan 2 drive, tetapi jelas ini tidak terlalu berguna jika drive tambahan tidak dapat ditambahkan nanti. RAID-Z (seperti RAID 5) menjadi lebih efisien, dalam hal ruang penyimpanan yang dapat digunakan, semakin banyak drive yang digunakan.

sblair
sumber
4
Di sini kita tiga tahun kemudian, dan halaman Wikipedia masih mengatakan "akan segera ditambahkan" ... :(
Icydog
2
@ Icydog segera nyata sekarang ;-)
jlliagre
bagaimana dengan sekarang? :)
black_puppydog
3

RAID-Z1 dapat digunakan hanya dengan dua disk tetapi tidak ada keuntungan sama sekali dibandingkan dengan mirroring - kecuali jika dua disk Anda memiliki ukuran sektor yang berbeda, sehingga tidak dapat dicerminkan (misalnya: disk sektor 4K baru dan yang lebih tua 512 disk byte).

Seperti yang sudah disebutkan, menambahkan perangkat ke RAID-Z tidak didukung. Jika Anda ingin menambahkan disk ke RAID-Z yang ada, satu-satunya cara adalah membuat cadangan data di tempat lain, hancurkan kumpulan dan buat ulang dengan disk tambahan yang ditambahkan kemudian pulihkan data Anda.

Jlliagre
sumber
3

Tidak memiliki "reputasi" yang cukup untuk berkomentar, jadi masukkan ini sebagai jawaban terpisah

RE: Saran Holger G.

sementara saya setuju bahwa ini TIDAK aman ... Saya menemukan utas ini mencari cara untuk beralih dari RAIDZ1 ke RAIDZ2 di kemudian hari ketika drive tambahan dapat diperoleh.

Jadi saran Holgers bekerja sangat baik untuk saya - buat RAIDZ2 dengan satu dev sebagai file jarang, luringkan perangkat file dan secara efektif RAIDZ1 untuk sementara waktu dan kemudian tambahkan perangkat nyata di beberapa titik untuk menggandakan redundansi

Juga berfungsi untuk situasi di mana satu drive menyimpan data yang akan disalin ke serangan baru, seperti yang dimiliki OP.

Tjunkie
sumber
RAIDZ2 konyol - satu-satunya situasi, ketika konfigurasi mungkin berguna, adalah kegagalan dua drive berkorelasi . Alih-alih menggunakan dua disk untuk mencegahnya, lindungi diri Anda dari kegagalan seperti itu dengan menggunakan disk berkapasitas sama dari produsen yang berbeda dan / atau model yang berbeda.
Mikhail T.
@MikhailT. - Meskipun menggunakan pabrikan yang berbeda adalah saran yang baik, itu adalah saran yang buruk untuk mengatakan bahwa RaidZ2 konyol; membangun kembali sangat mungkin untuk membunuh drive lain.
antiduh
membangun kembali sangat mungkin untuk membunuh drive lain - hanya jika semua drive identik dengan yang sudah gagal dan dengan demikian cenderung mengalami kegagalan yang berhubungan . Dan dalam hal ini, memiliki dua drive tidak akan membantu Anda baik - mereka cenderung semua gagal sekaligus. Jika kegagalan drive yang diharapkan bersifat independen , mengorbankan beberapa disk hingga redundansi tidak menghasilkan peningkatan keandalan yang nyata.
Mikhail T.
0

Hanya satu titik untuk membuat beberapa cahaya:

  • Jika satu disk dapat gagal tanpa mengetahui kapan akan gagal ... mengapa dua tidak bisa gagal pada saat yang sama? atau tiga atau empat atau lima, dll?

Tapi, pikirkan situasi lain ini:

  1. Satu disk gagal
  2. Anda menempatkan yang baru dan membiarkannya 'membangun kembali' agar aman
  3. Sementara 'membangun kembali' seperti itu telah dilakukan (mungkin beberapa jam) disk lain gagal

Kamu kehilangan semua !!! Itulah alasan utama untuk mentoleransi kegagalan dua disk secara bersamaan.

Tetapi jika Anda benar-benar paranoid (seperti saya), Anda hanya akan menggunakan Stripping, tidak ada level RAID lainnya.

Apakah saya marah Tidak, tentu saja ... saya tidak keberatan satu disk gagal dan kehilangan semua data! Aku benar-benar tidak akan kehilangan apapun hanya karena aku benar-benar paranoid.

Skema paranoid saya:

  • ZFS dengan stripping (2x, 3x, 4x ... atau 10x disk), hanya agar sesuai dengan bandwidth maksimum bus (sata III, usb 3.1 gen 2, dll)
  • Dan lima ZFS serupa lainnya (tanpa daya, sehingga tidak bisa rusak)

Cara menggunakan semua ZFS tersebut:

  • Hanya memiliki dua dari mereka pada saat yang sama (hanya untuk menyinkronkan perubahan) ... seperti master dengan lima budak

Sudut pandang paranoid:

  • Jika salah satu ZFS gagal ... seperti terkena ligth badai, terbakar, dicuri, dll ... saya masih memiliki lima salinan lebih banyak di tempat yang berbeda (bank, bunker, cloud internet, rumah teman, rumah liburan, dll)

Untuk menyinkronkan beberapa dari mereka ... saya harus membawa satu ZFS dan melakukan sinkronisasi di tempat fisik lain / negara / dll ... jadi saya menggunakan salah satu budak thoose.

Pikirkan ketika saya berbicara tentang HDD pada satu ZFS, pada ZFS lain bisa menjadi 3.1 Gen2 64GiB USB sticks! Tidak perlu ukuran, jenis, dll yang identik

Sudut pandang benar-benar paranoid.

Untuk mereka yang tidak terlalu paranoid, dan jika mereka dapat mendukung untuk kehilangan semua ... ada tingkat RaidZ ... saya lebih suka 'mirror' sendiri.

Keuntungan lain dari melakukan 'sinkronisasi' manual adalah kegagalan Anda sendiri:

  • Anda memiliki hipotetis yang sempurna tidak pernah gagal sistem ZFS, tetapi Anda memutuskan untuk menghapus file ... beberapa hari setelah Anda menemukan Anda melewatkan file yang ingin Anda hapus dan hapus satu yang tidak Anda inginkan (karena kesalahan manusia) .. Anda tidak beruntung kecuali Anda memiliki cadangan

Jadi ... sekali lagi ... jika Anda memerlukan BackUp, mengapa tidak mempercepat ZFS di max dengan hanya striping? ... Anda masih perlu melakukan BackUp setelah semua.

Yah, jawabannya bisa:

  • Partisi sistem untuk sistem online 24 jam

Untuk partisi data saya tidak melihat perlunya tingkat RaidZ dibandingkan memiliki klon ZFS USB eksternal yang siap untuk dihubungkan segera setelah ZFS utama digunakan gagal ... unmount titik utama ZFS dan pasang ZFS baik lainnya di tempat ... kemudian dengan mesin lain buat ulang ZFS off-line yang rusak.

Jika Anda memiliki dua komputer, Anda memiliki apa yang Anda butuhkan untuk 7x24j hanya dengan beberapa detik (waktu boot) down-time.

Untuk pengguna rumahan yang menginginkan foto mereka tetap aman ... gunakan lebih dari dua ZFS dan setidaknya satu atau dua dari mereka tidak pernah terhubung pada saat yang sama dengan yang lain. Paranoid? Tidak semuanya.

Hanya saja saya belajar dengan susah payah bagaimana segala sesuatunya bisa benar-benar salah!

Hanya untuk memperjelas ... apa yang terjadi ...

  1. Saya menggunakan PC secara normal
  2. Data mulai gagal
  3. Saya mengeluarkan HDD dan menempatkan yang OK
  4. Data tentang mereka juga rusak dalam waktu kurang dari sepuluh detik
  5. Saya kehilangan semua data saya (tidak sepenuhnya karena saya agak paranoid dan memiliki BackUp pada media DVD)

Masalahnya adalah benar-benar di controller (terintegrasi pada mainboard), bukan disk ... itu mengubah data pada operasi baca / tulis.

Sejak itu ... data saya tidak ada pada disk sata internal lagi ... hanya pada enklosur USB 3.1 Gen 2 eksternal saya dapat menyambungkan dan mencabut plug-in (setiap disk dalam enklosurnya sendiri) ... dan ketika salah satu gagal ... saya menguji semua hal sebelum menghubungkan ke PC itu apa pun dengan data nyata ... RAM, prosesor, port USB, dll ... dengan penutup USB dummy untuk menguji pola ... jika tidak apa-apa ... maka saya menguji disk yang gagal ... jika berfungsi pada enclosure lain atau tidak, pada PC lain atau tidak, dll ... untuk benar-benar tahu siapa yang menyebabkan kegagalan ... benar-benar paranoid, saya tahu!

Tapi belajar dari pengalaman:

  • Jangan pernah percaya bahwa kegagalan disk disebabkan oleh disk itu sendiri ... mengujinya ... itu bisa berupa pengontrol, kabel, suplai daya, dll.
  • Atau yang terburuk, bisa jadi itu adalah RAM

Berbicara tentang RAM, saya memiliki PC yang tidak terlalu lama (prosesor 64bit berbasis BIOS) yang jika (pikirkan tiga Modul RAM yang identik, sebut mereka A, B dan C):

  • saya meletakkan A pada PC berfungsi sempurna (tidak peduli pada apa dari empat slot)
  • saya meletakkan B pada PC berfungsi sempurna (tidak peduli pada apa dari empat slot)
  • saya meletakkan C pada PC berfungsi sempurna (tetapi hanya pada salah satu dari empat slot, di pohon lain itu menyebabkan banyak kegagalan, BSODs, dll)
  • saya meletakkan A & B itu menyebabkan banyak kegagalan, BSODs, dll
  • saya menempatkan A & C pada PC berfungsi sempurna (tidak masalah pada apa dari empat slot)
  • saya meletakkan B & C pada PC berfungsi sempurna (tidak peduli pada apa dari empat slot)
  • saya meletakkan A & B & C di PC itu menyebabkan banyak kegagalan, BSODs, dll

Jika saya menguji modul-modul tersebut pada PC lain, semuanya bekerja dengan sangat baik, tidak ada masalah, tidak ada cacat, dll.

Hal-hal bisa menjadi sangat gila ... dan jika Anda tidak menguji semua kombinasi Anda tidak bisa tahu apa yang gagal ... ya benar-benar paranoid untuk menguji semua kombinasi dari tiga modul ram pada empat slot ... tapi apa yang saya temukan biarkan saya buta ... modul gagal saja berfungsi sempurna jika ada yang lain tetapi tidak jika dua lagi ... ya, saya juga diuji dengan tiga lainnya dan gagal!

Oh, ya, semua merek, jenis, dll. Sama ... satu-satunya cara untuk membedakan mereka adalah stiker yang saya pasang di sana untuk itu! Dan ya, dibeli pada saat yang sama, mereka datang pada kotak plastik terkunci yang sama.

Terkadang kegagalan ZFS dapat disebabkan oleh RAM ... maka tidak peduli berapa banyak level RaidZ yang Anda miliki ... Anda bisa kehilangan semua.

Oh, hampir lupa ... gunakan memori ECC, kalau tidak ZFS tidak bisa dipercaya! Dan jangan menggunakan HDD apa pun dengan cache internal, RAID internat, dll. Kecuali itu dirancang untuk melakukan penulisan pada perintah yang dikirim (atau melakukan semuanya dalam pemadaman listrik).

Saya hanya menggunakan HDD dengan kapasitas energi internal yang cukup untuk menulis semua cache ke piring setelah daya yang tiba-tiba hilang!

Semua poin / kelemahan ini izinkan saya dengan satu conlcusion:

  • Terbaik mempercepat hal-hal dan melakukan BackUP Anda sendiri
  • Memiliki 100% salinan Off-Line dan tanpa daya
  • Siapkan sesuatu untuk menerima daya dan mengganti bagian yang gagal

Itulah sebabnya saya memiliki> 2 PC dengan> 10 HDD USB (masing-masing 5 salinan ZFS * 3 HDD), saya mendapatkan yang terbaik dari keduanya ... aman dan cepat! Tetapi saya mendapatkan bagian terburuk ... perlu menyinkronkan semuanya secara berkala ... tetapi keamanan data adalah bagian terpenting! juga saya tidak ingin menunggu banyak untuk sinkronisasi seperti itu (alias, striping mulai bekerja).

Dan jika 3 * HDD stripe gagal ... saya dapat menguji mana yang gagal tiga selama beberapa jam / hari / minggu ... sementara saya punya copie ZFS lain On-Line dan berfungsi ... setelah memastikan yang lain keduanya OK saya membeli yang baru (mungkin 30 hingga 45 hari untuk tiba) dan membuat kembali 3 * HDD ZFS dan memasukkan data ke dalamnya untuk mendapatkan salinan kelima lagi.

Tidak murah sama sekali! Tapi bukan sebagai harga pusat data utama, tentu saja ... dan tidak ada tagihan listrik (kebanyakan HDD tanpa daya, hanya 3 atau 6 pada saat yang sama).

Semoga seseorang menemukan ide itu berguna (saya menggunakannya setiap hari).

Claudio
sumber