Alto uso de CPU y tráfico en algunos nodos de Cassandra

Alto uso de CPU y tráfico en algunos nodos de Cassandra

Como se indica en el título, tenemos un problema con nuestro clúster Cassandra. Hay9 nodoscon unfactor de replicación de 3usandoEstrategia de topología de red. Todo en el mismo DC y Rack. La versión de Casandra es3.11.4(planeando mudarse el 3.11.10). Las instancias tienen4 procesadoresy32 GB de RAM. (planeando pasar a 8 CPU)

Cada vez que intentamos ejecutar la reparación en nuestro clúster (usando Cassandra Reaper en uno de nuestros nodos), perdemos un nodo en algún lugar del proceso. Detenemos rápidamente la reparación, reiniciamos el servicio Cassandra en el nodo y esperamos a que se una al anillo. Por lo tanto, hoy en día nunca podemos realizar reparaciones.

Observé el problema y me di cuenta de que se debe al uso elevado de CPU en algunos de nuestros nodos.(exactamente 3). Puede ver el gráfico de intervalo de 1 semana a continuación.Los altibajos se deben al uso de la aplicación. Por las mañanas es muy bajo.

gráfico de uso de CPU

Comparé los procesos en ejecución en cada nodo y no hay nada adicional en los nodos con mayor CPU. Comparé las configuraciones. Son idénticos. No pude encontrar ninguna diferencia.

También me di cuenta de que estos nodos son los que captan la mayor parte del tráfico. Consulte el gráfico de intervalo de 1 semana a continuación.Tanto los bytes enviados como los recibidos.

Gráfico de bytes enviados y recibidos

Investigué un poco. encontréestehilo y al final se recomienda configurar dynamic_snitch: falseen la configuración de Cassandra. Miré nuestra estrategia de soplón que esChismesPropiedadArchivoSoplón. En la práctica, esta estrategia debería funcionar correctamente, pero supongo que no es así.

El trabajo de un soplón es proporcionar información sobre la topología de su red para que Cassandra pueda enrutar las solicitudes de manera eficiente.

Mi única observación que podría ser la causa de este problema es que hay un archivo llamadocassandra-topología.propertiesque es específicamentele dijeron que lo eliminaransi usa GossipingPropertyFileSnitch

El bastidor y el centro de datos del nodo local se definen en cassandra-rackdc.properties y se propagan a otros nodos mediante gossip. Si cassandra-topology.properties existe, se utiliza como alternativa, lo que permite la migración desde PropertyFileSnitch.

No eliminé este archivo porque no pude encontrar ninguna prueba concreta de que esto estuviera causando el problema. Si tiene algún conocimiento sobre esto o ve algún otro motivo de mi problema, le agradecería su ayuda.

información relacionada