क्या RAID 1 भ्रष्टाचार से बचाता है?


14

क्या RAID 1 डेटा भ्रष्टाचार से बचाता है? उदाहरण के लिए, मान लीजिए कि मैं अपनी सभी महत्वपूर्ण फाइलों को एक NAS पर रख रहा हूं जो 2 डिस्क का उपयोग करता है RAID 1. यदि किसी हार्ड ड्राइव में किसी प्रकार की आंतरिक समस्या है और डेटा दूषित हो जाता है, तो क्या RAID इसे स्वचालित रूप से और सही पहचानता है यह अन्य अच्छी डिस्क से डेटा का उपयोग कर रहा है?

क्या यह भी पता चल सकता है कि कौन सी कॉपी अच्छी है?

क्या RAID 5 भ्रष्टाचार से बचाता है?

मुझे पता है कि RAID एक बैकअप समाधान नहीं है। मैं यह पता लगाने की कोशिश कर रहा हूं कि यह कैसे सुनिश्चित करें कि मैं भ्रष्ट डेटा का समर्थन नहीं कर रहा हूं!

जवाबों:


13

RAID-1 दो ड्राइव में से एक की पूर्ण विफलता से बचाता है। यदि ड्राइव को विफल के रूप में चिह्नित नहीं किया गया है, तो इसकी सामग्री को सटीक माना जाता है। लेकिन अगर, किसी भी कारण से, दो ड्राइवों में से एक असंगत डेटा वापस आ रहा था, तो उस त्रुटि का पता RAID प्रणाली द्वारा नहीं लगाया जाएगा, और एप्लिकेशन को खराब डेटा मिलेगा।

कई नियंत्रकों के पास एक सत्यापन प्रक्रिया है जो समय-समय पर चलती है, लेकिन इसका उद्देश्य डिस्क की विफलता के लिए परीक्षण करना है, न कि डेटा अखंडता। हार्ड ड्राइव अपने स्वयं के डेटा अखंडता परीक्षण और चेकसम को लागू करते हैं जो वे खराब क्षेत्रों को स्पॉट करने के लिए उपयोग करते हैं, लेकिन एल्गोरिथ्म तेज और कॉम्पैक्ट होने के लिए डिज़ाइन किया गया है, पूरी तरह से नहीं, इसलिए त्रुटियां लीक हो सकती हैं।

जबकि डेटा भ्रष्टाचार नियम के बजाय अपवाद है, यह भी अनसुना नहीं है। उदाहरण के लिए, ZFS टीम के एक सदस्य ने एक इंटरव्यू में बताया कि उनके हाई-एंड RAID-5 डिवाइस द्वारा उन्हें भ्रष्ट किए जा रहे भ्रष्ट डेटा को देखकर, जिसे उन्होंने इस तथ्य के आधार पर देखा कि ZFS उस फाइल सिस्टम स्तर पर चेकसम को लागू करता है।


5

यह इस बात पर निर्भर करता है कि भ्रष्टाचार कहाँ से उपजा है। यदि एक RAID 1 दर्पण में एक ड्राइव खराब है और बकवास लिख रहा है तो RAID दर्पण खराब हो जाएगा और अच्छी ड्राइव उपयोग में होगी और आपके पास अच्छी फाइलें होंगी। RAID 5 के मामले में यह 2 डेटा ड्राइव और एक समता ड्राइव (सरलतम रूप में) के साथ किया जाता है और यदि 3 ड्राइव में से एक उचित फ़ाइलों को लिखने में विफल हो रहा है, तो यह विफल हो जाएगा और आपको 2 डेटा के साथ छोड़ दिया जाएगा ड्राइव या 1 डेटा ड्राइव और एक समता ड्राइव।

अब देखते हैं कि क्या होता है अगर भ्रष्टाचार वायरस या बग के कारण होता है। RAID 1 और RAID 5 में कोई ड्राइव सेवा से बाहर नहीं निकाली जाएगी क्योंकि ड्राइव ठीक से लिख रहे हैं। कुछ भी विफल नहीं हुआ है। हालाँकि फाइलें नष्ट हो जाएंगी क्योंकि वायरस या बग रद्दी लिख रहे हैं, और यह आपके ड्राइव को RAID 1 मिरर और रेक 5 सिस्टम में आपके सभी 3 ड्राइव पर लिख देगा।

