Onde começar com o diagnóstico de conectividade de rede descartada no Debian?

2

Nós temos um número de servidores virtualizados Xen, todos rodando Debian 6 64bit. Estamos tendo um problema intermitente onde, ocasionalmente, um servidor parará de responder pela rede. Quando isso acontece, não podemos fazer ping no servidor, e nossos registros de aplicativos indicam que ele não consegue se conectar a outros servidores na rede.

Isso aconteceu com alguns servidores diferentes não relacionados agora, e os únicos fatores comuns são o host VPS e a infraestrutura associada, o sistema operacional e as configurações do sistema operacional. Estou acompanhando isso com o host, mas preciso realmente chegar ao fim.

Eu realmente não tenho muito o que fazer no momento. As únicas entradas de log que eu posso achar que coincidem com o evento são uma linha no syslog:

Nov 21 19:36:10 xxxxxx ntpd[2460]: xxxx:4f8:xxx:xxx:1:2:3:4 interface xxxx:7e00::xxxx:91ff:xxxx:1bd4 -> (null)

No entanto, penso que isso é o resultado da morte da conexão de rede, em vez de uma pista sobre sua causa.

Os relatórios MTR de um servidor em funcionamento não mostram nada útil.

Então, como devo tentar entender o que está acontecendo aqui? Existe algum registro específico da rede que eu não saiba qual deve ser verificado?

Obrigado!

    
por UpTheCreek 22.11.2014 / 20:06

1 resposta

1

Eu presumo que você não tenha acesso ao seu host VPS e que você só pode depurar dentro da VM. Então é isso que eu faria.

Eu tentaria descobrir onde a quebra acontece - entre a VM e o host, a VM e o gateway ou talvez em algum lugar na rede de provedores.

Defina um script que fará o ping do seu primeiro salto, ou seja, o seu gateway. Se você tiver outras VMs no mesmo domínio de transmissão, poderá executá-las em vez de GW. Você poderia rodar screen / tmux e deixar ping dentro:

$ ping IP_OF_GW_OR_OTHER_VM | tee -a mytest.log

Quando a interrupção ocorre, se o gateway ainda estiver ativo e os pings passarem, você terá um problema pelo ralo. Nesse caso, faça um traceroute e faça ping nos próximos 2-3 saltos, até descobrir onde a interrupção acontece. Se o gateway estiver imediatamente indisponível, talvez seja necessário configurar um cron que tire um instantâneo de uma informação de rede quando a interrupção ocorrer:

ping -c 3 gateway
if [ $? -ne 0 ]; then
   ifconfig eth0 2>&1 >> /tmp/ifconfig-$(date +"%Y-%m-%d_%H:%M").log
   ethtool eth0 >> /tmp/ethtool-$(date +"%Y-%m-%d_%H:%M").log
fi

Você pode estender o script com informações adicionais, como uptime (para obter a carga atual) lsof ou netstat, se achar que também precisa dessas informações.

às vezes, o dhclient desconecta a conexão ou não consegue renovar a concessão, portanto, qualquer informação coletada no momento da interrupção pode ajudar.

    
por 23.11.2014 / 18:13