[PYTHON] Perte de poids Recherche élastique avec Curator

La recherche élastique est lourde. La mémoire du PC est pauvre. Je n'ai plus vu ces données (index).

À toi.

Environnement à préparer à l'avance

Elasticsearch 5.0.1 (idem pour 5.0.0) Python 2.7.10 (idem pour 2.7.6)

Choses à faire

Tout d'abord, si vous n'avez pas de pip

$ curl -kL https://bootstrap.pypa.io/get-pip.py | sudo python

Installation du conservateur

$ sudo pip install elasticsearch-curator
$ curator --version
curator, version 4.2.4

Si Elasticsearch est 5.x, le curator doit être 4.x ou supérieur.

Fichiers requis pour le conservateur

Il y en a deux Configuration file

~/.curator/curator.yml


client:
  hosts:
    - localhost
  port: 9200
  url_prefix:
  use_ssl: False
  certificate:
  client_cert:
  client_key:
  ssl_no_validate: False
  http_auth:
# if x-pack is installed, set "http_auth: elastic:changeme"
  timeout: 30
  master_only: False

logging:
  loglevel: INFO
  logfile:
  logformat: default
  blacklist: ['elasticsearch', 'urllib3']

ACTION_FILE

actions:
  1:
    action: delete_indices
    description: >-
      (custommessage)Delete indices older than 5 days (based on index name), for .monitoring-es-
      prefixed indices. Ignore the error if the filter does not result in an
      actionable list of indices (ignore_empty_list) and exit cleanly.(custom message)
    options:
      ignore_empty_list: True
      timeout_override:
      continue_if_exception: False
      disable_action: False
    filters:
    - filtertype: pattern
      kind: prefix
      value: .monitoring-es-
      exclude:
    - filtertype: age
      source: name
      direction: older
      timestring: '%Y.%m.%d'
      unit: days
      unit_count: 5
      exclude:
  2:
    action: close
    description: >-
      (custom message)Close indices older than 4 days (based on index name), for .monitoring-es-
      prefixed indices.(custom message)
    options:
      ignore_empty_list: True
      delete_aliases: False
      timeout_override:
      continue_if_exception: False
      disable_action: False
    filters:
    - filtertype: pattern
      kind: prefix
      value: .monitoring-es-
      exclude:
    - filtertype: age
      source: name
      direction: older
      timestring: '%Y.%m.%d'
      unit: days
      unit_count: 4
      exclude:

Cela ferme l'index il y a plus de 4 jours et supprime l'index il y a plus de 5 jours. ʻIgnore_empty_list: True` Vous pouvez passer par l'erreur lorsque l'index correspondant n'est pas trouvé. (Si vous ne le joignez pas, il s'arrêtera avec une erreur lorsque vous l'exécuterez deux fois ou plus de suite.) Bien qu'il s'agisse de unit_count, s'il est égal à 4, les données d'il y a 4 jours seront également supprimées. % d d'index semble être la norme.

Courir

Lorsque le fichier de configuration est créé avec le chemin par défaut (~ / .curator / curator.yml)

$ curator ${action_file}

Si non

$ curator --config ${configuration_file} ${action_file}

Ensuite, lancez-le manuellement lorsque vous en avez envie, ou laissez Oncle Jenkins à la maison le faire quotidiennement.

Recommended Posts

Perte de poids Recherche élastique avec Curator
Tester Elasticsearch avec python-tcptest
J'ai essayé Learning-to-Rank avec Elasticsearch!
[TensorFlow 2] Apprendre RNN avec perte CTC