Высокая загрузка ЦП и трафика на некоторых узлах Cassandra

Высокая загрузка ЦП и трафика на некоторых узлах Cassandra

Как указано в заголовке, у нас возникла проблема с кластером Cassandra. Есть9 узловсфактор репликации 3с использованиемСетьТопологияСтратегия. Все в том же DC и стойке. Версия Cassandra - это3.11.4(планируем переехать 3.11.10). Экземпляры есть4 ЦПи32 ГБ ОЗУ. (планируем перейти на 8 ЦП)

Всякий раз, когда мы пытаемся запустить восстановление на нашем кластере (используя Cassandra Reaper на одном из наших узлов), мы теряем один узел где-то в процессе. Мы быстро останавливаем восстановление, перезапускаем службу Cassandra на узле и ждем, пока она присоединится к кольцу. Поэтому мы никогда не можем запустить восстановление в эти дни.

Я заметил проблему и понял, что она вызвана высокой загрузкой ЦП на некоторых наших узлах.(ровно 3). Ниже вы можете увидеть график с интервалом в 1 неделю.Подъемы и спады вызваны использованием приложения. По утрам он очень низкий.

График использования ЦП

Я сравнил запущенные процессы на каждом узле, и на узлах с высокой загрузкой ЦП нет ничего лишнего. Я сравнил конфигурации. Они идентичны. Не удалось найти никакой разницы.

Я также понял, что эти узлы — те, которые забирают большую часть трафика. Смотрите график интервала в 1 неделю ниже.Отправленные и полученные байты.

График отправленных и полученных байтов

Я провел небольшое исследование. Я нашелэтотпоток и в конце рекомендуется установить dynamic_snitch: falseв конфигурации Cassandra. Я посмотрел на нашу стратегию стукача, котораяСплетниСобственностьФайлСтукач. На практике эта стратегия должна работать правильно, но я полагаю, что это не так.

Задача осведомителя — предоставить информацию о топологии вашей сети, чтобы Cassandra могла эффективно маршрутизировать запросы.

Единственное, что я заметил, что может быть причиной этой проблемы, это то, что есть файл под названиемкассандра-топология.свойствачто конкретносказали, что его нужно удалитьесли используется GossipingPropertyFileSnitch

Стойка и датацентр для локального узла определяются в cassandra-rackdc.properties и распространяются на другие узлы через gossip. Если cassandra-topology.properties существует, он используется как резервный вариант, позволяющий миграцию из PropertyFileSnitch.

Я не удалял этот файл, так как не смог найти никаких весомых доказательств того, что это вызывает проблему. Если у вас есть какие-либо знания об этом или вы видите какую-либо другую причину моей проблемы, я был бы признателен за вашу помощь.

Связанный контент