यही कारण है कि RAID बैकअप नहीं है। यह सबसे अधिक संभावना विफलता को रोकता है जो डिस्क विफलता है लेकिन यह बहुत सारे अन्य परिदृश्यों के लिए जिम्मेदार नहीं है।


4
+1 "यही कारण है कि RAID एक बैकअप नहीं है" भगवान जानता है कि मैंने कितनी बार सुना है "मैं ठीक हूं, मेरा बैकअप एक RAID के साथ कवर किया गया है"
उरदा

2
RAID किस प्रकार अंतर कर सकता है कि कौन सा डेटा अच्छा है और कौन सा बुरा है?

1
शॉन ... यदि आपका डेटा वायरस द्वारा खाया जाता है या गलती से डिलीट हो जाता है, तो RAID इसे कभी भी अच्छा या बुरा नहीं कह सकता। सभी RAID के प्रभारी सुनिश्चित कर रहे हैं कि (एक RAID 1 में) दोनों डिस्क समान हैं। यदि कोई सेक्टर किसी चेकसम को विफल करता है, तो RAID नियंत्रक इसकी मरम्मत करने के लिए क्षतिपूर्ति करता है, या एक पुनर्निर्माण को ट्रिगर करता है। RAID 5 में, यदि कोई सेक्टर समता जांच में विफल रहता है, तो एक पुनर्निर्माण शुरू हो जाता है। RAID भौतिक ड्राइव को विफल होने से बचाता है, और डेटा हानि के परिणामस्वरूप। वे प्रोग्राम दोष या वायरस के लिए खोए गए डेटा से रक्षा नहीं कर सकते।
उरदा

6
RAID 5 का आपका लक्षण वर्णन गलत है। कोई अलग समता ड्राइव नहीं है, इसके बजाय समता सभी ड्राइवों में वितरित की जाती है। आप n-1 के कुल उपलब्ध स्थान के साथ समाप्त होते हैं, लेकिन समता के लिए समर्पित एक ड्राइव नहीं है।
एमडीएमरा

2
मुझे इसको कम करना है। RAID1 चेकसमिंग नहीं करता है , यह केवल एक पूर्ण ड्राइव विफलता से बचाता है। यदि कोई ड्राइव कचरा वापस करना शुरू कर देता है, तो उसके पास यह बताने का कोई तरीका नहीं है कि कौन सा सही है, और खुशी से कचरा डेटा वापस करेगा। RAID5 मैं निश्चित नहीं हूँ, क्योंकि समता जाँच के कारण। यही कारण है कि ZFS और BTRFS जैसे फाइल सिस्टम का आविष्कार किया गया था, ताकि आपको एक 'डेटा-अवेयर' RAID जैसी प्रणाली मिल जाए, जो डेटा के ब्लॉक को सत्यापित करने के लिए उचित रूप से चेकसम का उपयोग करके कचरा डेटा को सही कर सकती है।
एलेक्स

5

जैसा कि अन्य ने उल्लेख किया है, एक raid1 प्रणाली के पास यह बताने का कोई तरीका नहीं है कि कौन से दो सेक्टर खराब हैं।

उच्च अंत छापे सिस्टम दोनों प्रतियों, और ध्वज अंतरों की तुलना करने के लिए पृष्ठभूमि में एक स्क्रब ऑपरेशन चलाते हैं। बेहतर अभी तक एक ऐसी प्रणाली है जो हर बार ड्राइव से दोनों ब्लॉकों को पढ़ती है, और पढ़ने के समय में उनकी तुलना करती है। उन मतभेदों को हल करना हालांकि छापे नियंत्रक के लिए असंभव है।

Mdadm के तहत यूनिक्स सिस्टम पर, "सिंक_एक्शन" के साथ एक स्क्रब चेक शुरू किया जा सकता है:

