Диагностика застрявшего шага ILM и повтор (_ilm/explain, _ilm/retry)
ElasticsearchЖизненный цикл индексаКоманда
# Indices waiting in an error step:
GET log-*/_ilm/explain?only_errors=true
# Phase/action/step state and failure reason for one index:
GET log-000003/_ilm/explain?filter_path=indices.*.phase,indices.*.action,indices.*.step,indices.*.failed_step,indices.*.step_info,indices.*.is_auto_retryable_error
# After fixing the cause (example: missing rollover alias setting):
PUT log-000003/_settings
{
"index.lifecycle.rollover_alias": "log"
}
POST log-000003/_ilm/retry
# Is ILM running (if STOPPED, POST _ilm/start):
GET _ilm/statusЧто делает
Показывает индексы, ожидающие на шаге ERROR, в какой фазе/действии/шаге они застряли и причину сбоя (step_info); повторно запускает неудавшийся шаг после устранения причины.
Когда использовать
Когда rollover не происходит, старые индексы не удаляются или диск заполняется индексами, которые ILM должен был удалить.
Внимание
_ilm/retry работает только для индексов на шаге ERROR; иначе возвращается 'has not encountered an error'. Частые причины: отсутствует настройка rollover_alias или у псевдонима is_write_index стоит на другом индексе, не хватает диска на одном узле для shrink, правило распределения (_tier_preference) невозможно выполнить. Удаление политики не снимает управление ILM с индексов; сначала удалите настройку политики с индексов.