Задачи обслуживания Apache Cassandra

В этом разделе описаны задачи периодического обслуживания Cassandra.

Антиэнтропийное обслуживание

Кольцевые узлы Apache Cassandra требуют периодического обслуживания для обеспечения согласованности на всех узлах. Чтобы выполнить это обслуживание, используйте следующую команду:

nodetool -h localhost repair -pr

Apigee рекомендует следующее при запуске этой команды:

  • Запускайте на каждом узле Cassandra (во всех регионах или центрах обработки данных).
  • Запускайте по одному узлу за раз, чтобы обеспечить согласованность между всеми узлами в кольце.
  • Запускать в периоды относительно низкой рабочей нагрузки (инструмент оказывает значительную нагрузку на систему).
  • Запускайте не реже одного раза в семь дней, чтобы устранить проблемы, связанные с «забытыми удалениями» Cassandra.
  • Вы можете запускать его на разных узлах в разные дни или запланировать его так, чтобы между запуском на каждом узле было несколько часов.
  • Используйте опцию -pr (диапазон разделителей), чтобы указать только основной диапазон разделителей узла.

Если вы включили аутентификацию JMX для Cassandra , вы должны указать имя пользователя и пароль при вызове nodetool . Например:

nodetool -u username -pw password -h localhost repair -pr

Для получения дополнительной информации см. следующие ресурсы:

Ведение файла журнала

Журналы Cassandra хранятся в каталоге /opt/apigee/var/log/cassandra на каждом узле. По умолчанию можно создать максимум 50 файлов журналов, каждый размером не более 20 МБ; по достижении этого предела старые журналы удаляются при создании новых журналов.

Если вы обнаружите, что файлы журналов Cassandra занимают слишком много места, вы можете изменить объем места, выделенного для файлов журналов, отредактировав настройки log4j.

  1. Отредактируйте /opt/apigee/customer/application/cassandra.properties , чтобы установить следующие свойства. Если этот файл не существует, создайте его:
    conf_logback_maxfilesize=20MB
    # max file size
    conf_logback_maxbackupindex=50 # max open files
  2. Перезапустите Cassandra, используя следующую команду:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart