elasticsearch历史数据清理
elasticsearch历史数据清理-手动方式清理
环境
es为docker单机启动,版本7.1.1
实施
1.查看是否支持通配符批量删除索引(false=支持,true=不支持)
curl -X GET "172.168.1.116:9200/_cluster/settings?pretty" { "persistent" : { "action" : { "destructive_requires_name" : "false" } }, "transient" : { } }
2.如果为true执行
curl -H "Content-Type: application/json" -XPUT '172.168.1.116:9200/_cluster/settings' -d '{"persistent": {"action.destructive_requires_name": "false"}}'
3.查看所有索引
curl -X GET "172.168.1.116:9200/_cat/indices?v"
4.修改destructive_requires_name=false后执行如下命令
curl -X DELETE "172.168.1.116:9200/filebeat-7.1.1-2021.02*?pretty"
说明: 172.168.1.116:9200 改为实际的es地址和端口,filebeat-7.1.1-2021.02 改为实际的索引名,是通配符
检查
- 清理前es目录大小 du -sh elasticsearch/data/ 50G elasticsearch/data/ - 清理后es目录大小 du -sh elasticsearch/data/ 4.9G elasticsearch/data/
定时处理
参考
https://www.elastic.co/guide/cn/elasticsearch/guide/current/retiring-data.html
https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-update-settings.html
©著作权归作者所有:来自51CTO博客作者Fitme96的原创作品,如需转载,请注明出处,否则将追究法律责任