一、存在问题

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

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

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

[root@--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
--:--:-- --:--:-- --:--:-- 0freetrip-2019.01. r STARTED 59kb 192.168.x.x node3-192.168.x.x
freetrip-2019.01. p STARTED 59kb 192.168.x.x node1-192.168.x.x
freetrip-2019.01. p STARTED .7kb 192.168.x.x node3-192.168.x.x
freetrip-2019.01. r STARTED .7kb 192.168.x.x node1-192.168.x.x
freetrip-2019.01. p STARTED .5kb 192.168.x.x node2-192.168.x.x
freetrip-2019.01. r STARTED .5kb 192.168.x.x node1-192.168.x.x
freetrip-2019.01. r STARTED .5kb 192.168.x.x node2-192.168.x.x
freetrip-2019.01. p STARTED .5kb 192.168.x.x node3-192.168.x.x
freetrip-2019.01. p STARTED .9kb 192.168.x.x node2-192.168.x.x
freetrip-2019.01. r STARTED .9kb 192.168.x.x node3-192.168.x.x

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

[root@--x-x ~]# curl -XGET 'http://192.168.x.x:9200/_cat/shards' | grep 192.168.x.x | grep  | awk '{print $1}' |uniq > elk-index.tmp
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
142k --:--:-- --:--:-- --:--:-- 142k
[root@--- ~]# cat elk-index.tmp
otter-canal--2018.12.
logstash-nginx-chm-accesslog-2018.11.
logstash-nginx-oms-accesslog-2018.10.
laravel-chm248-online-2018.12.
otter-canal--2018.11.
logstash-nginx-oms-accesslog-2018.11.
otter-communication--2018.11.
otter-communication--2018.12.
otter-node--2018.12.
logstash-nginx-chvisa-accesslog-2018.10.
wanmei219-online-2018.10.
logstash-nginx-chm-accesslog-2018.11.
otter-canal--2018.11.
otter-canal--2018.11.
logstash-nginx-oms-accesslog-2018.11.
laravel-chm248-online-2018.11.
logstash-nginx-oms-accesslog-2018.12.
otter-manager--2018.12.
logstash-nginx-chvisa-accesslog-2018.11.
wanmei219-online-2018.12.
logstash-nginx-chvisa-accesslog-2018.11.
otter-communication--2018.11.
otter-communication--2018.11.
laravel-chm248-online-2018.11.
laravel-chm248-online-2018.10.
logstash-nginx-chm-accesslog-2018.12.
wanmei219-online-2018.11.
logstash-nginx-chvisa-accesslog-2018.12.
wanmei219-online-2018.11.
logstash-nginx-chm-accesslog-2018.10.

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

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

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

[root@--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@--x-x ~]# crontab -l
* * * bash /home/scripts/del_elasticseatch_index.sh

ELK批量删除索引的更多相关文章

  1. ELK批量删除索引 及 相关操作命令 - 运维小结

    线上部署了ELK+Redis日志分析平台环境, 随着各类日志数据源源不断的收集, 发现过了一段时间之后, ELK查看会原来越慢, 重启elasticsearch服务器节点之前同步时间也会很长,  这是 ...

  2. ElasticSearch.net NEST批量创建修改删除索引完整示例

    本示例采用Elasticsearch+Nest 网上查了很多资料,发现用C#调用Elasticsearch搜索引擎的功能代码很分散,功能不完整,多半是非常简单的操作,没有成型的应用示例.比如新增或修改 ...

  3. SQL Server 批量 删除表索引

    当旧的数据库中的数据几乎很少使用到的时候,索引又占用着较大的磁盘空间,数据又不能删除,又想节省磁盘空间. 这个时候可以将所有表的索引进行删除了(先创建索引备份脚本,以备需要还原),可以批量一起删除. ...

  4. ELK之elasticsearch删除索引

    参考文档:https://www.cnblogs.com/Dev0ps/p/9493576.html elasticsearch使用时间久了会产生大量索引占用磁盘空间,可以删除索引来释放 查看当前所有 ...

  5. ELK 脚本自动化删除索引

    kibana有自带接口,可通过自带的API接口 通过传参来达到删除索引的目的. # 删除15天前的索引 curl -XDELETE "http://10.228.81.161:9201/pa ...

  6. es故障节点恢复后加入集群导致删除索引重新出现

    es的每个shard下的文件都可以看做一个完整的lucene文件,shard数据目录下的segment文件包含了索引的分片数量,副本数量.es shard可以恢复,就是因为每个shard都包含了一份数 ...

  7. php链接数据库 批量删除 和 注册审核

    理解 :  hiden   value    session   name="a[]"         1.  form  表单上传的 value=" "值   ...

  8. StackExchange.Redis加载Lua脚本进行模糊查询的批量删除和修改

    前言 使用StackExchange.Redis没有直接相关的方法进行模糊查询的批量删除和修改操作,虽然可以通过Scan相关的方法进行模糊查询,例如:HashScan("hashkey&qu ...

  9. php数据访问(批量删除)

    批量删除: 首先给每一行加上复选框,也就是在自增长列内加入checkbox.因为这里可以多选,也可以单选,所以在传值的时候需要传一个数组来进行处理,所以复选框name的值设定一个数组.传值都是传的va ...

随机推荐

  1. [控件] GlowView

    GlowView 效果 说明 这是本人第二次写辉光view了,这是改进版本 源码 https://github.com/YouXianMing/UI-Component-Collection // / ...

  2. django的admin后台注册model并显示

    在admin后台注册model并显示其他字段: 修改app下的admin.py,注册model: from .models import vmadmin.site.register(vm) #注册名为 ...

  3. php安装--php-5.3.28

    PHP的整合使用: 一.下载php源码包:https://pan.baidu.com/s/1Cied8ozHez4xJ9l1HQ7pKQ 二.把源码包放到/usr/src目录 三.解压源码包并进入目录 ...

  4. Linux history命令详解

      history命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件. 该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!执行指定 ...

  5. (matlab)plot画图的颜色线型(转)

    http://wenku.baidu.com/link?url=SVVMVH8QlDIu2hVKDtoBYs6l0CnQvFnFHJJ9yexmYVKQqhz47qIr7aK7LOf8nN0qNdy8 ...

  6. SQLServer------查询结果为空的列赋默认值

    ISNULL(字段,默认值) 如:SELECT ISNULL(name,'无名') FROM [User]

  7. SOJ 4580 动态规划之01背包 (01背包)

    Description Sidney想去Gandtom家玩.但Sidney家和Gandtom家之间是高低不平.坑坑洼洼的土路.所以他需要用他的背包装几袋稀的泥,在路上铺平一些干的土,使路变成平整的泥土 ...

  8. 【洛谷】【动态规划(多维)】P1006 传纸条

    [题目描述:] 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了.幸 ...

  9. nodejs的expresss中post的req.body总是undefined的原因

    1)因为express将body-parser分离了出来,所以你需要手动添加进下面的内容即可 var path = require('path'); var bodyParser = require( ...

  10. python基础整理1

    基础知识 名字与对象,类与类型 变量:在Python中,存储一个数据,需要一个叫做变量的东西   num2 = 87 #num2是一个变量 变量的类型: 程序中为了更充分的利用内存空间以及更有效率的管 ...