Кассандра снимок и перезагрузка - PullRequest
1 голос
/ 14 декабря 2010

Будучи новичком 1-го уровня в Linux (Ubuntu 9), shell и cron, мне было трудно понять это.Каждую ночь я хотел бы сделать снимок наших узлов Cassandra и перезапустить процесс.

Почему?Потому что наша команда ищет утечку памяти, которая требует перезапуска процесса каждые 3 недели или около того.Первопричину было трудно отследить.В то же время я хотел бы использовать эти задания cron, чтобы уменьшить прерывание обслуживания.

Заранее благодарен всем, кто кое-что из них уже понял!

1 Ответ

2 голосов
/ 15 декабря 2010

Общая процедура:

  1. Запустить утилиту nodetool (http://www.riptano.com/docs/0.6/utilities/nodetool#nodetool-drain) на узле
  2. Запустить снимок узла nodetool
  3. Убей процесс Кассандры
  4. Запустить процесс кассандры

При запуске моментального снимка nodetool очень важно, чтобы у вас была настроена и работала JNA. Это включает в себя:

  1. Наличие jna.jar в каталоге lib Кассандры и либо:
  2. Запуск Cassandra от имени root или
  3. Увеличение лимита блокировки памяти с помощью 'ulimit -l' или что-то вроде /etc/security/limits.conf

Если это все правильно, вы должны увидеть сообщение об успешном завершении mlockall в журналах при запуске.

Еще одна вещь, за которой нужно следить, это использование дискового пространства; оно будет расти по мере уплотнения и замены старых таблиц SSTable (но их снимки сохраняются).

...