Suppression indexe ElasticSearch

De EjnTricks

Cet article présente la suppression d'un indexe dans ElasticSearch, par exemple pour supprimer des données de tests ou obsolètes.


Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Start-icon.png Commande

L'API indexe est utilisée pour effectuer les suppressions. Toutes les commandes sont des appels REST avec le protocole DELETE.

Il est possible de supprimer un indexe spécifiquement, en indiquant le nom exact. Dans l'exemple suivant, l'indexe fail2ban-2018.04 est supprimé.

#curl -X DELETE "localhost:9200/fail2ban-2018.04"
{"acknowledged":true}

Si de multiples indexes doivent être supprimés, il est possible d'utiliser des métacaractères comme *.

#curl -X DELETE "localhost:9200/fail2ban-2018.*"
{"acknowledged":true}

Warning-icon.png Attention, l'utilisation de métacaractères peut être dangeureuse et entraîner la suppression non souhaitée d'indexes. l'élément de configuration action.destructive_requires_name de ElasticSearch permet de forcer à fournir des noms complets. Il faut ouvrir le fichier elasticsearch.yml et activer l'option avec la valeur true.

# ---------------------------------- Various -----------------------------------
#
# Require explicit names when deleting indices:
#
#action.destructive_requires_name: true
action.destructive_requires_name: true

Ainsi lorsqu'une tenataive sera effectuée, l'API retournera un message d'erreur.

#curl -X DELETE "localhost:9200/fail2ban-2018.*"
{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"Wildcard expressions or all indices are not allowed"}],"type":"illegal_argument_exception","reason":"Wildcard expressions or all indices are not allowed"},"status":400}


Viewer icon.png Voir aussi

Documentation officielle: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-delete-index.html