J'ai cherché un peu de temps avant de pouvoir supprimer les anciennes données sur Elastiflow, je vais alors mettre la procédure complète simple 😀 :
apt-get install python-pip
pip install elasticsearch-curator
Pour information, nous pouvons voir la taille des indices par date :
user@elastiflow:~# curl -XGET 'localhost:9200/_cat/indices?v&pretty'
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open elastiflow-3.5.3-2020.07.24 IG8ZJYE9R72lOSxhwJLgIQ 3 1 3276618 0 1.5gb 1.5gb
green open .kibana_1 wSHNrrY0QDapiwxA6v3qYw 1 0 817 25 579.2kb 579.2kb
user@elastiflow:~#
Afin de stocker ma configuration et d'éviter de la faire dans la commande directement, j'ai crée deux fichiers dans /root/curatof/
:
curator-delete-indices.yml
actions:
1:
action: delete_indices
description: Delete ElastiFlow indices older than 3 days
options:
ignore_empty_list: True
timeout_override:
continue_if_exception: False
disable_action: False
allow_ilm_indices: true
filters:
- filtertype: pattern
kind: prefix
value: elastiflow-
- filtertype: age
source: creation_date
direction: older
unit: days
unit_count: 3
curator.yml
client:
hosts:
- 127.0.0.1
port: 9200
url_prefix:
use_ssl: False
certificate:
client_cert:
client_key:
ssl_no_validate: False
http_auth:
timeout: 30
master_only: False
logging:
loglevel: INFO
logfile:
logformat: default
blacklist: ['elasticsearch', 'urllib3']
Ensuite, voici la commande à executer pour supprimer les indices en se servant de la configuration dans les fichiers yaml :
curator /root/curatof/curator-delete-indices.yml --config /root/curatof/curator.yml
Vous pouvez ensuite par exemple faire une tâche planifiée pour supprimer vos données vielles de J+3 automatiquement tous les jours à 8h.
0 8 * * * curator /root/curatof/curator-delete-indices.yml --config /root/curatof/curator.yml
N'hésitez pas en cas de question !
