Это продолжение серии постов про кейсы использования Python в инфраструктуре. Читайте начало по ссылкам: Анализ затрат на инфраструктуру и Разработка планировщика. ___
Эта история из другой компании, которая занимается стримингом больших данных (около полумиллиона вставок в секунду в Elasticsearch).
Проблема. Для мониторинга Elasticsearch-серверов использовали сервис Telegraf от influxData, но он выводил далеко не всю информацию, которая нас интересовала. Можно было узнать, зелёный инстанс, жёлтый или красный. А вот что происходит на уровне шардов (наименьший блок данных в Elasticsearch), понять было невозможно. Telegraf такой информации не давал.
Зачем опускаться на уровень шардов? Чтобы выяснить, что не так с индексом. Индекс — это сущность, которая не привязана к серверу. К серверу привязываются шарды. Предположим, кто-то начал интенсивно писать на диск, чтение или запись индекса на этом диске замедлилась. Что делать? Мигрировать. Но кого и куда? Из мониторинга этого не понять, н