सवाल ZFS के साथ पतली-प्रावधान का उपयोग करते समय, आप कैसे सुनिश्चित करते हैं कि आप भौतिक डिस्क स्थान से बाहर नहीं हैं?


मुझे माफ़ कर दो अगर यह एक मौलिक सवाल की तरह लगता है, लेकिन मुझे वास्तव में Google पर कुछ भी ठोस नहीं मिल सका, और मैं व्यापार द्वारा सिस्टम प्रशासक नहीं हूं।

हम एक 8-डिस्क RAID Z3 कॉन्फ़िगरेशन (8 x 1.36 टीबी ड्राइव) के साथ NexentaStor का उपयोग करके हमारे कार्यालय में एक SAN स्थापित कर रहे हैं और सब कुछ कॉन्फ़िगर करने की प्रक्रिया में हैं।

अभी, कुल डिस्क स्थान के संदर्भ में, हमारे पास SAN पर "वास्तविक" संग्रहण का लगभग 10.8 टीबी है, जो सभी एक एकल ज़पूल / zvol में आवंटित हैं। मैं भविष्य में विकास के लिए 100 टीबी स्पेस के साथ zvol (तर्क के लिए कहें) पतली प्रावधान पर विचार कर रहा था।

यह सिद्धांत में काफी सरल लगता है: जब हम वास्तविक डिस्क स्थान से बाहर निकलने के करीब होते हैं, तो हम कुछ नए ड्राइव जोड़ते हैं और यह "बस काम करेगा": कोई फ़ाइल-सिस्टम आकार बदलने या डाउनटाइम के बारे में चिंता करने के लिए नहीं।

हालांकि, हम कैसे करते हैं जानना जब हमें अधिक क्षमता जोड़ने की आवश्यकता होती है, तो हर कुछ घंटों में SAN में लॉगिंग करने से कम और यह सुनिश्चित कर लें कि हमारे पास अभी भी खाली स्थान शेष है?

उदाहरण के लिए, यह आमतौर पर एक स्थापित करके संभाला जाता है cron नौकरी, या NexentaStor (या ZFS स्वयं) चेतावनी प्रदान करता है जब आप क्षमता के करीब होते हैं, या यह उम्मीद की जाती है कि आपको किसी भी समय किसी भी समय कितनी जगह छोड़ी गई है और आपको इसे ट्रैक रखना होगा?

यदि यह मदद करता है, तो 10.8 टीबी zvol का उपयोग हमारे वर्चुअल सर्वर के लिए बैकिंग स्टोरेज (iSCSI से अधिक) के रूप में किया जाएगा और वर्चुअल मशीनों (जो पतले-प्रावधान भी हैं) परीक्षण करें, इसलिए समस्या का हिस्सा यह है कि यह चलाने में आसान हो सकता है डिस्क स्पेस से बाहर अगर हम लगातार बना रहे हैं / स्नैपशॉटिंग / वीएम को बहाल कर रहे हैं (जो हम विभिन्न मशीन कॉन्फ़िगरेशन और सॉफ़्टवेयर वातावरण का परीक्षण करते समय बहुत कुछ करते हैं)।


7
2017-10-07 05:52


मूल


एक शब्द: निगरानी। किसी पतले-प्रावधान समाधान पर लागू होता है। - pfo
गैर पतली-प्रावधान समाधानों पर भी लागू होना चाहिए ;-) - Matt Simmons
क्या आपको अपने प्रश्न का उत्तर मिला? - ewwhite


जवाब:


नेक्सेंटा तरफ, एक है volume-check स्क्रिप्ट जो डिफ़ॉल्ट रूप से प्रति घंटा चलाने के लिए सेटअप है। यह:
Check volume health and capacity, clear correctable device errors, validate mountpoints.
यह ईमेल के माध्यम से एक साप्ताहिक सारांश रिपोर्ट भी भेजता है।

