ZFS - क्या RAIDZ-1 वास्तव में इतना बुरा है?


18

मैं एक rs10 विन्यास (4TB प्रयोग करने योग्य) में 4x 2TB WD RE4-GP ड्राइव के साथ एक NAS सर्वर है। मैं अंतरिक्ष से बाहर चल रहा हूं (<1TB प्रयोग करने योग्य स्थान बचा है)। बड़ा / अधिक ड्राइव / एनक्लोजर पर खर्च करने के लिए मेरे पास $ 0 है।

मुझे जेडएफएस की डेटा-अखंडता सुविधाओं के बारे में जो मैंने पढ़ा है, वह पसंद है, जो - अपने दम पर - मेरे लिए अपने मौजूदा एक्सएफएस (सॉफ्टवेयर) RAID10 से स्विच करने के लिए पर्याप्त हैं। तब मैंने ZFS के RAID5 के बेहतर कार्यान्वयन के बारे में पढ़ा, इसलिए मैंने सोचा कि मैं RAIDZ-1 का उपयोग करके सौदेबाजी में 2TB तक अधिक उपयोगी स्थान प्राप्त कर सकता हूं।

हालाँकि, मैं अधिक से अधिक पोस्ट पढ़ता रहता हूँ और कहता है कि बहुत अधिक कभी भी RAIDZ-1 का उपयोग न करें। केवल RAIDZ-2 + "वास्तविक दुनिया" ड्राइव विफलताओं को संभालने के लिए पर्याप्त विश्वसनीय है। बेशक, मेरे मामले में, RAIDZ-2 का कोई मतलब नहीं है। एक एकल पूल (RAID10) में दो प्रतिबिंबित vdevs का उपयोग करना बेहतर होगा।

क्या मैं 4x 2TB ड्राइव के लिए RAIDZ-1 का उपयोग करना चाहता हूं?

क्या मुझे केवल दो प्रतिबिंबित vdevs (अनिवार्य रूप से RAID10) के पूल का उपयोग करना चाहिए और उम्मीद है कि संपीड़न मुझे पर्याप्त अतिरिक्त स्थान देगा?

किसी भी तरह से, मैं संपीड़न का उपयोग करने की योजना बना रहा हूं। मेरे पास केवल 8GB RAM (अधिकतम) है, इसलिए डिडअप कोई विकल्प नहीं है।

यह ZFS-on-Linux की स्थिरता के मुद्दों से बचने के लिए एक FreeNAS सर्वर (वर्तमान उबंटू ओएस को बदलने के बारे में) पर होगा।


यकीन नहीं होता कि यह ऑफ-टॉपिक कैसे है। मैं सर्वर के लिए उचित फ़ाइल सिस्टम कॉन्फ़िगरेशन के बारे में सलाह माँग रहा हूँ।
एंड्रयू एनस्ले

इसके अलावा RAIDZ1or2 लिखने की गति RAID10 की तुलना में बेकार है
JamesRyan

2
यदि आपके पास मंदी के बिना समानता की गणना करने के लिए पर्याप्त सीपीयू है, तो RAIDज़ को सबसे अधिक लिखने के लिए RAID10 की तुलना में तेज़ या तेज़ होना चाहिए। RAIDZ एक पूर्ण RAID पट्टी में सब कुछ लिखता है, RAID5 की तरह कोई रीड-मॉडिफाई-राइट साइकिल नहीं है। तो आपको अधिक डिस्क बैंडविड्थ (अधिक डेटा, कम ओवरहेड) मिलेगा, और राइट को RAID10 से तेज होना चाहिए। हालांकि, इसका नुकसान यह है कि अक्सर पढ़ने वाले धीमे धीमे होते हैं। "हर बार एक पूरी पट्टी लिखें" विखंडन की ओर जाता है, और आपको कई छोटे-छोटे पाठों के लिए डिस्क के केवल सबसेट को पढ़ने का लाभ नहीं देता है। यह एक सचेत डिजाइन निर्णय था।
दान प्रिट्स

जो मैंने ऊपर कहा है वह केवल आंशिक रूप से सच है। यदि आप समवर्ती छोटे लिखते हैं, जैसे, एक डेटाबेस सर्वर, तो RAID10 बहुत तेज होगा। RAIDZ में सभी डिस्क सभी लिखने के लिए सक्रिय हैं; RAID10 ने उन्हें विभाजित किया। मैं जिस बिंदु को पार करने की कोशिश कर रहा था, वह यह था कि RAIDZ प्रदर्शन-हत्या और संभवतः RAID5 के पढ़ने-संशोधित-लिखने के चक्र के साथ दूर करता है।
दान प्रिट्स

