ट्यूनिंग iSCSI भंडारण


29

यह iSCSI के बारे में एक कैननिकल प्रश्न है जिसे हम संदर्भ के रूप में उपयोग कर सकते हैं।

iSCSI एक प्रोटोकॉल है जो SCSI कमांड को पेलोड के रूप में TCP नेटवर्क पैकेट में डालता है। जैसे, यह फाइबर चैनल की तुलना में समस्याओं के एक अलग सेट के अधीन है। उदाहरण के लिए, यदि कोई लिंक कंजस्टेड हो जाता है और स्विच के बफ़र्स फुल हो जाते हैं, तो ईथरनेट, मेज़बान को धीमा करने के लिए कहने के बजाय फ़्रेम को गिरा देगा। इसके कारण प्रतिधारण होता है जो भंडारण यातायात के बहुत छोटे हिस्से के लिए उच्च विलंबता की ओर जाता है।

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

  • VMWare 4 और 5
  • Windows हाइपर- V 2008 और 2008r2
  • विंडोज 2003 और 2008 नंगे धातु पर
  • नंगे धातु पर लिनक्स
  • AIX VIO
  • कोई भी अन्य ओएस जो आप सोचते हैं कि प्रासंगिक होगा

iSCSI इससे कहीं अधिक जटिल है - लेकिन आईपी-स्टैक के संबंध में यह सब लागू होता है जो उच्च-थ्रूपुट, कम विलंबता आईपी कनेक्शन पर लागू होता है - यहां बहुत विशेष नहीं है।
नेल्स

जवाबों:


6

मैं VMWare से परिचित नहीं हूं, लेकिन मैं Xctorver का उपयोग करता हूं और मैंने Hyper-V (R2) का उपयोग किया है।

मेरे वर्तमान एक्सेंसरवर कॉन्फ़िगरेशन के साथ:

  • 8 डेल पॉवरेज 29xx सर्वर
  • 2 डेल पॉवरकनेक्ट 6248 स्विच
  • 2 डेल MD3000i सैन (iSCSI)

मैंने अपने स्विच को एक मल्टीपथ कॉन्फ़िगरेशन में सेटअप किया है और इसके लिए iSCSI के लिए अनुकूलित किया है:

  • मेरे स्विच को 3 वीएलएएनएस (iSCSI ट्रैफ़िक के लिए 2 और प्रबंधन के लिए 1) में अलग करना
  • JumboFrames का उपयोग करना
  • "ISCSI" ऑप्टिमाइज़ेशन को लागू करना जो पॉवरकनेक्ट है

प्रत्येक सर्वर में प्रत्येक स्विच के लिए एक कनेक्शन प्रदान करने के लिए कई नेटवर्क कार्ड होते हैं, बदले में सर्वर और iSCAN SAN के बीच गुणा करके अतिरेक प्रदान करते हैं। ISCSI VLANs में iSCSI के अलावा कोई अन्य ट्रैफ़िक नहीं है।

मुझे यह सूचित करते हुए खुशी हो रही है कि इस विन्यास के साथ एक्सेंसर "क्लस्टर" शानदार ढंग से काम करता है।

एक साइड नोट पर मेरे पास एक विंडोज़ 2008 सर्वर है जो सीधे iSCSI द्वारा एक HP SAN (पुराने फ़ाइल सर्वर) से जुड़ा है। यह विंडोज 2003 को चलाता था, और नियमित रूप से कनेक्शन को छोड़ देगा (2003 के बाद के पुनर्स्थापना के बाद भी); हालाँकि, जैसे ही मैंने विंडोज़ 2008 में अपग्रेड किया यह जुड़ा हुआ है।

मुझे अपने सेटअप के बारे में किसी भी प्रश्न का उत्तर देने में खुशी होगी।


1
क्या आप दो डेल स्विच के बीच स्टैकिंग केबल का उपयोग कर रहे हैं?
स्पेसमैनस्पीफ

ISCSI क्यों? MD3000 से सीधे जुड़े पर DRBD क्यों नहीं?
निल्स

@SpacemanSpiff मेरे स्विच स्टैक्ड नहीं हैं।
स्टीव

@ नील मैंने DRBD पर शोध नहीं किया है, हालाँकि मैंने इसके बारे में सुना है। मेरे सीधे जुड़े हुए भंडारण के लिए iSCSI पर DRBD क्या पेशकश करेगा?
स्टीव

