Dapatkah RAID5 non-redundan menyebabkan masalah serius (dibandingkan dengan RAID0)?


3

Dulu saya memiliki RAID5 tiga disk (mdadm) di komputer saya untuk penyimpanan media pribadi (musik, video, foto, program, game, ...). Itu tiga cakram dengan masing-masing 750 GB, menghasilkan kapasitas array 1,5 TB.

Suatu hari (satu tahun yang lalu), saya membutuhkan salah satu cakram itu untuk menginstal sistem operasi lain. Saya pikir, saya tidak perlu redundansi lagi karena saya membuat cadangan hal-hal yang paling penting (foto pribadi misalnya) pada disk eksternal. Jadi saya memutuskan untuk menghapus salah satu dari tiga disc tanpa mengubah RAID ke RAID0 atau bahkan dua disc terpisah, karena saya tidak memiliki penyimpanan sementara (karena satu tidak dapat dengan mudah mengkonversi RAID5 ke RAID0 AFAIK).

Jadi sekarang, selama sekitar satu tahun, saya memiliki RAID5 non-redundan dengan 2 dari 3 disk berjalan. Kadang-kadang, salah satu disk memiliki kontak yang rusak pada kabel daya atau sesuatu yang serupa yang menyebabkan drive berhenti bekerja sementara (saya tidak tahu persis apa itu). Karena masih berfungsi ketika me-reboot komputer dan dalam kebanyakan kasus dengan memanggil beberapa perintah mdadm, itu tidak bermasalah. Perhatikan bahwa data tidak terlalu kritis, karena saya masih memiliki cadangan dari hal-hal yang paling penting.

Tetapi dalam beberapa minggu terakhir, salah satu drive gagal sangat sering (setiap beberapa jam), sehingga sangat menjengkelkan untuk mengelola ini.

Pertanyaan saya adalah:

  • Apakah ada kerugian (terlepas dari manajemen yang mengganggu) dari RAID5 yang tidak berlebihan (dengan satu drive yang kurang dari biasanya) dibandingkan dengan RAID0? Jika saya memahaminya dengan benar, keduanya tidak memiliki redundansi dan kapasitas yang sama. Pada kegagalan drive sementara, saya dapat me-restart array dalam kedua kasus, dengan asumsi bahwa drive itu sendiri masih berfungsi setelah kegagalan.

  • Mungkinkah isi drive berubah pada kegagalan drive, membuat array tidak konsisten? Jika demikian, dapatkah saya memberi tahu mdadm untuk memeriksa kegagalan array (tanpa alat pengecekan level sistem file)?

  • Karena drive yang paling mungkin hanya memiliki kontak yang rusak yang menyebabkannya gagal untuk sedetik saja, dapatkah saya memberi tahu mdadm untuk secara otomatis me-restart array, jadi saya bahkan tidak akan melihat kegagalan jika tidak ada aplikasi yang ingin mengakses sistem file selama kegagalan?


Sejauh yang merugikan ... ingat bahwa RAID 5 strip di disk, dan menghasilkan data paritas. Ini menempatkan beban pada pengendali, harus menjadi sentuhan lebih lambat dari RAID0 yang setara.
Rich Homolka

1
Apakah RAID tanpa redundansi masih RAID? Saya pikir itu BANTUAN.
Mr Lister

@ Mr.Lister Jadi RAID0 juga merupakan AID;)
leemes

Jawaban:


4

RAID5 menderita penalti tulis dibandingkan dengan format RAID lainnya karena perhitungan paritas, bahkan dengan set drive penuh. Karena Anda melakukan RAID perangkat lunak, ini memengaruhi kinerja sistem, bukan hanya mendorong kinerja, karena CPU melakukan semua perhitungan paritas. Ini mungkin terlihat atau tidak terlihat, tergantung pada sistem Anda dan apa yang Anda lakukan saat mengakses drive, tetapi perlu diperhatikan. Tanpa drive ketiga, saya akan membayangkan ada sedikit hit kinerja untuk membaca juga, karena semua data yang biasanya hidup pada drive ketiga sekarang harus dihitung melalui bit paritas daripada membaca secara langsung. Mungkin ada implikasi lain, tetapi hit kinerja adalah yang besar yang saya sadari.

