ILM политики

Тема дорожной карты · Elasticsearch

Index Lifecycle Management (ILM) — это функция Elasticsearch, автоматизирующая управление индексами на протяжении определённых фаз — горячей, тёплой, холодной и удаления, — каждая из которых содержит набор действий, применяемых Elasticsearch при выполнении настроенного условия. Политика ILM создаётся или обновляется через PUT /_ilm/policy/<policy_name> и определяет переходы на основе времени, прошедшего с момента создания индекса (через min_age), или порогов по размеру и количеству документов в горячей фазе (через условия ролловера). Типичные действия ILM: rollover (создание нового индекса для записи при достижении текущим порога по размеру или возрасту), shrink (уменьшение числа шардов), force_merge (объединение сегментов для снижения накладных расходов) и delete (удаление индекса по истечении срока хранения). Политики ILM привязываются к шаблонам индексов, чтобы каждый новый индекс, соответствующий шаблону, автоматически наследовал правильную конфигурацию жизненного цикла без ручного вмешательства. ILM — краеугольный камень стратегии хранения логов в Elastic Stack: большинство производственных инсталляций Elasticsearch для наблюдаемости используют политики ILM для автоматического ролловера, распределения по уровням и удаления индексов логов.

Как это работает

ILM политики: Index templates применяют settings + mappings к индексам, matching pattern (e.g., logs-*). ILM (Index Lifecycle Management) автоматизирует rollover, shrink, freeze, delete по age/size/doc count. Rollover API создаёт новый индекс при условиях (5 дней, 50GB, 100M docs). Aliases дают stable name, указывающий на один или много индексов — приложения query alias, ILM manage-ит backing-индексы. Reindex API копирует docs между индексами (для mapping changes + version migrations).

Когда применять

Для time-series (logs, metrics, events) ВСЕГДА используйте index templates + ILM + rollover — fixed-name индексы растут без границ. Write alias + read alias раздельно для безопасного rollover. Для mapping changes — reindex API; existing field mappings не меняются in place.

Типичные ошибки

Ловушки ILM политики: fixed-name daily index без rollover (упираетесь в shard limits); нет ILM (старые индексы аккумулируются вечно); reindex без aliases (downtime при cutover); меняют mappings + ожидают "just works" (большинство type changes тихо игнорируются).

Связанные понятия

Полезные ресурсы

Проверить знания (1)

Загрузка вопросов…