shell脚本内容如下:
#!/bin/bash # # 脚本名:clean.sh # 功能:用于清理日志数据 # 作者:Varden CONFIG_FILE=/home/scripts/config.yml ACTION_FILE=/home/scripts/action_file.yml /usr/bin/curator --config $CONFIG_FILE $ACTION_FILE echo "---" echo "删除2个月之前的日志数据:" _last_data=`date -d '-2 months' +%Y.%m` curl -XDELETE "http://127.0.0.1:9200/filebeat-7.4.0-${_last_data}.*" echo curl -XDELETE "http://127.0.0.1:9200/k8s-${_last_data}.*" echo # 脚本结束
/home/scripts/config.yml文件内容如下:
--- # Remember, leave a key empty if there is no value. None will be a string, # not a Python "NoneType" client: hosts: - es-server-data1 - es-server-data2 - es-server-data3 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']
/home/scripts/action_file.yml文件内容如下:
--- # Remember, leave a key empty if there is no value. None will be a string, # not a Python "NoneType" # # Also remember that all examples have 'disable_action' set to True. If you # want to use this action as a template, be sure to set this to False after # copying it. actions: 1: action: delete_indices description: "Clean up ES by deleting old indices" options: timeout_override: continue_if_exception: False disable_action: False ignore_empty_list: True filters: - filtertype: age source: name direction: older timestring: '%Y.%m.%d' unit: days unit_count: 15 field: stats_result: epoch: exclude: False