DRBD का कोई SCSI- उपरि नहीं है। दूसरी बात यह है कि आप iSCSI- क्लाइंट-प्रक्रिया से छुटकारा नहीं पा सकते हैं जब आपका iSCSI- सर्वर मर जाता है या पहुंच से बाहर हो जाता है (बाद में आपके सेटअप में कोई समस्या नहीं होनी चाहिए)।
निल्स

3

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

बंदरगाहों के लिए QoS प्रोफ़ाइल, साथ ही तूफान नियंत्रण को बंद करना, MTU को 9000 तक सेट करना, प्रवाह नियंत्रण चालू करना और बंदरगाहों को पोर्टफ़ास्ट में डालना

थ्रूपुट और लेटेंसी

अपडेटेड फर्मवेयर, ड्राइवर और अन्य सिस्टम

MPIO

जंबो फ्रेम्स / एमटीयू

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

तथाकथित "जंबो" फ्रेम ईथरनेट फ्रेम हैं जो कैनोनिकल 1518 बाइट सीमा से अधिक हैं। जबकि संख्या स्विच विक्रेताओं के आधार पर भिन्न हो सकती है, ऑपरेटिंग सिस्टम और एनआईसी का सबसे विशिष्ट जंबो पैकेट आकार 9000 और 9216 बाइट्स हैं (बाद वाला सबसे आम)। यह देखते हुए कि लगभग 6X डेटा को 9K फ्रेम में रखा जा सकता है, मेजबान पर एक समान राशि से वास्तविक पैकेट (और व्यवधान) की संख्या कम हो जाती है। ये लाभ विशेष रूप से उच्च गति (यानी 10GE) लिंक पर दिए जाते हैं जो बड़ी मात्रा में डेटा (यानी iSCSI) भेजते हैं।

जंबो फ़्रेम को सक्षम करने के लिए होस्ट और ईथरनेट स्विच दोनों के कॉन्फ़िगरेशन की आवश्यकता होती है और कार्यान्वयन से पहले काफी सावधानी बरतनी चाहिए। कई दिशानिर्देशों का पालन किया जाना चाहिए-

1.) किसी दिए गए ईथरनेट सेगमेंट (VLAN) के भीतर सभी होस्ट और राउटर को एक ही MTU कॉन्फ़िगर होना चाहिए। उचित कॉन्फ़िगरेशन के बिना एक उपकरण लिंक त्रुटियों (विशेष रूप से "दिग्गज") के रूप में बड़े फ़्रेमों को देखेगा और उन्हें गिरा देगा।

2.) आईपी प्रोटोकॉल के भीतर दो अलग फ्रेम आकार के साथ मेजबान एक उचित आम फ्रेम आकार बातचीत करने के लिए कुछ तंत्र की जरूरत है। टीसीपी के लिए यह एमटीयू (पीएमटीयू) का मार्ग है और आईसीएमपी अगम्य पैकेटों के प्रसारण पर निर्भर करता है। सुनिश्चित करें कि सभी प्रणालियों पर PMTU सक्षम है और कोई भी ACL या फ़ायरवॉल नियम इन पैकेटों की अनुमति देता है।

ईथरनेट फ्लो कंट्रोल (802.3x)

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

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

टीसीपी भीड़ नियंत्रण (RFC 5681)

TOE (टीसीपी / आईपी ऑफलोड इंजन)

iSOE (iSCSI ऑफलोड इंजन)

एलएसओ (टीसीपी सेगमेंटेशन / लार्ज सेंड ऑफलोड)

नेटवर्क अलगाव

ISCSI के लिए एक सामान्य सर्वोत्तम अभ्यास दोनों गैर-संग्रहण नेटवर्क ट्रैफ़िक से आरंभकर्ताओं और लक्ष्यों को अलग करना है। यह सुरक्षा, प्रबंधन और, कई मामलों में, भंडारण यातायात के लिए संसाधनों के समर्पण के संदर्भ में लाभ प्रदान करता है। यह अलगाव कई रूप ले सकता है:

1.) शारीरिक अलगाव - सभी आरंभकर्ताओं के पास एक या एक से अधिक एनआईसी का समर्पित है जो केवल iSCSI ट्रैफ़िक के लिए समर्पित है। यह प्रश्न में हार्डवेयर की क्षमताओं और किसी संगठन के भीतर विशिष्ट सुरक्षा और परिचालन आवश्यकताओं के आधार पर नेटवर्क नेटवर्क को समर्पित या नहीं कर सकता है।

2.) लॉजिकल आइसोलेशन - अधिकतर तेज (यानी 10GE) नेटवर्क में पाए जाते हैं, सर्जक के पास अलग स्टोरेज और नॉन-स्टोरेज ट्रैफिक के लिए कॉन्फ़िगर किया गया VLAN टैगिंग (802.1q) है।

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

