Proxmox और FreeNAS के बीच Brocade 200e: सभी ports online होते हुए भी Buffer I/O error और isp0: Receive Error
मैं एक छोटी सी virtualization संभालता हूँ: दो Proxmox 6 nodes और FreeNAS 11.2 पर एक target। जब तक HBA सीधे target से जुड़े थे, सब कुछ महीनों तक बिना एक भी error के चलता रहा। इनके बीच एक इस्तेमाल किया हुआ Brocade 200e लगाया, ताकि तार आड़े-तिरछे न खींचने पड़ें, और यहीं से शुरू हुआ।
- दो Proxmox 6 nodes, HBA QLogic QLE2462 और QLE2432
- target FreeNAS 11.2
- switch Brocade 200e, Fabric OS 6.1.0a
- पुराने stock वाले SFP और LC patch cords, बिना किसी पहचान चिह्न के
Nodes के log में:
Buffer I/O error on dev dm-5
और उसके बाद device के लगातार resets। Target साइड पर - commands पर firmware timeouts (CTIO7), और करीब हर मिनट में एक बार:
isp0: Receive Error
इसके बाद target दोनों initiators से एक साथ गिर जाता है, और यह सिर्फ node reboot करने से ठीक होता है।
अब तक क्या किया:
- direct connection वापस लगाया - कोई error बिल्कुल नहीं, यानी HBA, disks और target खुद इसमें दोषी नहीं;
switchshowतीनों ports को online दिखाता है, zoning minimal है, एक ही zone;- patch cords बदल-बदलकर लगाए, switch reboot किया।
खुद switch पर कहाँ देखूँ? switchshow वाला online साफ मुझे धोखा दे रहा है, पर इसे check किससे करूँ, यह अभी समझ नहीं आ रहा।
Comments 4
तुमने खुद ही सब ढूँढ लिया है: बढ़ते हुए crc_err और enc_out - यह line पर frames का खराब होना है, आगे stack में यह firmware timeouts, device resets और
isp0: Receive Errorमें बदल जाता है। न nodes का kernel, न target, यहाँ किसी का दोष नहीं, वे ईमानदारी से वही बता रहे हैं जो उन तक पहुँचा।जो तुमने पहले ही check किया है वह इस तरह पढ़ा जाता है:
sfpshowमें उन्हीं दो ports पर, बराबर लंबाई की cords होते हुए भी, कम receive - यह symmetric links की आपस में तुलना है, सिर से गढ़ी किसी norm से नहीं। तीसरा, साफ port तुम्हारे लिए एक मापदंड की तरह काम कर रहा हैआगे ज्यादा कुछ बचता नहीं।
fabriclog -sचलाओ - वहाँ दिखता है कि ports कैसे झटके खाते हैं, भले ही switchshow उस वक्त online दिखा रहा हो। और शक वाले ports पर SFP को LC patch cords समेत बदलो, अलग-अलग नहीं। मेरे साथ मिलती-जुलती कहानी ठीक इसी पर खत्म हुई थी: दो problem वाले ports पर modules और cords बदलना, जिसके बाद load के नीचे एक दिन तक porterrshow zero रहा, और fabric फिर नहीं बिखरी।Logic सीधा है: direct connection में trace पर दो connectors होते हैं, switch के ज़रिए - चार, साथ में दो extra modules। Power के मामले में borderline SFP या धूल भरी cord, जिसे direct connection खींच ले जाता था, ऐसी trace अब नहीं खींच पाती। तो switchshow में online कोई diagnosis नहीं, बस login का एक तथ्य भर है।
switchshow ठीक एक ही बात कहता है: port को light दिखी और वह fabric में login हो गया। Signal की quality के बारे में इसे कुछ नहीं पता, तो ऐसी स्थिति में इस पर भरोसा करना बेकार है।
तीनों ports पर
portstatsclearकरो, load चलाओ और फिरporterrshowदेखो - crc_err और enc_out में दिलचस्पी है, वे बढ़ रहे हैं या नहीं और ठीक किन ports पर। साथ ही हर port परsfpshow: receive power और voltage, इन्हें ports के बीच compare करना काम का है। और दिखाओ कि जिस पल target गिरता है उस वक्त FreeNAS साइड परsysctl dev.isp.0क्या देता है।Counters साफ किए, load दिया, देखा। तस्वीर यह है: दो ports पर crc_err और enc_out गुच्छों में बढ़ते हैं, और ठीक उन्हीं moments पर जब nodes पर Buffer I/O error बरसता है, जबकि तीसरे port पर बिल्कुल zero।
इन्हीं दो ports पर
sfpshowबराबर लंबाई की cords होते हुए भी पड़ोसी port से काफी कम receive दिखाता है। गिरने के दौरानsysctl dev.isp.0दिखाता है कि HBA reinitialize हो रहा है, यानी वह टूटने पर react कर रहा है, उसे बना नहीं रहा। लगता है यह physics है, न Proxmox की गलती है न target की।मिलती-जुलती चाल FC में न भी हो तो चलती है, तो counters हर हाल में देखने लायक हैं। Intel X520-2 की जोड़ी थी 850 nm वाले 10Gtek SR modules के साथ, और Brocade FastIron CX 648S-PoE FCX-2XG module और brocade के XFP के साथ, दोनों के बीच पाँच मीटर fibre।
Server ईमानदारी से 10GbE उठाता और भेजता था, पर receive बिल्कुल नहीं था, और switch पर port None speed के साथ Up लटका रहता।
show mediaदेखा, दोनों साइड से wavelength और reach मिलाई, port पर trunk negotiation बंद की - किसी नतीजे पर नहीं पहुँचे, XFP पर speed को fix ही नहीं कर सकते। वही fibre SFP+ ports पर gigabit पर आराम से दौड़ती थी। सीख बिल्कुल वही है जो तुम्हारे यहाँ है: port पर Up का मतलब यह नहीं कि frames पहुँच रहे हैं।