es机器监控x-pack导致的监控存储过大的问题

摘要:
在v'12345ES服务中安装x-pack后,默认情况下将保留最近7天的监视索引。这样的监视es-6-*索引将占用es实例的存储空间。Xpack.monitoring.collection。索引:界面,学校123。下面列出了一些可配置的参数。常规监视设置xpack.monitoring。enabled设置为false。禁用节点上的Elasticsearch X-Pack监视。Xpack.monitoring.collection。间隔控制数据采样的频率。展开“监视历史记录”。持续时间设置自动删除监视导出器创建的索引的保留持续时间。在指标选项卡上,打开系统指标以查看监控索引占用的空间。PUT_Cluster/settings{“persistent”:{“xpack.monitory.history.duration”:“1d”}}您可以根据需要自定义监视索引的保留天数,至少一天。PUT_Cluster/settings{“persistent”:{“xpack.monitor.collection.indicators”:“*,-.*”}}表示禁用的索引监视信息不会显示在Kibana控制台的监视页面上。

https://blog.csdn.net/qq_36317804/article/details/103288642

最近发现磁盘的占用率趋高,打开可视化工具head查看了之后发现,es实例中生成了好多类似monitoring-es-6-2019.11.27这个的节点。

##查询集群总的磁盘使用情况
curl -u elastic -XGET 'localhost:9200/_cat/allocation?v'

##查询集群中各索引的磁盘占用情况
curl -u elastic -XGET 'localhost:9200/_cat/indices?v'
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述
ES服务安装了x-pack之后,会默认保留最近7天的监控索引,此类.monitoring-es-6-*的索引会占用ES实例存储空间。索引的大小跟集群中索引个数(包含系统索引)节点个数有关系,为了避免ES实例大部分空间被监控索引所占用,可通过一下两种方式优化:

  • 一、通过修改elasticsearch.yml的配置设置监控索引保留天数
xpack.monitoring.history.duration: 1d
  • 1

在这里插入图片描述

  • 二、设置需要采集监控的索引
    可以通过配置文件的设置,选择哪些索引需要监控,哪些索引不需要监控,以减少.monitoring-es-6-* 索引所占用磁盘空间。
 只监控einterface,和school索引。
 xpack.monitoring.collection.indices: einterface,school
  • 1
  • 2

在这里插入图片描述

    • 三、下面整理了一些可配置的参数
      一般监控设置
      xpack.monitoring.enabled
      设置为false在节点上禁用Elasticsearch的Elasticsearch X-Pack监视。

      监控收集设置
      这些xpack.monitoring.collection设置控制如何从Elasticsearch节点收集数据。

      xpack.monitoring.collection.cluster.stats.timeout
      设置收集群集统计信息的超时时间。默认为10s。

      xpack.monitoring.collection.indices
      控制Monitoring从哪个指标收集数据。默认为所有的索引。例如,将索引名称指定为以逗号分隔的列表moma,momb,momc。名称支持通配符的设置如包含通配符mom*,还可以通过+包含索引,-排除索引。

      xpack.monitoring.collection.index.stats.timeout
      设置收集索引统计信息的超时时间。默认为10s。

      xpack.monitoring.collection.indices.stats.timeout
      设置收集总索引统计信息的超时时间。默认为10s。

      xpack.monitoring.collection.index.recovery.active_only
      控制是否收集所有的回收率。设置为true仅收集主动恢复。默认为false。

      xpack.monitoring.collection.index.recovery.timeout
      设置收集恢复信息的超时时间。默认为10s。

      xpack.monitoring.collection.interval
      控制收集数据样本的频率。默认为10s。如果修改收集时间间隔,请将该xpack.monitoring.min_interval_seconds 选项设置kibana.yml为相同的值。设置为-1暂时禁用数据收集。您可以通过群集更新设置API更新此设置。

      xpack.monitoring.history.duration
      设置保留持续时间,自动删除由监控导出器创建的索引。默认为7d(7天),做少设置成1d(1天)

  • 在阿里云上面也对文件进行了详细的设计
  • https://blog.csdn.net/qq_36317804/article/details/103288642

背景信息

默认情况下,X-Pack监控客户端会每隔10s采集一次集群的监控信息,并保存到对应阿里云ES实例的以.monitoring-*为前缀的索引中。

目前主要有.monitoring-es-6-*.monitoring-kibana-6-*这两种索引,以天为单位滚动创建。采集完的信息会保存在以.monitoring-es-6-为前缀,以当前日期为后缀的索引中。

其中.monitoring-es-6-*索引占用磁盘空间较大,主要存放了集群状态、集群统计、节点统计、索引统计等信息。

