RAID-5: Dua disk gagal secara bersamaan?

21

Kami memiliki server Dell PowerEdge T410 yang menjalankan CentOS, dengan array RAID-5 yang berisi 5 disk SATA Seagate Barracuda 3 TB. Kemarin sistem macet (saya tidak tahu persis bagaimana dan saya tidak punya log).

Setelah boot ke BIOS controller RAID, saya melihat bahwa dari 5 disk, disk 1 diberi label sebagai "hilang," dan disk 3 diberi label sebagai "terdegradasi." Saya memaksa disk 3 cadangan, dan mengganti disk 1 dengan hard drive baru (dengan ukuran yang sama). BIOS mendeteksi ini dan mulai membangun kembali disk 1 - namun macet di% 1. Indikator kemajuan pemintalan tidak bergerak sepanjang malam; benar-benar beku.

Apa pilihan saya di sini? Apakah ada cara untuk mencoba membangun kembali, selain menggunakan beberapa layanan pemulihan data profesional? Bagaimana mungkin dua hard drive gagal secara bersamaan seperti itu? Tampaknya terlalu kebetulan. Apakah mungkin disk 1 gagal, dan akibatnya disk 3 "tidak sinkron?" Jika demikian, apakah ada utilitas yang dapat saya gunakan untuk mendapatkannya kembali "dalam sinkronisasi?"

Mike Furlender
sumber
20
Ya, disk sata besar cenderung melakukan itu. (Membangun kembali 3 TB membutuhkan waktu berjam-jam saat Anda terpapar kegagalan ganda). Jadi ini yang diharapkan dan itu sebabnya RAID-5 menggunakan konfigurasi seperti itu sama sekali tidak direkomendasikan.
MichelZ
9
Memang. Dalam dunia ideal tingkat kegagalan drive didistribusikan secara acak. Secara praktis, ini tidak terjadi - mereka biasanya dibeli dari kelompok yang sama dan mengalami tekanan yang sama, yang berarti mereka semua mulai mencapai akhir kehidupan pada saat yang sama. Pergeseran pemuatan tiba-tiba dapat dengan mudah memberi tip pada beberapa 'over the edge', bahkan sebelum Anda mulai melihat tingkat kesalahan yang tidak dapat dipulihkan pada disk SATA. Ngomong-ngomong - saya khawatir berita buruknya adalah, kecuali jika Anda bisa mendapatkan salah satu drive online, saatnya untuk mengeluarkan backup.
Sobrique
5
Saya tahu ini tidak banyak membantu sekarang, tetapi hanya FYI - konsensus umum adalah menggunakan RAID6 untuk drive yang lebih besar dari 1TB (setidaknya ketika kita berbicara tentang 7200rpm).
pauska
2
RAID 5 memberikan toleransi kesalahan, tetapi ini merupakan opsi kompromi - Anda memiliki ketahanan N +1, tetapi jika Anda memiliki drive besar, Anda memiliki jendela besar di mana kesalahan kedua dapat terjadi. RAID-6 memberikan toleransi kesalahan N + 2, yang umumnya dianggap baik (peluang kegagalan tiga kali lipat jauh lebih rendah). Namun, Anda juga akan menemukan tingkat kegagalan disk yang lebih mahal (mis. Bukan drive SATA murah)
Sobrique

Jawaban:

24

Setelah Anda menerima jawaban yang buruk , saya benar-benar minta maaf atas pendapat sesat saya (yang sudah menyimpan array seperti itu beberapa kali).

Disk gagal kedua Anda mungkin memiliki masalah kecil, mungkin kegagalan blok. Ini adalah penyebab, mengapa buruk alat sync dari Anda buruk firmware raid5 jatuh di atasnya.

Anda dapat dengan mudah membuat salinan tingkat sektor dengan alat kloning disk tingkat rendah (misalnya, gddrescue mungkin sangat berguna), dan menggunakan disk ini sebagai disk baru Anda3. Dalam hal ini, array Anda bertahan dengan korupsi data minor.

Saya minta maaf, mungkin sudah terlambat, karena esensi dari jawaban ortodoks dalam kasus ini: "beberapa kegagalan dalam serangan5, ini adalah kiamat!"

Jika Anda ingin raid yang sangat bagus, redundan, gunakan raid software di linux. Sebagai contoh, tata letak data superblok raid-nya bersifat publik dan terdokumentasi ... Saya benar-benar minta maaf, untuk pendapat saya yang lain ini.

