Index lifecycle management в Elasticsearch

В моем блоге уже были публикация про настройку Elasticsearch и Kibana. Со временем количество индексов будет расти, если не позоботиться о настройке жизненного цикла индексов. В наборе инструментов Elastic Stack есть index lifecycle management в Elasticsearch (ELM).

Зачем нужен index lifecycle management

ELM позволяет вам выстроить жизненный цикл ваших индексов в Elasticsearch в соответствии с вашими требованиями. Если не настроить ELM для индекса, то данные будут храниться вечно. Пример из документации. ELM позволяет настроить следующий пример жизненного цикла индекса:

1. В случае достижения размера основного шарда для индекса 50 ГБ создать новый шард.

2. Индексы старше нескольких дней перенести на узлы Elasticsearch с меткой “warm” (где используется менее дорогая дисковая подсистема), установить для них пометку “только чтение” и уменьшить количество основных шардов до одного.

3. По достижение 7-ми дней перенести индекс на узла Elasticsearch с меткой “cold” (где используются совсем медленные диски).

4. Удалить все индексы старше 30 дней.

Как осуществляется index lifecycle management в Elasticsearch

Управление жизненным циклом индексов можно осуществлять через веб интерфейс Kibana.

https://192.168.56.36:5601/app/management/data/index_lifecycle_management/policies

Сразу после настройки кластера Elsticsearch уже создан определенный набор политик. Пример политик ILM на моем тестовом стенде.

В настройках политики для каждого из этапов жизни индекса (“hot phase”, “warm phase”, “cold phase”) вы можете указать ряд дополнительных опций. Например, опция создания нового индекса по достижению индекса 50 ГБ или 30 дней уже включено уже включена.

Вы также можете указать по прошествии какого количества дней переводить индекс на менее производительные узлы кластера Elasticsearch (если таковые у вас имеются). В дополнении вы можете указать максимальный срок жизни индекса.

Например, вы можете настроить политику, в который все индексы будут перемещаться на warm-tier по достижении 7 дней, затем по достижению 30 дней индексы будут перемещаться на cold-tier. Окончательно индекс будет удален по достижению возраста в 60 дней.

Информацию о том какому узлу кластера какая назначена роль можно посмотреть, например, на странице мониторинга:

Вы можете привязывать политики ILM к шаблонам индексов. Например:

Пример настройки index lifecycle management в Elasticsearch

В одной из предыдущих публикаций я демонстрировал пример настройки Winlogbeat для сбора журналов с Windows машин. Этот стенд у меня еще живой. На нем я покажу пример настройки ILM. Поскольку у меня нет warm-tier и cold-tier, то я настрою удаление всех индексов с журналами Windows через 90 дней.

1. Перейдем на страницу управления жизненным циклом индексов:

https://192.168.56.36:5601/app/management/data/index_lifecycle_management/policies

2. В списке найдите политику для индексов Winlogbeat.

3. Откройте свойства политики.

4. Укажите соответствующие настройки для политики.

5. Сохраните внесенные изменения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *