Bir sunucu kilitlemesi neden diğer sunucuları ağdan uzaklaştırır?


9

Birkaç düzine Proxmox sunucumuz var (Proxmox Debian üzerinde çalışıyor) ve ayda bir kez bir tanesinde çekirdek paniği olacak ve kilitlenecek. Bu kilitlemelerin en kötü yanı, küme yöneticisinden ayrı bir anahtarda olan bir sunucu olduğunda, bu anahtardaki diğer tüm Proxmox sunucularının, gerçekten çökmüş olan sunucuyu bulana ve yeniden başlatana kadar yanıt vermeyi durdurmasıdır.

Proxmox forumunda bu sorunu bildirdiğimizde, Proxmox 3.1'e yükseltmemiz tavsiye edildi ve bunu son birkaç aydır devam ediyoruz. Ne yazık ki, Proxmox 3.1'e geçirdiğimiz sunuculardan biri Cuma günü bir çekirdek paniği ile kilitlendi ve yine aynı anahtardaki tüm Proxmox sunucularına, çökmüş sunucuyu bulana ve yeniden başlatana kadar ağ üzerinden erişilemedi.

Eh, anahtardaki neredeyse tüm Proxmox sunucuları ... Aynı anahtardaki Proxmox sunucularının hala Proxmox sürüm 1.9'daki Proxmox sunucularının etkilenmediğini ilginç buldum.

Kilitlenen sunucunun konsolunun ekran görüntüsü:

resim açıklamasını buraya girin

Sunucu kilitlendiğinde, Proxmox 3.1'i çalıştıran aynı anahtardaki sunucuların geri kalanına erişilemez hale geldi ve aşağıdakileri bildiriyordu:

e1000e 0000:00:19.0: eth0: Reset adapter unexpectedly
e1000e 0000:00:19.0: eth0: Reset adapter unexpectedly
e1000e 0000:00:19.0: eth0: Reset adapter unexpectedly
...etc...

uname-kilitli sunucunun çıktısı:

Linux ------ 2.6.32-23-pve #1 SMP Tue Aug 6 07:04:06 CEST 2013 x86_64 GNU/Linux

pveversion -v çıktısı (kısaltılmış):

proxmox-ve-2.6.32: 3.1-109 (running kernel: 2.6.32-23-pve)
pve-manager: 3.1-3 (running version: 3.1-3/dc0e9b0e)
pve-kernel-2.6.32-23-pve: 2.6.32-109

İki soru:

  1. Çekirdek paniğine ne sebep olabileceğine dair ipuçları var mı (yukarıdaki resme bakın)?

  2. Aynı anahtar ve Proxmox sürümündeki diğer sunucular neden kilitli sunucu yeniden başlatılana kadar ağdan kesilsin ki? (Not: Aynı anahtarda, etkilenmeyen eski 1.9 Proxmox sürümünü çalıştıran başka sunucular da vardı. Ayrıca, aynı 3.1 kümesinde aynı anahtarda olmayan başka Proxmox sunucuları etkilenmedi.)

Herhangi bir tavsiye için şimdiden teşekkürler.


Dolu kazazedeyi verebilir misin? Yukarıdaki resim ilginç kısımları kesti. Ayrıca, crashdump'ı lkml'ye gönderdiniz mi? Ancak, tekrar baktığımızda, bu oldukça eski bir çekirdek, Debian'ı mevcut kararlı bir sürüme yükseltmek için planlar var mı?
ckujau

Ne yazık ki, çarpışma dökümü yok. Bir seri konsol ve / veya kdump yapılandırmak için listeme ekledim. Çekirdeğin eski olmasına gelince, Proxmox, OpenVZ'nin ana çekirdeğin bir kolu olan çekirdeğini kullanır. Bu yüzden, çökme dökümlerini çalıştırabildiğimde, yardım için OpenVZ geliştiricilerine başvuracağım. Yorumunuz için teşekkürler ... doğru yöne yönelmeme yardımcı oldu.
Curtis

Ne tür bir anahtar?
ETL

Sorun 3 farklı anahtarda (bir dlink ve 2 cisco) oldu. Önceki iki anahtarda model numaram yok, ancak sonuncusu bir Cisco SG102-24. Sadece aynı çekirdeği çalıştıran anahtardaki sunucuları etkilediğinden ve üçüncü anahtarımda olduğum için anahtarın suçlanması pek olası görünmüyor (bu da benim orijinal düşüncem olsa da).
Curtis

Birisinin buraya aşağıdaki yorumu gönderdiğine dair bir e-posta bildirimi aldım ... "Benzer bir sorunum var, ancak sert çekirdekli birkaç kap ile mayın kazası yapabilirim ..." Ne yazık ki, orada kesildi ve geldiğimde burada yazar yorumunu kaldırmıştı, bu yüzden geri kalanının ne olduğunu bilmiyorum. Ancak, yoğun ağ trafiği olduğunda (yedeklemeler çalışırken) sorunun en sık göründüğünü kaydettiğimi de ekleyeceğim. Belki de bu yorum "hardcore ağ aktarımları" mıydı?
Curtis

Yanıtlar:


2

Sorununuzun neredeyse tek bir faktörden değil, faktörlerin bir kombinasyonundan kaynaklandığından neredeyse eminim. Bu bireysel faktörlerin ne olduğu kesin değildir, ancak büyük olasılıkla bir faktör ya ağ arayüzü ya da sürücüdür ve anahtarın kendisinde başka bir faktör bulunur. Bu nedenle, sorunun sadece bu özel ağ arayüzü markasıyla birleştirilmiş bu özel anahtar markası ile yeniden üretilmesi muhtemeldir.

Sorunun tetikleyicisi, tek bir sunucuda, bir şekilde anahtar boyunca yayılmayı başaran etkileri olan bir çekirdek paniğine sahip olan bir şey gibi görünüyor. Bu kulağa büyük geliyor, ama söyleyebilirim ki tetikleyici başka bir yerde.

Anahtar veya ağ arabiriminde bir şey oluyor olabilir, bu da eşzamanlı olarak çekirdek panik ve anahtardaki bağlantı sorunlarına neden olur. Başka bir deyişle, çekirdeğin bir çekirdek paniği olmasa bile, tetikleyici anahtar üzerindeki bağlantıyı çok iyi azaltmış olabilir.

Birinin sunucu üzerinde neler olabileceğini sorması gerekir ki bu da diğer sunucular üzerinde bu etkiye neden olabilir. Bu mümkün olmamalı, bu yüzden açıklama sistemde bir yerde bir kusur içermelidir.

Sadece çökmüş sunucu ile aşağı inen veya kararsız hale gelen anahtar arasındaki bağlantı olsaydı, bunun diğer sunuculara bağlantı durumu üzerinde hiçbir etkisi olmamalıdır. Eğer öyleyse, bu anahtardaki bir kusur olarak sayılır. Trafik açısından, çökmüş sunucu bağlantıyı kaybettiğinde diğer sunucular biraz daha az trafik görmelidir; bu da neden yaptıkları sorunu gördüklerini açıklayamaz.

Bu beni anahtardaki bir tasarım kusurunun muhtemel olduğuna inandırıyor.

Ancak, bir bağlantı sorunu, bir sunucudaki bir sorunun anahtardaki diğer sunucular için nasıl sorunlara neden olabileceğini açıklamaya çalışırken ilk açıklama değildir. Bir yayın fırtınası daha açık bir açıklama olacaktır. Ancak çekirdek paniği olan bir sunucu ile yayın fırtınası arasında bir bağlantı olabilir mi?

Bilinmeyen MAC adresleri için hedeflenen çok noktaya yayın ve paketler, yayınlarla aynı veya daha az işlem görür, bu nedenle bu tür paketlerin bir fırtınası da sayılır. Yasaklanan sunucu, anahtar tarafından tanınmayan bir MAC adresine ağ üzerinden bir çökme göndermeye çalışıyor olabilir mi?

Tetikleyici buysa, diğer sunucularda bir şeyler ters gidiyor. Çünkü bir paket fırtınası ağ arayüzünde bu tür hatalara neden olmamalıdır. Reset adapter unexpectedlybir paket fırtınası gibi gelmiyor (bu sadece performansta bir düşüşe neden olmalı, ancak böyle bir hataya neden olmamalıdır) ve bir bağlantı problemi gibi gelmiyor (aşağıya inen bağlantılar hakkında mesajlarla sonuçlanmış olmalı, ancak ) görünce.

Bu nedenle, ağ arabirimi donanımında veya sürücüsünde, anahtar tarafından tetiklenen bazı kusurlar olabilir.

Ek ipuçları verebilecek birkaç öneri:

  1. Anahtara başka bir ekipman bağlayabilir ve sorun ortaya çıktığında anahtarda hangi trafiği gördüğünüze bakabilir misiniz (ya sessizleşir ya da bir sel görürsünüz).
  2. Sonuçların nasıl farklılaştığını görmek için sunuculardan birindeki ağ arabirimini farklı bir sürücü kullanarak farklı bir marka ile değiştirmek mümkün müdür?
  3. Anahtarlardan birini farklı bir marka ile değiştirmek mümkün mü? Anahtarın değiştirilmesi sorunun artık birden fazla sunucuyu etkilememesini sağlayacaktır. Bilmek daha ilginç olan şey, çekirdek paniklerinin olmasını da durdurup engellemediğidir.