RAID10 की तुलना में RAIDZ2 अधिक विश्वसनीय है। RAIDZ2 के साथ, कोई भी दो डिस्क विफल हो सकती हैं और आपके पास अभी भी आपका डेटा होगा। RAID10 के साथ, दो असफल डिस्क (एक चार डिस्क सरणी में) डेटा हानि का कारण हो सकता है।
क्लेव्स

जवाबों:


21

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

RAIDZ-1 का कथन "वास्तविक दुनिया की असफलताओं के लिए पर्याप्त नहीं है" क्योंकि आप पुनर्निर्माण के समय आने पर अपने बचे हुए डिस्क में एक अव्यक्त मीडिया त्रुटि होने की संभावना रखते हैं। एक ही तर्क RAID5 पर लागू होता है।

ZFS इस विफलता को कुछ हद तक कम करता है। यदि एक RAID5 डिवाइस को फिर से संगठित नहीं किया जा सकता है, तो आप बहुत अधिक भाग्य से बाहर हैं; अपने (शेष) डेटा को कॉपी करें और स्क्रैच से पुनर्निर्माण करें। दूसरी ओर, ZFS के साथ, यह सभी लेकिन खराब चंक को फिर से संगठित करेगा और प्रशासक को त्रुटियों को "स्पष्ट" करने देगा। आप किसी फ़ाइल / फ़ाइल के एक हिस्से को खो देंगे, लेकिन आप संपूर्ण सरणी नहीं खोएंगे। और, ज़ाहिर है, ZFS की समता जाँच का मतलब है कि आपको मज़बूती से सूचित किया जाएगा कि कोई त्रुटि है। अन्यथा, मेरा मानना ​​है कि यह संभव है (हालांकि संभावना नहीं है) कि कई त्रुटियों का परिणाम स्पष्ट रूप से सफल होने पर पुनर्निर्माण होगा, लेकिन आपको खराब डेटा वापस दे देगा।

चूंकि ZFS एक " रैम्पेंट लेयरिंग वॉयलेशन है ," यह भी पता है कि किन क्षेत्रों में उन पर डेटा नहीं है, और उन्हें पुनर्निर्माण में छोड़ सकते हैं। इसलिए यदि आपका सरणी आधा खाली है, तो आप एक पुनर्निर्माण त्रुटि होने की संभावना से आधे हैं।

आप किसी भी RAID स्तर पर त्रुटियों के पुनर्निर्माण की संभावना को कम कर सकते हैं अपने सरणी के "ज़ूलप स्क्रब" या "mdadm जाँच" करके । अन्य RAID के लिए समान आदेश / प्रक्रियाएं हैं; उदाहरण के लिए, LSI / dell PERC छापे कार्ड इसे "गश्ती पढ़ा" कहते हैं। ये सब कुछ पढ़ते हैं, जो कि डिस्क ड्राइव को असफल क्षेत्रों को खोजने में मदद कर सकते हैं और स्थायी होने से पहले उन्हें फिर से असाइन कर सकते हैं। यदि वे स्थायी हैं, तो RAID प्रणाली (ZFS / md / raid कार्ड / जो कुछ भी) समता से डेटा का पुनर्निर्माण कर सकती है।

यदि आप RAIDZ2 या RAID6 का उपयोग करते हैं, तो भी नियमित स्क्रब महत्वपूर्ण हैं।

एक अंतिम नोट - किसी भी प्रकार का RAID बैकअप के लिए एक विकल्प नहीं है - यह आकस्मिक विलोपन, रैंसमवेयर, आदि के खिलाफ आपकी रक्षा नहीं करेगा, हालांकि नियमित ZFS स्नैपशॉट बैकअप रणनीति का हिस्सा हो सकते हैं।


