[CentOS-pt-br] ksoftirq me ferrando a vida
Marcelo Gondim
gondim em linuxinfo.com.br
Sexta Maio 6 10:01:02 EDT 2011
Olá pessoal,
Só pra movimentar mais a lista rsrsrsrs
Estou com um problema sinistro aqui. Vou descrever meu ambiente e depois
o que está ocorrendo:
Aqui é um ISP com ASN e logicamente usando BGP. Nosso link hoje é de
320Mbps indo para 500Mbps.
Tenho um router usando Mikrotik com 2 interfaces Intel Gigabit e este
faz o roteamento BPG. Logo depois tenho um Firewall CentOS em um Intel
Core I5 com 4Gb de ram e 2 Interfaces Intel Gigabit. Nosso tráfego hoje
em momentos de pico chega à 250Mbps. São 2 cidades usando esse link,
sendo que aqui em Araruama o consumo é maior chegando à 150Mbps os
outros 100Mbps da outra Cidade.
Depois das 14:00 horário em que o tráfego costuma aumentar estou tendo
aleatoriamente problemas com o ksoftirq nas 2 interfaces de rede do
Firewall que elas vão pra 45 à 100% de uso de CPU e aí o tráfego vai
caindo até parar fica um certo tempo assim e depois volta ao normal.
Passa algum tempo e começa o problema. Já fiz algumas coisas para tentar
resolver já que no messages não mostra nada de anormal no momento do
problema. Coisas que fiz:
1) Tentei com outra distro linux e aconteceu a mesma coisa, logo não
está relacionado com alguma característica específica da distro. Voltei
para o nosso CentOS, claro. :)
2) Troquei o hardware do Firewall que era um Intel Quad Core e passou à
ser um Intel Core i5. Não adiantou também.
3) Mudei uns parâmetros de sysctl também para tentar algo e foi em vão.
Abaixo minha sysctl atual:
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.neigh.default.gc_thresh1 = 65535
net.ipv4.neigh.default.gc_thresh2 = 65535
net.ipv4.neigh.default.gc_thresh3 = 65535
net.ipv4.route.gc_min_interval = 0
net.ipv4.route.max_size = 524288
kernel.printk = 3 4 1 3
net.ipv4.tcp_max_syn_backlog = 30000
net.ipv4.tcp_congestion_control = cubic
Outras mudanças que fiz com conntracks e tal:
echo 3276822 > /proc/sys/net/ipv4/ip_conntrack_max
echo 86400 >
/proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
4) Agora troquei o router que antes era um P4 por um Quad Core, pois
pensei na hipótese do Router não estar aguentando as requisições e estou
aguardando para ver se vai dar o problemas novamente.
5) Os cabos que interligando Firewall, Router e Servidores são CAT6 e as
portas na Switch são gigabit.
Alguém já passou por isso ou tem alguma idéia sobre esse tipo de problema?
[]´s à todos
Mais detalhes sobre a lista de discussão CentOS-pt-br