हालांकि, आपके द्वारा सूचीबद्ध उद्देश्यों के लिए नेक्सेंटा स्टोरेज समाधान की योजना बनाते समय आपको कुछ चीजों पर विचार करना चाहिए।

  • आप लचीलापन के लिए कई पूल रखने पर विचार करना चाह सकते हैं। एक पूल काम करता है, लेकिन कभी-कभी डेटा को स्थानांतरित करना आवश्यक होता है या स्थानीय संग्रहण पर दूसरे पूल का विकल्प होता है।
  • ZFS zvols को फ्लाई पर विस्तारित / अनुबंधित किया जा सकता है। उदाहरण के लिए, यदि आप 20TB को पतली-प्रावधान वाले zvol में आवंटित करते हैं, तो आप इसे 30TB या 100TB में आसानी से बदल सकते हैं। यदि आपके पास वर्तमान में नहीं है तो आपको भविष्य के लिए 100TB को अधिक प्रावधान करने की आवश्यकता नहीं है।
  • एक बार अंतरिक्ष का उपयोग करने के बाद, पतली-प्रावधान वाले zvols के साथ, आप इसे पुनः प्राप्त नहीं कर सकते हैं। यदि आप 10TB पूल में 2TB zvol को पतला प्रावधान करते हैं, तो zvol भरें, फिर उस zvol पर VM को हटाएं, आपका पूल अभी भी केवल 8TB निःशुल्क दिखाएगा। वह 2 टीबी बनी रहेगी।
  • क्या आप ZFS संपीड़न या deduplication या दोनों का उपयोग करेंगे? एक परिस्थिति जहां यह अधिक प्रावधान के लिए समझ में आता है यदि आप इनलाइन संपीड़न और अत्यधिक संपीड़ित डेटा का उपयोग कर रहे हैं। Deduped डेटा के लिए वही। मेरे मामले में, डेटा सेट मैं 60% -80% संपीड़न के साथ काम करता हूं, इसलिए मैं वास्तव में भंडारण की मात्रा की तुलना में बड़े zvols प्रस्तुत करता हूं।
  • Raidz1 / 2/3 बनाम मिरर का उपयोग अंतर्निहित भंडारण का विस्तार करना आसान बनाता है। आप प्रतिबिंबित डिस्क जोड़े को ज़ूमपूल में जोड़ सकते हैं, लेकिन आप raidz1 / 2/3 का विस्तार नहीं कर सकते हैं जब तक कि आप कोई अन्य vdev (raidz (x) डिस्क का समूह नहीं जोड़ते)। आप डिस्क पर फिर से वितरित करने के लिए डेटा को पुन: संतुलित करना भी चाहते हैं।
  • आप किस वर्चुअलाइजेशन तकनीक का उपयोग करेंगे? यदि वीएमवेयर, तो आप पतली-प्रावधान कर सकते हैं। मुझे विश्वास है कि 80% उपयोग के करीब डेटास्टोर चेतावनियां देखेंगी, मुझे विश्वास है। यदि आप स्नैपशॉट आकार के विकास के साथ खतरनाक स्थिति में हैं तो वीएमवेयर भी शिकायत करता है।
  • यदि आप बहुत सारे वीएम परीक्षण कर रहे हैं, या वीएम जो आकार में उतार-चढ़ाव करते हैं, तो मैं परीक्षण वीएम के लिए अपेक्षाकृत स्थिर वीएम और एनएफएस के लिए iSCSI और zvols का उपयोग करने का सुझाव दूंगा (यदि यह आपके पसंदीदा वर्चुअलाइजेशन समाधान के लिए एक विकल्प है)। एनएफएस के साथ, आप अपने स्टोरेज स्पेस का अधिक कुशल उपयोग कर सकते हैं क्योंकि आप ज़पूल के पूर्ण उपलब्ध आकार को देखते हैं और इसके बारे में चिंता करने के लिए कोई आकार छत नहीं है।

संक्षेप में ... मैं भविष्य के विकास के लिए खाते में अधिक जोखिम नहीं लेगा। यह आवश्यक नहीं है। स्पेस उपयोग को सतर्क करने के लिए नेक्सेंटा में प्रति घंटा चेक हैं। इसके बारे में भी सोचें कि क्या आप संपीड़न का उपयोग करेंगे या नहीं (deduplication को थोड़ा और नियोजन की आवश्यकता है)। चीजों का परीक्षण करें और देखें कि उत्पादन में जाने से पहले वीएम पदचिह्न कैसा दिखता है। बाद में बदलना मुश्किल होगा।


8
2017-10-07 10:14



एक साइड नोट के रूप में: एक बार अंतरिक्ष का उपयोग करने के बाद, इसमें से अधिकांश को पुनः प्राप्त करने का एक आसान तरीका डेटासेट पर संपीड़न को सक्षम करना और वर्चुअल डिस्क के भीतर उपयोग की गई जगह को शून्य करना - the-wabbit
आप अंतरिक्ष को शून्य-आउट कैसे करते हैं? - ewwhite
आभासी मशीन शुरू करना और एक चलाना dd if=/dev/zero of=/dev/sda बल्कि सरल है, लेकिन काफी अच्छी तरह से काम करता है। निश्चित रूप से वीएम खत्म होने के बाद यह मुश्किल है, लेकिन तब भी आप एक जारी कर सकते हैं dd if=/dev/zero of=/vmfs/volumes/yourclutteredvolume/zerofile bs=8M; rm /vmfs/volumes/yourclutteredvolume/zerofile ESX (i) कंसोल से। शून्य किए गए ब्लॉक को Zfs द्वारा "खाली" के रूप में सही ढंग से पहचाना जाएगा। - the-wabbit
डिस्क पर बस dd'ing स्पष्ट रूप से कोई अच्छा नहीं है अगर उस पर डेटा है। फाइल सिस्टम वाले zvols के लिए, आपको थोड़ा अधिक रचनात्मक होना चाहिए। विंडोज उपयोगकर्ताओं के लिए, आप "sdelete -c" (Google "sdelete") चला सकते हैं। लिनक्स के लिए, ext2 / 3 (और मुझे लगता है कि 4) वहाँ "zerofree" नामक एक उपयोगिता है, मुझे पता है कि उबंटू में यह डिफ़ॉल्ट रिपोज़ में है। जाहिर है आपको डिस्क क्लाइंट के साथ क्लाइंट मशीन पर चलाने की ज़रूरत है, न कि नेक्सेंटा पर। - Nex7


यदि आपके पास नागोस जैसी कुछ निगरानी प्रणाली है, तो आप आसानी से आउटपुट का मूल्यांकन करने वाला चेक लिख सकते हैं zpool list और अपने आराम क्षेत्र के भीतर थ्रेसहोल्ड के खिलाफ इसे जांचना।

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


6
2017-10-07 07:07



Nagios के लिए +1, और कई SANs ऐसी चीजों की जांच करने के लिए एसएनएमपी कमांड प्रदान करते हैं जो इसे स्थापित करने में बहुत आसान बनाता है। बस Nagios पर ध्यान देना सुनिश्चित करें - Smudge


बस उल्लेख किया जाना चाहिए, यदि आप RAID-Z के साथ जाते हैं, तो आप किसी भी RAID-Z के लिए आसानी से "कुछ और ड्राइव जोड़ सकते हैं"।


0
2018-02-28 12:37