Как определить, был ли осушен узел Кассандры? - PullRequest
0 голосов
/ 23 февраля 2019

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

Итак, вопрос: как определить, был ли nodetool drain запущен для узла, который в данный момент остановлен?

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


Обновление:

В соответствии с ответом Пандея, вот как выглядят мои файлы коммит-журнала:

Сначала местоположение коммитов в файле /etc/cassandra/cassandra.yaml:

commitlog_directory: /var/lib/cassandra/commitlog

И содержимое этой папки:

alexis@cass1:~$ ls -l /var/lib/cassandra/commitlog
total 65536
-rw-r--r-- 1 cassandra cassandra 33554432 Feb 22 17:15 CommitLog-6-1550882527529.log
-rw-r--r-- 1 cassandra cassandra 33554432 Feb 22 17:15 CommitLog-6-1550882527530.log

(1024 × 1024 × 32 = 33554432 - так точно, 32 МБ)

1 Ответ

0 голосов
/ 23 февраля 2019

"nodetool сток" просто сбрасывает все memtables из узла в SSTables на диске.Кассандра перестает прослушивать соединения от клиента и других узлов.После того, как вы запустили команду узла слива, будет показано состояние DN от других узлов, если вы проверите из «состояния nodetool», сплетни не произойдет.Вам нужно перезапустить Cassandra после запуска утилиты nodetool.

Для Commitlog необходимо сначала проверить путь к журналу коммитов в cassandra.yaml, а затем проверить.

...