Diagnostiquer une étape ILM bloquée et la relancer (_ilm/explain, _ilm/retry)
ElasticsearchCycle de vie des indexCommande
# 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/statusCe que fait la commande
Affiche les index en attente à l'étape ERROR, la phase/action/étape où ils sont bloqués et la raison de l'échec (step_info) ; relance l'étape en échec une fois la cause corrigée.
Quand l'utiliser
Quand le rollover ne se produit pas, que les anciens index ne sont pas supprimés, ou que le disque se remplit d'index qu'ILM aurait dû supprimer.
Attention
_ilm/retry ne fonctionne que pour les index à l'étape ERROR ; sinon il renvoie 'has not encountered an error'. Causes fréquentes : paramètre rollover_alias manquant ou alias ayant is_write_index sur un autre index, disque insuffisant sur un seul nœud pour le shrink, règle d'allocation (_tier_preference) impossible à satisfaire. Supprimer la politique ne retire pas la gestion ILM des index ; retirez d'abord le paramètre de politique des index.