Tareas de mantenimiento de Apache Cassandra

En esta sección, se describen las tareas de mantenimiento periódico para Cassandra.

Mantenimiento antientropía

Los nodos de anillo de Apache Cassandra requieren mantenimiento periódico para garantizar nodos. Para realizar este mantenimiento, usa el siguiente comando:

apigee-service apigee-cassandra apigee_repair -pr

Apigee recomienda lo siguiente cuando ejecutes este comando:

  • Se ejecuta en cada nodo de Cassandra (en todas las regiones o centros de datos).
  • Ejecuta en un nodo a la vez para garantizar la coherencia en todos los nodos del anillo. Ejecutar trabajos de reparación en varios nodos al mismo tiempo puede afectar la salud de Cassandra.

    Para verificar si se completó correctamente un trabajo de reparación en un nodo, consulta la documentación system.log para una entrada con el UUID de la sesión de reparación más reciente y la frase “se completó correctamente la sesión” Este es un ejemplo de una entrada de registro:

    INFO [AntiEntropySessions:1] 2015-03-01 10:02:56,245 RepairSession.java (line 282) [repair #2e7009b0-c03d-11e4-9012-99a64119c9d8] session completed successfully"
    Ref: https://support.datastax.com/hc/en-us/articles/204226329-How-to-check-if-a-scheduled-nodetool-repair-ran-successfully
  • Ejecutar durante períodos de carga de trabajo relativamente baja (la herramienta impone una carga significativa en el de configuración del sistema).
  • Ejecutarlo al menos cada siete días para eliminar los problemas relacionados con las fallas de “eliminaciones olvidadas”.
  • Ejecutar en distintos nodos y en días distintos, o programarlo para que haya varias horas entre la ejecución en cada nodo.
  • Usa la opción -pr (rango de particionador) para especificar el rango del particionador principal del nodo solamente.

Si habilitaste la autenticación JMX para Cassandra, debes incluir el nombre de usuario y la contraseña cuando invoques nodetool. Por ejemplo:

apigee-service apigee-cassandra apigee_repair -u username -pw password -pr

También puedes ejecutar el siguiente comando para verificar las opciones compatibles de apigee_repair:.

apigee-service apigee-cassandra apigee_repair -h

Nota: apigee_repair es un wrapper de la reparación de nodetool de Cassandra. que realiza verificaciones adicionales antes de realizar la reparación de Cassandra.

Para obtener más información, consulta los siguientes recursos:

Mantenimiento de archivos de registro

Los registros de Cassandra se almacenan en el directorio /opt/apigee/var/log/cassandra en cada nodo. De forma predeterminada, se pueden almacenar hasta 50 archivos de registro, cada uno con un tamaño máximo de 20 MB. creado; Una vez que se alcanza este límite, los registros más antiguos se borran cuando se crean registros más nuevos.

Si notas que los archivos de registro de Cassandra ocupan demasiado espacio, puedes modificar el la cantidad de espacio asignada a los archivos de registro editando la configuración de log4j.

  1. Editar /opt/apigee/customer/application/cassandra.properties para establecer las siguientes propiedades. Si ese archivo no existe, créalo:
    conf_logback_maxfilesize=20MB
    # max file size
    conf_logback_maxbackupindex=50 # max open files
  2. Reinicia Cassandra con el siguiente comando:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart

Mantenimiento del espacio en el disco

Deberías supervisar el uso del disco Cassandra regularmente para garantizar que al menos el 50% cada disco es gratuito. Si el uso del disco aumenta por encima del 50%, te recomendamos agregar más espacio en el disco para reducir el porcentaje en uso.

Cassandra realiza automáticamente las siguientes operaciones para reducir su propio uso del disco:

  • Eliminación del token de autenticación cuando estos vencen. Sin embargo, es posible que tardar un par de semanas en liberar el espacio en disco que usaban los tokens, dependiendo de tu configuración. Si la eliminación automática no es adecuada para mantener espacio en el disco suficiente; comunícate con el equipo de asistencia para obtener información sobre cómo borrar tokens de forma manual para recuperarlo espacio.
  • Compactación de datos. Recomendamos cambiar la estrategia de compactación en espacios de claves a LeveledCompactionStrategy, que ofrece mejores estrategias de uso del disco que la predeterminada SizeTieredCompactionStrategy Consulta Estrategia de compactación por niveles

Nota: Cuando Cassandra realiza compactaciones de datos, puede tardar una cantidad considerable de ciclos de CPU. y la memoria. Sin embargo, el uso de recursos debería volver a la normalidad una vez que se completen las compactaciones. Puedes ejecutar el comando 'Nodetool compactionstats' en cada nodo para comprobar si se está ejecutando la compactación. El resultado de compactionstats te informa si hay hay compactaciones pendientes para ejecutar y el tiempo estimado de finalización.