![Alto uso de CPU e tráfego em alguns nós do Cassandra](https://rvso.com/image/768903/Alto%20uso%20de%20CPU%20e%20tr%C3%A1fego%20em%20alguns%20n%C3%B3s%20do%20Cassandra.png)
Conforme declarado no título, estamos tendo um problema com nosso cluster Cassandra. Há9 nóscom umfator de replicação de 3usandoTopologia de RedeEstratégia. Tudo no mesmo DC e Rack. A versão de Cassandra é3.11.4(planejando mudar em 3.11.10). As instâncias têm4 CPUe32 GB de RAM. (planejando mudar para 8 CPU)
Sempre que tentamos executar o reparo em nosso cluster (usando Cassandra Reaper em um de nossos nós), perdemos um nó em algum lugar do processo. Paramos rapidamente o reparo, reiniciamos o serviço Cassandra no nó e esperamos que ele entre no anel. Portanto, nunca podemos fazer reparos atualmente.
Observei o problema e percebi que esse problema é causado pelo alto uso da CPU em alguns de nossos nós(exatamente 3). Você pode ver o gráfico de intervalo de 1 semana abaixo.Altos e baixos são causados pelo uso do aplicativo. De manhã, é muito baixo.
Comparei os processos em execução em cada nó e não há nada extra nos nós de alta CPU. Comparei as configurações. Eles são idênticos. Não foi possível encontrar nenhuma diferença.
Também percebi que esses nós são os que absorvem a maior parte do tráfego. Veja o gráfico de intervalo de 1 semana abaixo.Bytes enviados e recebidos.
Gráfico de bytes enviados e recebidos
Eu fiz algumas pesquisas. eu encontreiessethread e no final recomenda-se definir dynamic_snitch: false
a configuração do Cassandra. Eu olhei para nossa estratégia de delação, que éFofocaPropertyFileSnitch. Na prática, esta estratégia deveria funcionar corretamente, mas acho que não.
O trabalho de um informante é fornecer informações sobre a topologia de sua rede para que Cassandra possa rotear solicitações com eficiência.
Minha única observação que pode ser a causa desse problema é que existe um arquivo chamadocassandra-topologia.propertiesque é especificamentedisse para ser removidose estiver usando GossipingPropertyFileSnitch
O rack e o datacenter do nó local são definidos em cassandra-rackdc.properties e propagados para outros nós por meio de fofoca. Se cassandra-topology.properties existir, ele será usado como substituto, permitindo a migração do PropertyFileSnitch.
Não removi este arquivo porque não consegui encontrar nenhuma prova concreta de que isso estivesse causando o problema. Se você tiver algum conhecimento sobre isso ou encontrar qualquer outro motivo para o meu problema, agradeceria sua ajuda.