peterh mengatakan mengembalikan Monica
sumber
8
Malu ini turun suara, itu benar-benar mencoba untuk membantu OP memperbaiki kekacauan tidak seperti yang lain. +1
Vality
3
@Vality itu tidak mencoba untuk memecahkan kekacauan, itu memperpanjang masalahnya. Serangan 5 dengan blok rusak dibakar tidak memberikan rasa sakit karena akan melewati pemeriksaan integritas tetapi secara teratur menurun. Dia juga tidak tahu data mana yang rusak. Jika semudah memperbaiki blok itu akan menjadi solusi standar.
JamesRyan
4
@ JamesRyan Saya setuju bahwa itu akan menyebabkan beberapa masalah di kemudian hari dan saya bahkan setuju bahwa ada masalah mendasar di sini. Namun itu memang menawarkan solusi yang valid tentang cara mendapatkan kembali fungsionalitas dan karena OP sedang berbicara tentang para ahli pemulihan data, saya hanya bisa berasumsi mereka tidak memiliki cadangan untuk mendapatkan kembali data mereka sebaliknya. Pada akhirnya, solusi ini hanya akan menjadi bagian dari perbaikan, setelah metode ini membuat sistem boot lagi, Anda mungkin ingin mentransfer filesystem ke 5 disk baru dan kemudian penting untuk mencadangkannya.
Vality
1
"Anda dapat dengan mudah membuat salinan level-level dari alat salinan blok" Apakah ini yang benar-benar Anda maksud untuk ditulis?
Arnaud Meuret
1
@ MikeFurlender Saya pikir perangkat keras lebih cepat, tetapi berpemilik dan karenanya rapuh karena Anda perlu mendapatkan pengontrol yang sama persis jika perangkat gagal. RAID perangkat lunak tidak tergantung pada perangkat keras. Lihat btrfs dan zfs.
Martin Ueding
38

Anda memiliki kegagalan disk ganda. Ini berarti data Anda hilang, dan Anda harus memulihkan dari cadangan. Inilah sebabnya mengapa kita tidak seharusnya menggunakan raid 5 pada disk besar. Anda ingin mengatur serangan Anda sehingga Anda selalu memiliki kemampuan untuk menahan dua kegagalan disk, terutama dengan disk besar yang lambat.

Kemangi
sumber
3
Ada dua masalah dengan RAID5. Satu: waktu 3TB dibangun kembali, mengingat drive SATA yang lambat bisa besar, membuat kemungkinan kegagalan gabungan menjadi tinggi. Yang lainnya adalah laju kesalahan bit yang tidak dapat dipulihkan - lembar spesifikasi pada sebagian besar drive SATA memiliki 1/10 ^ 14, yang merupakan - kira-kira - 12TB data. Dengan 5 cara, 3B RAID ini menjadi hampir tidak terhindarkan saat membangun kembali diperlukan.
Sobrique
1
Saya menggunakan RAID5 pada drive array 3TB 5 saya, saya bermain-main dengan mendapatkan array kedua untuk digunakan sebagai salinan pertama yang direplikasi. Dengan cara itu bagi saya untuk kehilangan data akan membutuhkan lebih dari 1 disk untuk gagal pada kedua array pada saat yang sama (jadi saya akan membutuhkan 4 disk) tetapi masih mempertahankan jumlah yang besar untuk kapasitas yang tersedia. Setelah membaca ini saya sekarang dapat meningkatkan kerangka waktu untuk mendapatkan array kedua.
War
1
Dia mungkin hanya memiliki badblock pada disk-nya3. Saya benar-benar bertanya-tanya mengapa sysadmin profesional tidak pernah mendengar dari alat penyalin tingkat blok.
peterh mengatakan mengembalikan Monica
1
@Wardy, tidak akan menyerang 6 memberi Anda itu?
Basil
3
Bukan jawaban yang sangat membantu. Tentu, dengan kegagalan disk ganda pada RAID 5, peluang pemulihan tidak baik. Tetapi sebagian besar kegagalan disk ganda pada RAID 5 mungkin hanya masalah satu disk yang rusak dan beberapa kesalahan pembacaan tidak diperbaiki pada disk lain. Jika itu masalahnya, memulihkan sebagian besar data masih dimungkinkan dengan alat yang tepat. Petunjuk untuk alat-alat seperti itu akan sangat membantu.
kasperd
37