उस स्पष्टीकरण के लिए धन्यवाद। यह बहुत समझ में आता है और जो मैंने ZFS के बारे में अब तक सीखा है, उससे मेल खाता है। मैंने वास्तव में पहले से ही FreeNAS के साथ अपने सर्वर को फिर से लोड किया है और RAIDZ-1 कॉन्फ़िगरेशन के साथ गया है। मैंने इसे महीने में एक बार स्क्रब करने के लिए सेट किया है। क्या आपको लगता है कि यह अक्सर पर्याप्त है या आप अधिक लगातार स्क्रब की सिफारिश करेंगे? बड़े पैमाने पर हो रहा उल्लंघन ज़ेडएफएस की मेरी पसंदीदा विशेषता है :-)
एंड्रयू एनस्ले

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

मैं इंगित करूंगा - 'होम' ड्राइव में 'एंटरप्राइज' ग्रेड के खिलाफ चुकता होने पर परिमाण के 2 ऑर्डर खराब होने वाली अपरिवर्तनीय बिट त्रुटि दर है। मैं अभी भी बहुत खुश हूं कि RAID-5 पर यौगिक विफलता दर सभ्य एफसी / एसएएस ड्राइव पर स्वीकार्य है। हालांकि यह SATA पर नहीं होगा।
सोब्रीक

1
दो सीगेट ड्राइव की तुलना में केवल एक परिमाण का क्रम: सीगेट ST2000DM001: 10E14 में 1। ST2000NM0033: 10E15 में 1। वास्तव में, हालांकि, यह सुनिश्चित करने के लिए कठिन है कि क्या ड्राइव तंत्र कोई भिन्न है। मैंने सुना है विश्वसनीय स्रोत विरोधात्मक उत्तर देते हैं।
दान प्रीत

2
मैंने अपने सिस्टम पर एक खराब SATA केबल की खोज की - चूंकि इसे बदल दिया गया था, मेरे स्क्रब को शून्य त्रुटियां मिली हैं।
डेन प्रिट्स

4

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

एक सस्ते 'होम यूजर' डिस्क में 1 प्रति 10 ^ 14 अपरिवर्तनीय त्रुटि दर है।

http://www.seagate.com/gb/en/internal-hard-drives/desktop-hard-drives/desktop-hdd/#specs

यह एक स्तर पर है जहाँ आपके द्वारा RAID पुनर्निर्माण के दौरान एक अपरिवर्तनीय त्रुटि की महत्वपूर्ण संभावना की बात की जाती है, और इसलिए आपको ऐसा नहीं करना चाहिए। (एक त्वरित और गंदे गणना से पता चलता है कि 5x 2TB डिस्क RAID-5 सेट वास्तव में इस का लगभग 60% मौका होगा)

हालाँकि यह अधिक महंगी ड्राइव के लिए सही नहीं है: http://www.seagate.com/gb/en/internal-hard-drives/enterprise-hard-drives/hdd/enterprise-performance-15k-hdd/#specs

1 प्रति 10 ^ 16 100x बेहतर है - जिसका अर्थ है 5x 2TB <1% असफल पुनर्निर्माण की संभावना है। (शायद कम, क्योंकि उद्यम उपयोग के लिए, 600GB स्पिंडल आमतौर पर अधिक उपयोगी होते हैं)।

तो व्यक्तिगत रूप से - मुझे लगता है कि दोनों RAID-5 और RAID-4 अभी भी उल्लेखनीय रूप से उपयोग करने योग्य हैं, सभी कारणों से RAID-0 अभी भी काफी सामान्य है। भूल न करें - RAID-6 के साथ समस्या यह है कि भारी लिखना दंड है। आप इसे बहुत सारे कैशिंग के साथ आंशिक रूप से कम कर सकते हैं, लेकिन आपको अभी भी कुछ दर्द बना हुआ है, खासकर जब आप पहली बार में धीमी ड्राइव के साथ काम कर रहे हैं।

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


मैं 4 डब्लूडी आरई 4-जीपी ड्राइव का उपयोग कर रहा हूं, जिसमें 10 ^ 15 गैर-वसूली योग्य रीड त्रुटियों में <1 है।
एंड्रयू एनस्ले

RAID6 पेनल्टी बहुत वास्तविक है। हालांकि, RAID-Z2 इससे ग्रस्त नहीं है; zfs सभी लिखता है फुल-स्ट्राइप। इसके अन्य नकारात्मक प्रभाव हैं, हालांकि - यह कई कारणों से पढ़ने के प्रदर्शन को कम करता है।
डैन प्रिट्स

3