Düşünceli cevabınız için teşekkür ederim. 3 öneriniz açısından: 1) Bunu ne tür ekipman / yazılım yapardı? 2) Keşke yapabilseydim, ancak çok sayıda sunucu var ve sorunun bir sonraki aşamada nerede olacağını bilmiyorum. 3) Zaten 3 farklı anahtar denedim (3 farklı model, 2 farklı marka). Ayrıca ilginç olan, yalnızca aynı Proxmox sürümündeki sunucuların etkilenmesidir. Proxmox'un bir küme senkronizasyon mekanizması var, bu yüzden bununla bir ilgisi olduğundan şüpheleniyorum. Neyse ki, sorunun ortaya çıkmasından bu yana birkaç ay geçti.
Curtis

Anahtardaki trafiğe bakmak için sıradan bir PC'yi tcpdump ve / veya wireshark ile bağlamayı düşünüyordum. Etkilenen yazılımın o bilgisayarda yüklü olmasını önlemek istersiniz. Ancak Proxmox'un çekirdeğe yüklediği kodda bir hata olması gerektiği anlaşılıyor. Nadiren gerçekleşirse, ayda sadece bir kez ve her seferinde yalnızca bir anahtarda görürseniz, izlemesi uzun zaman alabilir. Bu konuda biraz düşüneceğim ve daha fazla fikir gelirse yorum yapacağım.
kasperd

1

Bana ethernet sürücüsündeki veya donanım / bellenimdeki bir hata gibi geliyor, bu kırmızı bir bayrak:

e1000e 0000:00:19.0: eth0: Reset adapter unexpectedly
e1000e 0000:00:19.0: eth0: Reset adapter unexpectedly
e1000e 0000:00:19.0: eth0: Reset adapter unexpectedly

Bunları daha önce gördüm ve sunucuyu çevrimdışı hale getirebilir. Intel ethernet kartlarında olup olmadığını tam olarak hatırlamıyorum ama buna inanıyorum. Hatta Ethernet kartlarındaki bir hata ile ilgili olabilir. Bu tür sorunları olan belirli intel ethernet kartları hakkında bir şeyler okuduğumu hatırlıyorum. Ama makalenin bağlantısını kaybettim.

Bunun için tetikleyicinin kısmen kullanılan sürücüye (sürüm) bağlı olduğunu hayal edebilirim, aslında yazılımın eski bir versiyonunun iyi çalıştığını onaylıyor gibi görünüyor. Satıcının kendi özel çekirdeğini kullandığını, özel ethernet donanımınız için kullanılan ethernet sürücü modülünü güncellemeyi deneyin. Ya satıcınızdan ya da resmi çekirdek kaynak ağacından biri.

Ayrıca, ethernet donanımınızı bağlamaya bakın, normalde bir sunucuda iki ethernet bağlantı noktası bulunur, yerleşik ve / veya kartlara eklenir. Bu şekilde bir ethernet kartı bu sorunu yaşıyorsa, diğeri bu sorunu çözer. "Kart" kelimesini kullanıyorum ama elbette herhangi bir ethernet donanımı için de geçerli.

Ethernet donanımını değiştirmek de düzeltebilir. Daha yeni (intel) bir ethernet kartını değiştirin veya ekleyin ve bunun yerine bunu kullanın. Sorun donanım / bellenimde ise, daha yeni bir kartın düzeltilmesi (veya daha eski?)


Makinelerin hepsinde çift ethernet bağlantı noktası vardır, ancak bu hata, makinelerden birinin kilitlendiği anda aynı anahtarda olan birden fazla sunucuda aynı anda gerçekleşir. Kilitli bir sunucunun gücü kapatıldığı anda, etkilenen tüm sunuculara anında yeniden erişilir. Bu, kilitli sunucunun tamamen kilitli olmadığını, ancak bir şekilde aynı anahtardaki makinelerin sıfırlanmasını su bastığını gösteriyor gibi görünüyor. Bir sürücü güncellemesinin yardımcı olup olmayacağını görmek ilginç olurdu, ancak diğer ethernet kartını etkinleştirmenin kanıtlara dayanarak yardımcı olabileceğini düşünmüyorum.
Curtis

Eski iş parçacığı, ancak Intel e1000e NIC Model 82574L ve 5.0-23 / af4267bf'nin yeni ProxMox sürümlerinden biri ile bile ağ sorunları devam ediyor. Aynı anahtara bağlı Windows dizüstü bilgisayarımı (uykudan uyandırma veya sadece giriş) getirebilirim ve ProxMox sunucusu her seferinde yeniden başlatılır. Ayrıca, anahtara bağlı olmadığında ara sıra yeniden başlatıldığını gördüm. Ve anahtara ilk bağladığımda yeniden başlatılacak. Şu anki sürücü 3.3.5.3 ve 3.3.5.10, 3.3.6 ve 3.4.0.2 var, bu yüzden bunları oluşturmayı ve kullanmayı deneyeceğim. Benim .02c.
JGlass
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.