Назад | Перейти на главную страницу

Проблема с запуском Cassandra

У меня возникла проблема с кластером кассандры. Он содержит 15 узлов 32cpu / 120 ГБ ~ 1 ТБ данных на узел. Сегодня один из моих узлов начал отключать запросы клиентов. Любые проверки производительности ОС показывают низкое использование, за исключением дискового ввода-вывода. Когда я проверил, что этот узел имеет статус DN, но system.log писал без каких-либо подозрительных строк. Также через минуту узел стал UN, но таймауты продолжались. Я решил перезапустить этот узел, и он зависает при запуске, говоря

INFO  [main] 2020-06-23 11:32:02,439 ColumnFamilyStore.java:430 - Initializing system_schema.aggregates
INFO  [main] 2020-06-23 11:32:02,450 ColumnFamilyStore.java:430 - Initializing system_schema.indexes
INFO  [main] 2020-06-23 11:32:02,457 ViewManager.java:137 - Not submitting build tasks for views in keyspace system_schema as storage service is not initialized
INFO  [main] 2020-06-23 11:32:03,266 StorageService.java:619 - Populating token metadata from system tables
INFO  [main] 2020-06-23 11:32:03,334 StorageService.java:626 - Token metadata: Normal Tokens:
/10.20.30.195:[-9154013441148154895, ... (a lot of tokens)

Я проверил процесс с помощью strace и обнаружил, что cassandra делает много чтений таких sstables:

lstat("/srv", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/srv/cassandra", {st_mode=S_IFDIR|0755, st_size=71, ...}) = 0
lstat("/srv/cassandra/data", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/srv/cassandra/data/ks", {st_mode=S_IFDIR|0755, st_size=173, ...}) = 0
lstat("/srv/cassandra/data/ks/postclick-100662405eca11ea9ae3f9ab9efce262", {st_mode=S_IFDIR|0755, st_size=8699904, ...}) = 0
lstat("/srv/cassandra/data/ks/postclick-100662405eca11ea9ae3f9ab9efce262/md-6849-big-Index.db", {st_mode=S_IFREG|0644, st_size=641, ...}) = 0
stat("/srv/cassandra/data/ks/postclick-100662405eca11ea9ae3f9ab9efce262/md-6849-big-Index.db", {st_mode=S_IFREG|0644, st_size=641, ...}) = 0

Тогда я проверил find /srv/cassandra/data | wc -l на всех узлах и заметил, что на моем проблемном узле гораздо больше файлов, чем на других узлах. На других узлах ~ 100k файлов, но проблемный узел имеет ~ 2kk файлов в каталоге данных.

В чем проблема и что я должен проверить или настроить? Почему этот узел хранит столько файлов?

РЕДАКТИРОВАТЬ Позже я обнаружил, что этот проблемный узел резко увеличил количество ожидающих уплотнений. Когда я перезапустил этот узел, он начал что-то делать со всеми этими sstables и закончил запуск через 2,5 часа.