हम्म, कुछ बुरी जानकारी यहाँ। 4 डिस्क के लिए, XFS के साथ वास्तव में कुछ भी गलत नहीं है। मैं प्रदर्शन और विस्तारणीय कारणों के लिए ZFS RAIDZ से बचता हूं (कम पढ़ता / लिखता है, विस्तार नहीं किया जा सकता है)। यदि आप कर सकते हैं तो ZFS दर्पण का उपयोग करें। हालांकि, 4 डिस्क के साथ और कहीं भी अपने ओएस को रखने के लिए, आप या तो बहुत अधिक क्षमता खो देंगे या अपने ओएस और डेटा को एक ही चार डिस्क पर फिट करने के लिए अजीब विभाजन खेलों से गुजरना होगा।

मैं शायद आपके उपयोग के मामले के लिए ZFS की सिफारिश नहीं करूंगा। यहाँ XFS के साथ कुछ भी गलत नहीं है।


2
उल्लेख करना भूल गया कि OS एक अलग ड्राइव पर रहता है। माफ़ करना। मैं ZFS से क्या चाहता हूं कि XFS RAID10 में चेकसम डेटा वेरिफिकेशन नहीं है (और पारदर्शी रूप से फिक्स कर सकते हैं) साइलेंट डेटा एरर (ड्राइव पर थोड़ा सा फ़्लिप, और HDD का कोई पता नहीं है)। मेरा मानना ​​है कि XFS ऐसा करने में सक्षम नहीं है।
एंड्रयू एनस्ले

चार डिस्क के लिए, ZFS दर्पण का उपयोग करें यदि कोई मौका हो तो आपको विस्तार करने की आवश्यकता होगी या यदि प्रदर्शन मायने रखता है। मैं FreeNAS से भी बचूंगा और लिनक्स पर सीधे ZFS का उपयोग करूंगा।
21

1
मैं खुद एक टर्मिनल आदमी हूं, इसलिए मैं निश्चित रूप से GUI के लिए स्विच नहीं कर रहा हूं। अधिकतर, मुझे बस एक स्थिर फाइल सिस्टम की आवश्यकता है जो (जितना संभव हो) उस पर संग्रहीत फ़ाइलों की अखंडता की गारंटी देता है। और मैं इस प्रक्रिया में कुछ जगह हासिल करने की उम्मीद कर रहा था। मैंने ZoL के लिए रिपोर्ट किए गए बहुत सारे मुद्दों को देखा है, उनमें से कई उबंटू ओएस उन्नयन से संबंधित हैं। group.google.com/a/zfsonlinux.org/forum/#! -searchin/zfs-discuss/… एक दर्द बनने की कोशिश नहीं कर रहा है। बस यह समझाते हुए कि मुझे क्या लगता है कि मुझे क्यों लगता है। मैं निश्चित रूप से सुधार के लिए खुला हूँ।
एंड्रयू एनस्ले

1
कोई बात नहीं। मैंने FreeNAS (फ्रीबीएसडी नहीं) के साथ कहीं अधिक मुद्दे देखे हैं, इसलिए यह दोनों तरीकों से चलता है। वहाँ की जानकारी है। मैं Ubuntu का उपयोग नहीं करते, लेकिन मैं करते ZFS पता । लिनक्स पर मेरा ZFS आमतौर पर RHEL या CentOS के साथ है। यहाँ एक नमूना कार्यप्रवाह है
ewwhite

1
मैं लिनक्स और सेंटो पर जेडएफएस का उपयोग करता हूं 6. मैं कर्नेल या जेडएफएस के स्वचालित अपडेट की अनुमति नहीं देता हूं। मेरे पास ZFS / SCL बोरिंग के साथ समस्याएँ हैं, लेकिन मुझे डेटा हानि कभी नहीं हुई। रिकॉर्ड के लिए, btw, FreeBSD में सोलारिस कम्पैटिबिलिटी रूटीन का एक समान सेट है, लेकिन वे और ZFS पूरी तरह से वितरण में एकीकृत हैं, जो सभी चीजों को एक साथ काम करने के लिए बहुत सरल बनाता है। अगर मैं केवल ZFS और फ़ाइल सेवा चाहता था, तो मैं शायद FreeBSD चलाऊंगा। वास्तव में, यह वही है जो मैं करता था, लेकिन मैं अन्य यादृच्छिक सामान के लिए बॉक्स का उपयोग करता हूं, जिसने ZoL को अधिक आकर्षक बना दिया।
दान प्रिट्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.