Por que os nós do Cassandra relatam tempos limite nos logs durante períodos de baixo tráfego?
O system.log
relatório de nós ConnectTimeoutException
entre nós ou erros de "soquete fechado".
Por que os nós do Cassandra relatam tempos limite nos logs durante períodos de baixo tráfego?
O system.log
relatório de nós ConnectTimeoutException
entre nós ou erros de "soquete fechado".
Fundo
Este artigo discute um problema em que um firewall configurado com um tempo limite de conexão inativo pode fechar conexões para nós locais e nós em outros datacenters durante períodos de baixo tráfego.
Causa
O Keepalive TCP pode não estar configurado adequadamente para seu ambiente. O tempo limite de conexão ociosa padrão geralmente é definido como 2 horas (
7200
segundos), o que significa que as sondagens de manutenção de atividade não são enviadas com frequência suficiente para o tempo limite de conexão ociosa do firewall.Solução
Para evitar que as conexões entre os nós atinjam o tempo limite, defina as seguintes configurações de kernel de rede:
Essas configurações manterão a conexão ativa enviando 3 sondas a cada 60 segundos com um intervalo de 10 segundos entre cada sonda. Saúde!