操作步骤

  1. 登录对应阿里云ES实例的Kibana控制台。
    登录控制台的具体步骤请参见登录Kibana控制台
  2. 在左侧导航栏,单击Monitoring。
  3. Elasticsearch区域,单击Indices。
    indices入口
  4. Indices页签,开启System indices,查看监控索引所占的空间大小。
    查看监控索引信息
  5. 在左侧导航栏,单击Dev Tools(开发工具)。
  6. Console中,执行以下命令配置监控索引。
    系统默认保留最近7天的监控索引,此类监控索引(.monitoring-es-6-*)会占用阿里云ES实例的存储空间。索引的大小与实例中的索引个数(包含系统索引)和节点个数有关系。为了避免实例的大部分空间被监控索引占用,可通过以下两种方式进行优化(实际使用中,可以将以上两种方案结合使用):
    • 设置监控索引的保留天数。
       
      PUT _cluster/settings
      {"persistent": {"xpack.monitoring.history.duration":"1d"}}

      您可以按照需求自定义监控索引的保留天数,最少保留一天。

    • 设置需要采集的监控索引。
      通过调用API设置哪些索引需要监控以及哪些索引不需要监控,以减少.monitoring-es-6-*索引所占用的磁盘空间。以下命令以禁掉采集系统索引为例。
       
      PUT _cluster/settings
      {"persistent": {"xpack.monitoring.collection.indices": "*,-.*"}}
       
      说明 禁掉的索引监控信息将不会在Kibana控制台的Montioring页面(索引列表及索引监控信息页面)中显示。但是会在GET _cat/indices获取的索引列表中显示,并且可查看索引的状态是open还是close。
       
       

      1.在head中执行

      1.  
        {
      2.  
        "transient": {
      3.  
        "xpack.monitoring.collection.enabled": false
      4.  
        }
      5.  
        }

      es机器监控x-pack导致的监控存储过大的问题第6张

      2.命令删除 已生成的索引

       curl -XDELETE 'http://1localhost:9200/.monitoring-es-6-*

免责声明:文章转载自《es机器监控x-pack导致的监控存储过大的问题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇实验1:基于Weka的典型数据挖掘应用Delphi中的ObjectList简单用法一则下篇

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

相关文章

mysql 索引中的USING BTREE 的意义

索引是在存储引擎中实现的,因此每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型。 根据存储引擎定义每个表的最大索引数和最大索引长度。所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。 大多数存储引擎有更高的限制。MySQL中索引的存储类型有两种:BTREE和HASH,具体和表的存储引擎相关; MYISAM和Inn...

如何在Elasticsearch中删除中文索引

问题现象 因为某种特殊的原因,发现在es集群中出现了中文名称的索引,通过_cat API查询结果如下: GET /_cat/indices/?v health status index uuid pri rep docs.count docs.deleted store.size pri.store.size gr...

浅谈SQL Server中的三种物理连接操作

本文转自:https://msdn.microsoft.com/zh-cn/library/dn144699.aspx 感觉写的很好,特此收录,以备自己和需要的朋友查看 简介 在SQL Server中,我们所常见的表与表之间的Inner Join,Outer Join都会被执行引擎根据所选的列,数据上是否有索引,所选数据的选择性转化为Loop Join,M...

内核源代码阅读工具介绍

跳转 在源代码阅读过程中,最常用的就是跳转到一个指定的函数的代码块中。 下面我们先介绍最常用的跳转功能 首选在内核源代码目录中,运行vim,然后输入: :tj start_kernel 如果tags文件中只有一个标号为start_kernel的索引,就会直接跳转到这个start_kernel函数的定义中,如果有多个标号为 start_kernel的索引,...

SQL Server索引管理之六大铁律

索引是以表列为基础的数据库对象。索引中保存着表中排序的索引列,并且纪录了索引列在数据库表中的物理存储位置,实现了表中数据的逻辑排序。通过索引,可以加快数据的查询速度和减少系统的响应时间;可以使表和表之间的连接速度加快。 但是,不是在任何时候使用索引都能够达到这种效果。若在不恰当的场合下,使用索引反而会事与愿违。所以,在SQL Server数据库中使用索引的...

Arduino 101/Genuino101使用-第2篇

1. Arduino 101编程只是在ARC的核心上进行,其具体架构为ARCv2EM。、 2. 而Quark核心,从目前可知的信息来看,其应该运行着名为Zephyr的RTOS 3.101并没有EEPROM存储单元,其提供的EEPROM库,实际上是在操纵其上的Flash空间。 4. 跑个定时器例程测试一下 1 #include "CurieTimerOne....