Pilihan Anda adalah:

  1. Pulihkan dari cadangan.
    • Anda memang memiliki cadangan, bukan? RAID bukan cadangan.

  2. Pemulihan data profesional
    • Mungkin saja, meskipun sangat mahal dan tidak dijamin, bahwa layanan pemulihan profesional akan dapat memulihkan data Anda.

  3. Menerima kehilangan data Anda dan belajar dari pengalaman.
    • Seperti yang disebutkan dalam komentar, disk SATA besar tidak dianjurkan untuk konfigurasi RAID 5 karena kemungkinan kegagalan ganda selama pembangunan kembali menyebabkan array gagal.
      • Jika harus parity RAID, RAID 6 lebih baik, dan lain kali gunakan cadangan panas juga.
      • Disk SAS lebih baik karena berbagai alasan, termasuk lebih banyak keandalan, ketahanan, dan tingkat kesalahan bit yang tidak dapat dipulihkan yang lebih rendah yang dapat menyebabkan URE (kesalahan baca yang tidak dapat dipulihkan)
    • Seperti disebutkan di atas, RAID bukan cadangan. Jika data penting, pastikan dicadangkan, dan cadangan Anda diuji kembali.
HopelessN00b
sumber
1
Jika Anda memiliki 5 disk (sesuai OP), dan berkomitmen untuk cadangan panas, tentunya Anda akan menggunakan RAID10 di atas RAID6 ...?
jimbobmcgee
1
Nah, untuk permulaan - Anda akan menggunakan 4 spindle dalam RAID 1 + 0 untuk mendapatkan ruang 2 disk, meninggalkan satu disk 'cadangan'. Anda dapat mentolerir dua kegagalan (setidaknya dua yang tepat). RAID6 akan memberi Anda 3 disk senilai ruang, dan dapat mentolerir dua kegagalan juga (ada dua). RAID1 + 0 memang memiliki kemampuan kinerja yang lebih baik, dengan penalti tulis yang lebih rendah, dan kinerja pembacaan acak yang berpotensi lebih baik (pembacaan dapat dilayani dari salah satu dari dua spindel).
Sobrique
Untuk poin 2. Pemulihan Data. Memulihkan data dari RAID5 secara profesional dapat membuat Anda mendapatkan $ 20 ribu dengan mudah. Selain itu, OP membiarkan pembangunan kembali berjalan semalaman, menekankan disk, yang dapat menyebabkan pemulihan menjadi lebih sulit atau bahkan tidak mungkin. Hanya memberi tahu Anda sebelumnya. Pastikan untuk mengirim semua disk.
OmnipotentEntity
4

Kegagalan simultan dimungkinkan, bahkan mungkin, karena alasan yang telah diberikan orang lain. Kemungkinan lainnya adalah salah satu disk gagal beberapa waktu sebelumnya, dan Anda tidak memeriksanya secara aktif.

Pastikan pemantauan Anda akan mengambil volume RAID yang berjalan dalam mode terdegradasi segera. Mungkin Anda tidak mendapatkan pilihan tetapi tidak pernah baik untuk mempelajari hal-hal ini dari BIOS.

richardb
sumber
3
+1 untuk menyebutkan pemantauan yang diabaikan. Penting untuk memperhatikan sudah langkah "normal" -> "kritis", bukan langkah "kritis" -> "gagal". Ini juga berlaku untuk semua jenis redudansi lainnya (cadangan jalur internet, bir di ruang bawah tanah, ban cadangan, ...).
Hagen von Eitzen
2

Untuk menjawab "Bagaimana dua hard drive bisa gagal secara bersamaan seperti itu?" tepatnya, saya ingin mengutip dari artikel ini :

Inti dari argumen adalah ini. Karena disk drive telah menjadi lebih besar dan lebih besar (kira-kira dua kali lipat dalam dua tahun), URE (kesalahan baca yang tidak dapat dipulihkan) belum membaik dengan kecepatan yang sama. URE mengukur frekuensi terjadinya Kesalahan Baca yang Tidak Dapat Dipulihkan dan biasanya diukur dalam kesalahan per bit yang dibaca. Misalnya tingkat URE 1E-14 (10 ^ -14) menyiratkan bahwa secara statistik, kesalahan pembacaan yang tidak dapat dipulihkan akan terjadi sekali dalam setiap pembacaan 1E14 bit (1E14 bits = 1,25E13 byte atau sekitar 12TB).

...

Argumennya adalah bahwa ketika kapasitas disk meningkat, dan tingkat URE tidak meningkat pada tingkat yang sama, kemungkinan kegagalan membangun kembali RAID5 meningkat seiring waktu. Secara statistik ia menunjukkan bahwa pada tahun 2009, kapasitas disk akan cukup berkembang sehingga tidak berarti menggunakan RAID5 untuk berbagai array yang berarti.

Jadi, RAID5 tidak aman di 2009. RAID6 akan segera juga. Adapun RAID1, saya mulai membuatnya dari 3 disk. RAID10 dengan 4 disk juga berbahaya.

