TL; DR संस्करण: यह विंडोज सर्वर 2008 R2 में एक गहरी ब्रॉडकॉम नेटवर्किंग बग था। इंटेल हार्डवेयर की जगह इसे तय किया। हम ब्रॉडकॉम हार्डवेयर का उपयोग नहीं करते हैं। कभी।
हम लिनक्स-हा परियोजना से दिल की धड़कन के साथ-साथ HAProxy का उपयोग कर रहे हैं । हम एक विफलता प्रदान करने के लिए दो लिनक्स उदाहरणों का उपयोग कर रहे हैं। प्रत्येक सर्वर का अपना सार्वजनिक IP और एक एकल IP होता है, जो दोनों के बीच एक वर्चुअल इंटरफ़ेस (eth1: 1) का उपयोग करके IP: 69.59.196.211 पर साझा किया जाता है
वर्चुअल इंटरफ़ेस (eth1: 1) IP 69.59.196.211 उनके पीछे विंडो सर्वर के गेटवे के रूप में कॉन्फ़िगर किया गया है और हम मार्ग यातायात के लिए ip_forwarding का उपयोग करते हैं।
हम अपने लिनक्स गेटवे के पीछे हमारे एक विंडोज सर्वर पर एक सामयिक नेटवर्क आउटेज का सामना कर रहे हैं। HAProxy सर्वर का पता लगाएगा जो ऑफ़लाइन है जिसे हम विफल सर्वर को हटाकर गेटवे को पिंग करने का प्रयास कर सकते हैं:
32 बाइट डेटा के साथ 69.59.196.211 पिंग करना: 69.59.196.220 से उत्तर: गंतव्य मेजबान पहुंच से बाहर है।
arp -a
इस विफल सर्वर पर चलने से पता चलता है कि प्रवेश द्वार के पते (69.59.196.211) के लिए कोई प्रविष्टि नहीं है :
इंटरफ़ेस: 69.59.196.220 --- 0xa इंटरनेट पता भौतिक पता प्रकार 69.59.196.161 00-26-88-63-c7-80 गतिशील 69.59.196.210 00-15-5d-0a-3e-0e गतिशील 69.59.196.212 00-21-5e-4d-45-c9 गतिशील 69.59.196.213 00-15-5d-00-b2-0d गतिशील 69.59.196.215 00-21-5e-4d-61-1a गतिशील 69.59.196.217 00-21-5e-4d-2c-e8 गतिशील 69.59.196.219 00-21-5e-4d-38-e5 गतिशील 69.59.196.221 00-15-5d-00-b2-0d गतिशील 69.59.196.222 00-15-5d-0a-3e-09 गतिशील 69.59.196.223 ff-ff-ff-ff-ff-ff-static 224.0.0.22 01-00-5e-00-00-16 स्थिर 224.0.0.252 01-00-5e-00-00-fc स्थिर 225.0.0.1 01-00-5e-00-00-01 स्थिर
हमारे लिनक्स गेटवे उदाहरणों पर arp -a
पता चलता है:
eth1 पर <अपूर्ण> <शिखर> colo-196-220.peak.org (69.59.196.220) stackoverflow.com (69.59.196.212) पर 00: 21: 5e: 4d: 45: c9 [ईथर] eth1 पर पीक-colo-196-215.peak.org (69.59.196.215) 00: 21: 5e: 4d: 61: 1a [ईथर] eth1 पर चोटी-colo-196-219.peak.org (69.59.196.219) 00: 21: 5e: 4d: 38: e5 [ईथर] eth1 पर चोटी- colo-196-222.peak.org (69.59.196.222) 00: 15: 5d: 0a: 3e: 09 [ईथर] eth1 पर चोटी- colo-196-209.peak.org (69.59.196.209) 00: 26: 88: 63: c7: 80 [ईथर] eth1 पर चोटी- colo-196-217.peak.org (69.59.196.217) 00: 21: 5e: 4d: 2c: e8 [ईथर] eth1 पर
Arp कभी-कभी इस असफल सर्वर के लिए प्रविष्टि को <अपूर्ण> के रूप में क्यों सेट करेगा? क्या हमें अपनी arp प्रविष्टियों को सांख्यिकीय रूप से परिभाषित करना चाहिए? मैंने हमेशा 99% काम करने के बाद अकेले arp छोड़ दिया है, लेकिन इस एक उदाहरण में यह विफल हो रहा है। क्या कोई अतिरिक्त समस्या निवारण चरण हैं जो हम इस समस्या को हल करने में मदद कर सकते हैं?
हमें पता चला है
मैंने लिनक्स गेटवे में से एक पर परीक्षण के लिए एक स्थिर arp प्रविष्टि जोड़ी जो अभी भी मदद नहीं की।
root@haproxy2:~# arp -a
peak-colo-196-215.peak.org (69.59.196.215) at 00:21:5e:4d:61:1a [ether] on eth1
peak-colo-196-221.peak.org (69.59.196.221) at 00:15:5d:00:b2:0d [ether] on eth1
stackoverflow.com (69.59.196.212) at 00:21:5e:4d:45:c9 [ether] on eth1
peak-colo-196-219.peak.org (69.59.196.219) at 00:21:5e:4d:38:e5 [ether] on eth1
peak-colo-196-209.peak.org (69.59.196.209) at 00:26:88:63:c7:80 [ether] on eth1
peak-colo-196-217.peak.org (69.59.196.217) at 00:21:5e:4d:2c:e8 [ether] on eth1
peak-colo-196-220.peak.org (69.59.196.220) at 00:21:5e:4d:30:8d [ether] PERM on eth1
root@haproxy2:~# arp -i eth1 -s 69.59.196.220 00:21:5e:4d:30:8d
root@haproxy2:~# ping 69.59.196.220
PING 69.59.196.220 (69.59.196.220) 56(84) bytes of data.
--- 69.59.196.220 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6006ms
विंडोज़ वेब सर्वर को रिबूट करना इस मुद्दे को अस्थायी रूप से नेटवर्क में कोई अन्य परिवर्तन के साथ हल करता है लेकिन हमारा अनुभव दिखाता है कि यह मुद्दा वापस आ जाएगा।
स्वैपिंग नेटवर्क कार्ड और स्विच
मैंने देखा कि असफल विंडोज़ सर्वर के लिए स्विच के पोर्ट पर लिंक लाइट फेल हुए इंटरफ़ेस पर 1Gb के बजाय 100Mb पर चल रही थी। मैंने केबल को कई अन्य खुले बंदरगाहों में स्थानांतरित किया और लिंक ने प्रत्येक बंदरगाह के लिए 100Mb का संकेत दिया जो मैंने कोशिश की थी। मैंने उसी परिणाम के साथ केबल को स्वैप भी किया। मैंने विंडोज़ में नेटवर्क कार्ड के गुणों को बदलने की कोशिश की और सर्वर लॉक हो गया और लागू होने के बाद एक हार्ड रीसेट की आवश्यकता है। इस विंडोज़ सर्वर में दो भौतिक नेटवर्क इंटरफेस हैं, इसलिए मैंने दो इंटरफेस पर केबलों और नेटवर्क सेटिंग्स को स्वैप किया है ताकि यह देखा जा सके कि समस्या इंटरफ़ेस का अनुसरण करती है या नहीं। यदि सार्वजनिक इंटरफ़ेस फिर से नीचे जाता है तो हमें पता चलेगा कि यह नेटवर्क कार्ड के साथ कोई समस्या नहीं है।
(हमने एक और स्विच की कोशिश की जो हमारे हाथ में है, कोई बदलाव नहीं)
नेटवर्क हार्डवेयर ड्राइवर संस्करण बदलना
हमें लेटेस्ट ब्रॉडकॉम ड्राइवर के साथ-साथ बिल्ट-इन ड्राइवर के साथ भी यही समस्या है जो विंडोज सर्वर 2008 आर 2 में जहाज करते हैं।
नेटवर्क केबल की जगह
एक आखिरी खाई के प्रयास के रूप में हमने एक और बदलाव को याद किया, जो हमारे सर्वर / स्विच के बीच पैच पैच के सभी का प्रतिस्थापन था। हमने निजी इंटरफेस के लिए दो सेट, लंबाई 1 फीट का एक हरा - 3 फीट और सार्वजनिक इंटरफेस के लिए लाल केबलों का एक और सेट खरीदा था। हमने एक अलग ब्रांड के साथ सभी सार्वजनिक इंटरफ़ेस पैच केबलों की अदला-बदली की और एक पूरे सप्ताह के लिए हमारे सर्वर को बिना किसी समस्या के चलाया।
चेकसम ऑफ़लोड को अक्षम करें, TProxy को हटा दें
हमने ड्राइवर में टीसीपी / आईपी चेकसम ऑफलोड को अक्षम करने का भी प्रयास किया, कोई परिवर्तन नहीं। अब हम TProxy को बाहर निकाल रहे हैं और x-forwarded-for
बिना किसी फैंसी आईपी एड्रेस पुनर्लेखन के एक अधिक पारंपरिक नेटवर्क व्यवस्था की ओर बढ़ रहे हैं । हम देखेंगे कि क्या मदद करता है।
वर्चुअलाइजेशन प्रदाताओं को स्विच करें
बंद मौके पर यह हाइपर-वी से संबंधित था (हम इस पर लिनक्स लिनक्स वीएम होस्ट करते हैं), हमने वीएमडब्लू सर्वर पर स्विच किया। कोई परिवर्तन नहीं होता है।
होस्ट मॉडल स्विच करें
हम अपनी समस्या निवारण रस्सी के अंत तक पहुँच चुके हैं और अब औपचारिक रूप से Microsoft समर्थन में शामिल हैं। उन्होंने मेजबान मॉडल को बदलने की सिफारिश की:
- http://en.wikipedia.org/wiki/Host_model
- http://technet.microsoft.com/en-us/magazine/2007.09.cableguy.aspx
हमने ऐसा किया, और हमें कुछ अप्रकाशित कर्नेल हॉटफ़िक्स भी मिले, जो संभवतः 2008 R2 SP1 में रोल किए गए थे। कुछ तय।
नेटवर्क कार्ड हार्डवेयर की जगह
अंततः, इंटेल नेटवर्क हार्डवेयर के साथ ब्रॉडकॉम नेटवर्क हार्डवेयर की जगह ने हमारे लिए इस मुद्दे को ठीक कर दिया। इसलिए मुझे लगता है कि ब्रॉडकॉम विंडोज सर्वर 2008 आर 2 ड्राइवर गलती पर हैं!