TL; DR sürümü: Bunun Windows Server 2008 R2'deki derin bir Broadcom ağ bağlantısı hatası olduğu ortaya çıktı. Intel donanımıyla değiştirmek sorunu çözdü. Artık Broadcom donanımını kullanmıyoruz. Hiç.
Linux-HA projesinden HAProxy'i kalp atışı ile birlikte kullanıyoruz . Yük devretme sağlamak için iki linux örneği kullanıyoruz. Her sunucu IP: 69.59.196.211’de sanal bir arabirim (eth1: 1) kullanılarak paylaşılan kendi IP’lerine ve ikisi arasında paylaşılan tek IP’lerine sahiptir.
Sanal arabirim (eth1: 1) IP 69.59.196.211, arkasındaki windows sunucuları için ağ geçidi olarak yapılandırılmıştır ve trafiği yönlendirmek için ip_forwarding kullanıyoruz.
Windows sunucularımızdan birinde, linux ağ geçitlerimizin arkasında ara sıra ağ kesintisi yaşıyoruz. HAProxy, sunucunun çevrimdışı olduğunu tespit eder; bu, başarısız olan sunucuya geçerek ve ağ geçidini ping yapmaya çalışarak doğrulayabilir:
32 bayt veri ile 69.59.196.211 numaralı ping işlemi: 69.59.196.220 arasında yanıt: Hedef ana bilgisayara erişilemiyor.
arp -a
Bu başarısız sunucuda çalıştırmak , ağ geçidi adresi için giriş olmadığını gösterir (69.59.196.211):
Arayüz: 69.59.196.220 --- 0xa İnternet Adresi Fiziksel Adres Türü 69.59.196.161 00-26-88-63-c7-80 dinamik 69.59.196.210 00-15-5d-0a-3e-0e dinamik 69.59.196.212 00-21-5e-4d-45-c9 dinamik 69.59.196.213 00-15-5d-00-b2-0d dinamik 69.59.196.215 00-21-5e-4d-61-1a dinamik 69.59.196.217 00-21-5e-4d-2c-e8 dinamik 69.59.196.219 00-21-5e-4d-38-e5 dinamik 69.59.196.221 00-15-5d-00-b2-0d dinamik 69.59.196.222 00-15-5d-0a-3e-09 dinamik 69.59.196.223 ff-ff-ff-ff-ff-ff statik 224.0.0.22 01-00-5e-00-00-16 statik 224.0.0.252 01-00-5e-00-00-fc statik 225.0.0.1 01-00-5e-00-00-01 statik
Bizim linux ağ geçidinde örnekleri arp -a
gösterir:
peak1colo-196-220.peak.org (69.59.196.220) eth1 tarihinde <incomplete> adresinde stackoverflow.com (69.59.196.212) 00: 21: 5e: 4d: 45: c9 [eter] 'de etı1'de peak-colo-196-215.peak.org (69.59.196.215) 00: 21: 5e: 4d: 61: 1a [eter] 'de et1'de peak-colo-196-219.peak.org (69.59.196.219) 00: 21: 5e: 4d: 38: e5 [eter] 'de et1'de peak-colo-196-222.peak.org (69.59.196.222) 00: 15: 5d: 0a: 3e: 09 [eth] 'de peak-colo-196-209.peak.org (69.59.196.209) 00: 26: 88: 63: c7: 80 [eter] 'de et1'de peak-colo-196-217.peak.org (69.59.196.217) 00: 21: 5e: 4d: 2c: e8 [eth] 'de
Neden arp bu başarısız sunucunun girişini neden <incomplete> olarak ayarlasın ki? Arp girişlerimizi statik olarak mı tanımlamalıyız? Zamanın% 99'unu çalıştığı için her zaman yalnız bıraktım, ama bu durumda başarısız görünüyor. Bu sorunu çözmek için yardımcı olabileceğimiz başka sorun giderme adımları var mı?
BİZ GERÇEKLERİMİZ
Hala yardım etmeyen linux ağ geçitlerinden birinde test etmek için statik bir arp girişi ekledim.
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
Windows web sunucusunu yeniden başlatmak, ağda başka hiçbir değişiklik yapmadan bu sorunu geçici olarak çözer, ancak deneyimlerimiz bu sorunun geri döneceğini gösterir.
Ağ kartlarını ve anahtarlarını değiştirme
Başarısız olan Windows sunucusunun anahtar bağlantı noktasındaki bağlantı ışığının, başarısız arabirimde 1 GB yerine 100Mb'de çalıştığını fark ettim. Kabloyu diğer birkaç açık porta taşıdım ve bağlantı, denediğim her port için 100Mb gösteriyor. Ayrıca kabloyu da aynı şekilde değiştirdim. Ağ kartının özelliklerini pencerelerde değiştirmeyi denedim ve sunucu kilitlendi ve uygulamanın tıklatılmasından sonra donanımın sıfırlanması gerekiyordu. Bu Windows sunucusunda iki fiziksel ağ arayüzü var, bu yüzden sorunun arayüzde olup olmadığını görmek için iki arayüzde kabloları ve ağ ayarlarını değiştirdim. Genel arayüz tekrar kapanırsa, bunun ağ kartıyla ilgili bir sorun olmadığını anlayacağız.
(Ayrıca elimizde olan başka bir anahtar denedik, değişiklik yok)
Ağ donanım sürücüsü sürümlerini değiştirme
En son Broadcom sürücüsünün yanı sıra Windows Server 2008 R2 ile birlikte gelen yerleşik sürücüyle de aynı sorunu yaşadık.
Ağ kablolarını değiştirme
Son bir çaba olarak, gerçekleşen başka bir değişikliğin sunucularımız / anahtarımız arasındaki tüm bağlantı kablolarının değiştirilmesi olduğunu hatırladık. Özel arayüzler için 1 ft - 3 ft yeşil uzunlukta ve genel arayüzler için kırmızı kablo seti olmak üzere iki set satın aldık. Tüm ortak arabirim patch kablolarını farklı bir marka ile değiştirdik ve sunucularımızı tam bir hafta sorunsuzca çalıştırdık ... aaaaave sonra sorun tekrar çözüldü.
Sağlama toplamı devre dışı bırak, TProxy'yi kaldır
Ayrıca sürücüdeki TCP / IP sağlama toplamı devre dışı bırakmayı da devre dışı bırakmayı denedik. Şimdi TProxy'yi çıkarıyoruz ve x-forwarded-for
herhangi bir fantezi IP adresi yeniden yazmadan daha geleneksel bir ağ düzenlemesine geçiyoruz . Bunun yardımcı olup olmadığını göreceğiz.
Sanallaştırma sağlayıcılarını değiştir
Şans eseri bu, Hyper-V ile bir şekilde ilişkiliydi (üzerinde Linux VM'leri barındırıyoruz), VMWare Sunucusuna geçtik. Değişiklik yok.
Ana bilgisayar modelini değiştir
Sorun giderme ipimizin sonuna ulaştık ve şimdi resmen Microsoft desteğini içeriyoruz. Ana bilgisayar modelini değiştirmeyi tavsiye ettiler:
- http://en.wikipedia.org/wiki/Host_model
- http://technet.microsoft.com/en-us/magazine/2007.09.cableguy.aspx
Bunu yaptık ve muhtemelen 2008 R2 SP1’de yayınlanmış olan yayınlanmamış çekirdek düzeltmelerini de aldık. Düzeltme yok.
Ağ kartı donanımını değiştirme
Sonuçta, Broadcom ağ donanımını Intel ağ donanımıyla değiştirmek bizim için bu sorunu çözdü. Bu yüzden Broadcom Windows Server 2008 R2 sürücülerinin hatalı olduğunu düşünmeye meyilliyim!