Saya tidak cukup akrab dengan pertanyaan Anda yang lain untuk memberikan jawaban, tetapi pada titik ini saya sarankan mengarahkan ulang drive untuk berjalan secara mandiri jika memungkinkan. Ini tidak akan berguna seperti membuat mereka muncul sebagai satu drive, tetapi Anda tidak harus berurusan dengan kegagalan drive yang terputus-putus, dan itu akan mengurangi ketegangan pada sisa sistem Anda. Bagian yang sulit tentu saja adalah migrasi, tetapi mungkin seorang teman dapat meminjamkan Anda beberapa disk?

Satu hal lain yang perlu dipertimbangkan: secara harfiah penyimpanan HANYA ini, atau beberapa filesystem yang terletak di array ( /usr, /var, /bin, atau sesuatu yang serupa)? Jika apa pun yang terkait dengan sistem ada di semua ini, itu dapat menyebabkan ketidakstabilan sistem yang signifikan dengan tidak dapat diandalkannya array.


Tidak, saya tidak memiliki bagian dari sistem saya pada array, namun, saya memiliki beberapa file yang bekerja dengan saya pada array. (Tetapi mereka berada di repositori git yang sering saya tekan, jadi jika terjadi kehilangan seluruh array, ini juga tidak terlalu bermasalah.) Saya kadang-kadang melihat penundaan 5 detik saat mengakses array (IO tunggu), yang saya tidak dapat menjelaskan, tapi saya rasa itu adalah fakta bahwa satu drive hilang yang menyebabkan efek ini.
Tema

4

Apakah ada kerugian (terlepas dari manajemen yang mengganggu) dari RAID5 yang tidak berlebihan (dengan satu drive yang kurang dari biasanya) dibandingkan dengan RAID0?

Iya. Penulisan RAID5 lebih lambat daripada penulisan RAID0, terlepas dari apakah Anda memiliki set disk penuh atau tidak.

Mungkinkah isi drive berubah pada kegagalan drive, membuat array tidak konsisten?

Iya; tetapi ini adalah kerusakan sistem file, jadi ini bisa terjadi terlepas dari RAID mana yang Anda gunakan jika seluruh array sedang offline. Contoh yang sangat khas dari ini adalah array RAID5 dengan write cachin. Ini melaporkan bahwa file tersebut ditulis ke disk sehingga OS dapat melanjutkan pemrosesan, tetapi pada kenyataannya itu tidak ditulis ke disk, pengontrol RAID masih menghitung paritasnya, dan akan menulisnya ke disk beberapa saat kemudian . Jika daya hilang antara itu melaporkan Semua OK dan data sedang ditulis, Anda mungkin akan memiliki korupsi sistem file yang tidak dapat dipulihkan. Inilah sebabnya mengapa RAID-5 umumnya hanya digunakan dengan cache cadangan baterai, atau caching penulisan dimatikan.

Jika demikian, dapatkah saya memberi tahu mdadm untuk memeriksa kegagalan array (tanpa alat pengecekan level sistem file)?

Karena drive yang paling mungkin hanya memiliki kontak yang rusak yang menyebabkannya gagal untuk sedetik saja, dapatkah saya memberi tahu mdadm untuk secara otomatis me-restart array, jadi saya bahkan tidak akan melihat kegagalan jika tidak ada aplikasi yang ingin mengakses sistem file selama kegagalan?

Tidak cukup tahu tentang mdadm Linux untuk menjawab ini, maaf. Tapi saya tidak cukup tentang hard drive gagal untuk memberitahu Anda bahwa itu hanya masalah waktu sebelum itu 750GB drive yang meninggal tahu selamanya dan Anda menemukan diri Anda memulihkan dari backup.

Lebih baik mengganti semua drive itu dan membangun array baru yang sepenuhnya redundan daripada memasukkan beberapa solusi pemecahan masalah.


Saya akan kedua bit tentang drive lain gagal dan penggantian benar-benar satu-satunya solusi yang benar.
ND Geek
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.