Halfgaar
sumber
3
Sekali lagi, RAID bukan alternatif cadangan, ini murni tentang menambahkan "zona penyangga" di mana disk dapat diganti untuk menjaga data yang tersedia ... tersedia. Pilihan lainnya adalah menggunakan replikasi yang akan membutuhkan 2 array gagal pada saat yang sama ... jauh lebih kecil kemungkinannya saya akan berpikir.
Perang
Secara pribadi, saya tidak suka mantra yang RAID bukan cadangan. Kamus mengatakan: "seseorang, rencana, perangkat, dll. Disimpan sebagai cadangan, jika diperlukan." Jika jumlah redundansi tidak cukup, itu akan gagal berfungsi sebagai pengganti. Jika Anda tidak peduli dengan redundansi yang disediakan RAID, Anda mungkin tidak menggunakannya. Adapun itu tidak menjadi pengganti untuk cadangan off-disk dan off-situs, itu masalah lain, dengan mana saya setuju (tentu saja).
Halfgaar
jadi apa pendapat Anda tentang mereka yang menggunakan garis-garis RAID tanpa redundansi? dalam hal ini array RAID digunakan sepenuhnya untuk memperoleh manfaat kinerja yang merupakan IMO penggunaan yang benar-benar valid untuk pikiran saya RAID melayani 2 tujuan 1. untuk memberikan kecepatan dengan mengelompokkan drive atau 2. untuk menyediakan jaring pengaman jika n drive gagal memastikan data masih tersedia.
Perang
Siapa pun yang menerapkan RAID akan memilih jenis RAID yang ingin mereka gunakan berdasarkan kebutuhan, kecepatan, keandalan atau kombinasi keduanya, tetapi itu masih tidak membuat RAID dalam bentuk apa pun dari solusi cadangan.
Perang
1
Ketika orang mengatakan RAID bukan cadangan, mereka tidak berbicara tentang ketersediaan. Saya pikir Anda hanya bermain dengan kata-kata. :)
gparent
2

Utas sudah tua tetapi jika Anda membaca, pahami saat drive gagal dalam raid raid, periksa usia drive. Jika Anda memiliki beberapa disk dalam raid array dan mereka lebih dari 4-5 tahun, kemungkinan bagus bahwa drive lain akan gagal. *** BUAT GAMBAR atau Cadangan ** sebelum Anda melanjutkan. Jika Anda merasa memiliki cadangan, ujilah untuk memastikan Anda dapat membacanya dan memulihkannya.

Alasannya adalah bahwa Anda menempatkan keausan normal selama bertahun-tahun pada drive yang tersisa saat mereka berputar dengan kecepatan penuh selama berjam-jam. Semakin besar jumlah drive berusia 6 tahun, semakin besar kemungkinan drive lain akan gagal karena stres. Jika RAID5, dan Anda meledakkan array, bagus Anda memiliki cadangan tetapi disk 2TB akan memakan waktu 8 - 36 jam untuk pulih tergantung pada jenis pengontrol serangan dan perangkat keras lainnya.

Kami secara rutin mengganti seluruh sarang serangan di server produksi jika semua drive sudah tua. Mengapa membuang waktu mengganti satu drive, lalu tunggu sampai drive berikutnya gagal dalam sehari, seminggu, sebulan atau dua. Seperti halnya drive, itu tidak sepadan dengan down time.

Rickkee Ranton
sumber
1

Biasanya ketika membeli drive dalam banyak dari pengecer terkemuka Anda dapat meminta drive berasal dari batch yang berbeda, yang penting untuk alasan yang disebutkan di atas. Selanjutnya, inilah tepatnya mengapa RAID 1 + 0 ada. Jika Anda telah menggunakan 6 drive di RAID 1 + 0 Anda akan memiliki data 9TB dengan redundansi langsung di mana tidak diperlukan pembangunan kembali volume.

Payton Byrd
sumber
Di mana bukti yang menunjukkan bahwa bagian tentang menggunakan drive dari batch berbeda hanyalah mitos urban? Juga, RAID 1 tidak secara ajaib melindungi terhadap berlari ke sektor yang tidak dapat dibaca selama pembangunan kembali. Jika Anda ingin perlindungan terhadap itu Anda pergi dengan RAID 6 atau dengan RAID 1 dengan 3 mirror (agak mahal).
kasperd
1
@kasperd Saya pikir pertanyaan yang membentuk bagian pertama dari komentar Anda mirip dengan, meskipun jelas tidak persis sama dengan, Haruskah saya 'menjalankan' satu disk pasangan RAID 1 baru untuk mengurangi kemungkinan waktu kegagalan yang sama? .
CVn
1

Jika controller Anda dikenali oleh dmraid (misalnya di sini ) di linux, Anda mungkin dapat menggunakan ddrescue untuk memulihkan disk yang gagal ke yang baru, dan menggunakan dmraid untuk membangun array, alih-alih controller perangkat keras Anda.

Brian Minton
sumber