यहाँ भी बैकप्लेन और स्विचिंग फैब्रिक के बारे में कुछ।

क्यूओएस (802.1 पी)

vLAN (802.1q)

एसटीपी (RSTP, MSTP, आदि)

ट्रैफ़िक सप्रेशन (स्टॉर्म कंट्रोल, मल्टी / ब्रॉड-कास्ट कंट्रोल)

सुरक्षा

प्रमाणीकरण और सुरक्षा

बच्चू

IPSec

LUN मैपिंग (सर्वोत्तम अभ्यास)


क्या RFC 5681 के लिए किसी भी डिवाइस पर कोई ट्यून है? अगर नहीं तो हमें उस सेक्शन को हटाना चाहिए।
निल्स

यह जोड़ने लायक होगा कि जंबो फ्रेम iSCSI प्रतिकृति के लिए शायद ही कभी समर्थित हैं (चूंकि सभी मध्यस्थ WAN उपकरणों को उनका समर्थन करना होगा)?
जेरेमी

@ जेरेमी पक्का - ऊपर लिखो। लैन पर भी - यदि आप रास्ते में एक डिवाइस को भूल जाते हैं (या यदि आपकी आउटसोर्स नेटवर्क टीम कुछ गलत करती है) तो MTU पथ जंबो फ्रेम का समर्थन नहीं करेगा।
निल्स

जेरेमी से सहमत। Nils, यदि TCP-CC उपलब्ध है तो यह संभव है कि इसके संभावित लाभ और परिणाम हों, जिन्हें कम से कम रेखांकित किया जाना चाहिए।
क्रिस एस

1

कुछ विचार और अनुसंधान आपको संबंधित विषय में लेने चाहिए :

1) मल्टी-पाथिंग - आपका SAN सॉल्यूशन और आपका OS, यह हाइपरविजर हो या नंगे मेटल OS को ठीक से काम करने के लिए वेंडर विशिष्ट सॉफ्टवेयर की आवश्यकता हो सकती है।

2) पहल - आपको यह जानना होगा कि क्या सॉफ्टवेयर सर्जक पर्याप्त मांग के आधार पर पर्याप्त प्रदर्शन कर रहा है। कई NIC में iSCSI ऑफलोडिंग क्षमता होती है, जो थ्रूपुट में काफी सुधार कर सकती है, लेकिन कुछ पुराने हाइपरवाइजर्स को काफी बुद्धिमानी के साथ पेशाब करने के लिए जाना जाता है। अधिक परिपक्व प्रसाद (ESXi 4.1+) अच्छा लगता है।

3) सुरक्षा / अनुमतियाँ - पूरी तरह से यह सुनिश्चित कर लें कि किस सर्जक को किस LUN तक पहुँच की आवश्यकता है ... यदि आप एक बुरे दिन के लिए होंगे यदि आपकी विंडोज मशीनों में से कोई एक एडमिन डिस्क पर "इनिशियलाइज़ डिस्क" करता है जो वास्तव में VMware डेटास्टोर के रूप में किसी अन्य सर्वर द्वारा उपयोग किया जाता है।


मल्टी-पाथिंग के संबंध में - वास्तव में आप इसे विभिन्न नेटवर्क के माध्यम से प्राप्त कर सकते हैं, वह भी - जो कि एफसी-सैन के साथ आईपी की तुलना में थोड़ा अधिक मुश्किल है (जहां विभिन्न हार्डवेयर कपड़ों के साथ सैन ए / बी की अवधारणा काफी आम है)।
निल्स

मल्टी-पाथिंग के साथ मेरा अनुभव मुख्य रूप से समरूप रहा है, जिस स्थिति में ग्राहक को आमतौर पर एक खोज आईपी पता (समूह आईपी) दिया जाता है और फिर वास्तविक लक्ष्य पते के लिए उस पते के साथ बातचीत होती है। मुझे लगता है कि यह अलग-अलग नेटवर्क के साथ किया जा सकता है और क्लाइंट के पास या तो एक रास्ता होगा, या नहीं, लेकिन खोज को नीचे जाना होगा यदि वह सबनेट समूह आईपी पर था जो मर गया था।
स्पेसमैनस्पीफ

मैंने (देशी) अलग VLAN पर SLES11 पर गुणा करने की कोशिश की। मुश्किल हिस्सा बहुपथ-विन्यास को संशोधित करने के लिए था, इसलिए एक ही भौतिक भंडारण में गए iSCSI- लक्ष्य को एक ही उपकरण के रूप में देखा गया था।
निल्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.