一、存在问题

用了一段时间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. 《SQL Server 2008从入门到精通》--20180628

    数据库基本概念:区.页.行 区:SQL Server中管理空间的基本单位.一个区大小为64KB,是八个物理上连续的页.SQL Server中每MB有16个区.一旦一个区被存储满,SQL Server将 ...

  2. [翻译] InstagramPhotoPicker

    InstagramPhotoPicker Present Image Picker like Instagram. 展示图片选择器,像Instagram这款应用一样. Installation - 安 ...

  3. 使用最新版SDWebImage

    使用最新版SDWebImage 1. 下载源码: 2. 测试能否编译成功: 3. 用Xcode6新建一个工程,然后将文件夹拖入到工程当中: 4. 查看其主要的源码,发现之前使用版本的方法都被弃用了: ...

  4. 屏蔽响应事件继续向父视图传递的category

    屏蔽响应事件继续向父视图传递的category 这篇教程是上一篇教程的升级版,将复杂的代码封装成了category,更便于使用:) 效果: 源码: UIGestureRecognizer+EnvetI ...

  5. Linux FFmpeg(含x264、lame插件)安装记录

    What is FFmpeg? FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.它提供了录制.转换以及流化音视频的完整解决方案. What is x264? H. ...

  6. [2018HN省队集训D1T1] Tree

    [2018HN省队集训D1T1] Tree 题意 给定一棵带点权树, 要求支持下面三种操作: 1 root 将 root 设为根. 2 u v d 将以 \(\operatorname{LCA} (u ...

  7. 【错误记录】记录蛋疼的 mysql 错误

    -- 应用信息表 DROP TABLE IF EXISTS `table_name`; CREATE TABLE `ks_apps_info` ( `id` ) NOT NULL COMMENT 'i ...

  8. 智能指针shared_ptr新特性shared_from_this及weak_ptr

    enable_shared_from_this是一个模板类,定义于头文件<memory>,其原型为: template< class T > class enable_shar ...

  9. debian 7上安装svn

    1.在终端中直接输入  sudo apt-get install subversion,选择安装即可 2.查看版本命令 svnserve --version(更多命令直接键入svnserve --he ...

  10. [USACO09OPEN]Ski Lessons

    嘟嘟嘟 先考虑这两点: 1.如果我们有结束时间相同的课程,且达到的能力相同,那么我们一定选择开始时间最晚的. 2.如果有能力值相同的滑雪坡,我们一定选择时间最短的. 因此先预处理两个数组.cla[i] ...