md सरणियों को डिवाइस के लिए sysfs निर्देशिका में फ़ाइल md / sync_action पर चेक या मरम्मत के लिए लिखकर या साफ़ किया जा सकता है।

स्क्रब का अनुरोध करने से md को सरणी में प्रत्येक डिवाइस पर प्रत्येक ब्लॉक पढ़ने और डेटा की संगत होने की जांच करने का कारण होगा। RAID1 और RAID10 के लिए, इसका अर्थ है कि प्रतियां समान हैं। RAID4, RAID5, RAID6 के लिए इसका मतलब है कि जाँचता है कि समता ब्लॉक है (या ब्लॉक हैं) सही हैं।

raid1 अचानक कुल ड्राइव विफलता से बचाने के बारे में है। भ्रष्टाचार के खिलाफ सुरक्षा के लिए कहीं और देखें। परे है कि RAID1 कोई "इतिहास" प्रदान नहीं करता है, इसलिए मानव या सॉफ़्टवेयर त्रुटि से उबर नहीं सकता है। भ्रष्टाचार के खिलाफ सुरक्षा के लिए ZFS जैसे फाइल सिस्टम या हैमर जैसी फाइल को सुरक्षित रखने वाला इतिहास देखें।


3

व्यवहार में, हाँ। हार्ड ड्राइव विफलताओं का अधिकांश हिस्सा सभी-या कुछ भी नहीं होता है। या तो (ए) केबल अनप्लग है या ड्राइव माइक्रोकंट्रोलर विफल हो गया है, इसलिए RAID नियंत्रक को स्पष्ट रूप से ड्राइव ड्राइव पर कोई प्रतिक्रिया नहीं मिलती है। या (बी) केबल और ड्राइव माइक्रोकंट्रोलर अच्छे हैं, लेकिन जब यह एक सेक्टर को पढ़ने की कोशिश करता है, तो आंतरिक ड्राइव माइक्रोकंट्रोलर डेटा भ्रष्टाचार का पता लगाता है क्योंकि आंतरिक ईसीसी चेकसम विफल रहा, और उस क्षेत्र को पढ़ने के लिए बार-बार प्रयास किया गया (मामले में यह एक अस्थायी डायन है ) अंततः समय समाप्त हो जाता है, इसलिए RAID नियंत्रक को विनम्र "सॉरी" प्रतिक्रिया मिलती है - स्पष्ट रूप से विफल ड्राइव। किसी भी तरह से, यह RAID-1 या RAID-5 नियंत्रक के लिए स्पष्ट है कि ड्राइव विफल हो गया है।

सिद्धांत रूप में, नहीं। अगर कोई चीज़ इतनी बुरी तरह से गलत हो गई है कि एक हार्ड ड्राइव बकवास लिख रही है, और फिर भी किसी तरह से उस बकवास के लिए सही आंतरिक ईसीसी कोड लिखने के लिए पर्याप्त रूप से काम कर रहा है, तो RAID -1 यह नहीं बता सकता है कि कौन सी ड्राइव सही है। RAID-1 सिस्टम संभवतया भ्रष्ट डेटा के साथ अच्छे डेटा को फिर से लिख देगा। RAID-5 बेहतर नहीं है। सक्रिय लेखन के दौरान "RAID-5 राइट होल" बिजली की विफलता एक विशेष दुर्लभ है लेकिन असंभव मामला नहीं है।

जहां तक ​​मुझे पता है, इस तरह के भ्रष्टाचार से बचने का एकमात्र तरीका फ़ाइल मिररिंग के अलावा एंड-टू-एंड चेकसम का उपयोग करना है, या तो स्वचालित रूप से फाइल सिस्टम (ZFS या Btrfs) या समय-समय पर या मैन्युअल रूप से (पुनर्गणना ssync चेकसम के रूप में) सरल फ़ाइल सत्यापन, पर्चिव फ़ाइल सेट, आदि); आदर्श रूप से एक क्रिप्टोग्राफिक हैश जैसे SHA-256।


किसी भी मौका आप इस एक के लिए एक जवाब दे सकता है .... superuser.com/questions/736612/...
मिक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.