Pour permettre de gérer les index de la base de données, deux solutions s’offrent à nous. L’utilisation de Curator, et l’utilisation d’ILM (Index Lifecycle Managent).
Curator est un script python lancé à intervalle régulier grâce à un crontab. Il permet notamment de faire des opérations sur les index via des requêtes à ES. Nous l’utilisons notamment pour supprimer les logs au bout de deux jours (pour le moment, valeur modifiable).
Elasticsearch propose une API par requête qui permet de supprimer un index spécifique. Il suffit d’envoyer une requete http DELETE à l’addresse http://ip:port/your_index.
Curator permet d’automatiser cela.
Doc officielle curator
ILM quand à lui permet les mêmes choses directement via Kibana, avec plus de précision (modification des index et de la place utilisée en fonction de la vieillesse de l’index, etc …). Il parait bien plus intéressant, et devrait être mis en place à terme. Nous n’avons pas eu le temps d’approfondir la chose durant la TX.
La documentation est disponible ici: https://www.elastic.co/guide/en/elasticsearch/reference/7.3/index-lifecycle-management.html
L’utilisation d’ilM se fait via un menu dans les paramètres de Kibana