ELK批量删除索引

摘要:
1、 麋鹿花了一段时间才发现,如果长时间不删除索引,麋鹿会变得越来越慢。在重新启动弹性搜索服务器节点之前,同步时间也很长。2.解决方案(定期删除索引)1.在弹性搜索节点上使用curl XGEThttp://192.168.X.XX:9200/_cat/shards'视图索引[root@192-168-x-xscripts]#卷曲XGET'http://192.

一、存在问题

用了一段时间elk发现如果索引长时间不删除,elk会越来越慢,重启elasticsearch服务器节点之前同步时间也会很长

二、解决方法(定期删除索引)

1.在elasticsearch节点上使用curl -XGET 'http://192.168.X.XX:9200/_cat/shards'查看索引

[root@192-168-x-x scripts]# curl -XGET 'http://192.168.x.x:9200/_cat/shards' | more
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0  0   0   0  0   0   0   0 --:--:-- --:--:-- --:--:--     0freetrip-2019.01.29   2 r STARTED   34  59kb 192.168.x.x node3-192.168.x.x
freetrip-2019.01.29                2 p STARTED     34    59kb 192.168.x.x node1-192.168.x.x
freetrip-2019.01.29                1 p STARTED     47 122.7kb 192.168.x.x node3-192.168.x.x
freetrip-2019.01.29                1 r STARTED     47 122.7kb 192.168.x.x node1-192.168.x.x
freetrip-2019.01.29                3 p STARTED     58  90.5kb 192.168.x.x node2-192.168.x.x
freetrip-2019.01.29                3 r STARTED     58  90.5kb 192.168.x.x node1-192.168.x.x
freetrip-2019.01.29                4 r STARTED     41  45.5kb 192.168.x.x node2-192.168.x.x
freetrip-2019.01.29                4 p STARTED     41  45.5kb 192.168.x.x node3-192.168.x.x
freetrip-2019.01.29                0 p STARTED     36  97.9kb 192.168.x.x node2-192.168.x.x
freetrip-2019.01.29                0 r STARTED     36  97.9kb 192.168.x.x node3-192.168.x.x

2.将过滤出来要删除的索引存到临时文件夹里面

[root@192-168-x-x ~]# curl -XGET 'http://192.168.x.x:9200/_cat/shards' | grep 192.168.x.x | grep 2018 | awk '{print $1}' |uniq > elk-index.tmp
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 81832  100 81832    0     0   142k      0 --:--:-- --:--:-- --:--:--  142k
[root@192-168-3-163 ~]# cat elk-index.tmp 
otter-canal-195-2018.12.10
logstash-nginx-chm-accesslog-2018.11.20
logstash-nginx-oms-accesslog-2018.10.14
laravel-chm248-online-2018.12.10
otter-canal-195-2018.11.20
logstash-nginx-oms-accesslog-2018.11.20
otter-communication-195-2018.11.23
otter-communication-195-2018.12.10
otter-node-195-2018.12.10
logstash-nginx-chvisa-accesslog-2018.10.14
wanmei219-online-2018.10.14
logstash-nginx-chm-accesslog-2018.11.19
otter-canal-195-2018.11.23
otter-canal-195-2018.11.19
logstash-nginx-oms-accesslog-2018.11.19
laravel-chm248-online-2018.11.19
logstash-nginx-oms-accesslog-2018.12.10
otter-manager-195-2018.12.10
logstash-nginx-chvisa-accesslog-2018.11.20
wanmei219-online-2018.12.10
logstash-nginx-chvisa-accesslog-2018.11.19
otter-communication-195-2018.11.19
otter-communication-195-2018.11.20
laravel-chm248-online-2018.11.20
laravel-chm248-online-2018.10.14
logstash-nginx-chm-accesslog-2018.12.10
wanmei219-online-2018.11.19
logstash-nginx-chvisa-accesslog-2018.12.10
wanmei219-online-2018.11.20
logstash-nginx-chm-accesslog-2018.10.14

3. 删除过滤出来的索引文件

for i in `cat elk-index.tmp`
do 
      curl -XDELETE  http://192.168.3.163:9200/$i 
done

4. 使用脚本加定时任务,每一天删除前三天的索引

[root@192-168-x-x ~]# cat /home/scripts/del_elasticseatch_index.sh 
#!/bin/bash
curl -XGET 'http://192.168.x.x:9200/_cat/shards' |grep 192.168.x.x | awk '{print $1}' |grep `date -d "5 days ago" +%Y.%m.%d` | uniq > /tmp/index_name.tmp

for index_name in `cat /tmp/index_name.tmp`
do
   echo $index_name
    curl -XDELETE  http://192.168.x.x:9200/$index_name
    echo "${index_name} delete success" >> /home/scripts/del_elasticseatch_index.log
done

5. 定时任务

[root@192-168-x-x ~]# crontab -l
0 3 * * * bash /home/scripts/del_elasticseatch_index.sh

免责声明:文章转载自《ELK批量删除索引》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇第六章 前端开发——Vue框架解决关于win10下eclipse代码格式化不生效问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

初探jquery之强大丰富的选择器

---恢复内容开始--- 1.基本选择器  常用的有id选择器:#id,   类选择器:.class , 元素选择器。 2.层次选择器 $(ancestor descendant):选取ancestor元素里的所有descendant后代元素。         示例:$("body div"): 改变<body>内所有div元素的背景色 <...

curl 交叉编译 支持http2和openssl

touch run.sh chmod 755 run.sh mkdir build cd build ../run.sh run.sh #!/bin/bash #cd /build ../configure --host=aarch64-linux-android --with-ssl="/home/soft/openssl-1.1.1b/buil...

10分钟搭建服务器集群——Windows7系统中nginx与IIS服务器搭建集群实现负载均衡

分布式,集群,云计算机、大数据、负载均衡、高并发······当耳边响起这些词时,做为一个菜鸟程序猿无疑心中会激动一番(或许这是判断是否是一个标准阿猿的标准吧)! 首先自己从宏观把控一下,通过上网科普自己遇到问题,然后再站在这些巨人的肩膀上解决问题。 问题:在大型WEB应用程系统中,由于请求的数量过大及并发的因素,导致Web系统会出现宕机的现象! 解决方案主...

第11章 索引的管理与维护

1. Oracle索引是一个独立于表的对象,它可以存放在与表不同的表空间中。即使索引崩溃,甚至索引删除都不会印象真正存有数据的表。 2. 为什么要引入索引:为了加快查询的速度。 3. 索引对查询语句的影响:能够加快查询速度。 4. 索引对DML语句的影响。当对表进行DML操作时,oracle服务器将自动维护基于该表的全部索引,维护方法如下:  1)当对表进...

nginx 4层tcp代理获取真实ip

举个例子,Nginx 中的代理配置假如是这样配置的: location / { proxy_http_version 1.1; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add...

sphinx使用小记之使用小结

sphinx使用小记之使用小结 摘自:http://www.68idc.cn/help/jiabenmake/qita/20150124187789.html 在使用sphinx的过程中有出现一些问题,也有注意事项,做一个备忘。一.问题及解决方案Q1:采用setFilter过滤的时候出现queryisnon-computable(sing&....