Metricbeat使用过程中的一些坑

文章目录

  • Metricbeat使用过程中的一些坑
    • metricbeat test modules报错
      • 官方说明节选
    • 使用metricbeat7.4监控elasticsearch 6.4
      • 参考文档
    • ES 7.X使用Metricbeat收集Elasticsearch监视数据
      • 注意事项
      • 参考文档
    • ES 6.x暂停数据收集(可选)
      • 参考文档

Metricbeat使用过程中的一些坑

metricbeat test modules报错

metricbeat中elasticsearch-xpack模块,查看日志时,metricbeat服务并没有出现报错,但是metricbeat test modules出现如下报错:

elasticsearch...
  ccr...
    error... ERROR timeout waiting for an event
  cluster_stats...
    error... ERROR timeout waiting for an event
  index...
    error... ERROR timeout waiting for an event
  index_recovery...
    error... ERROR timeout waiting for an event
  index_summary...
    error... ERROR timeout waiting for an event
  ml_job...
    error... ERROR timeout waiting for an event

但是在es集群的主节点运行metricbeat test modules是ok的,而且使用elasticsearch-head插件查看数据时,分片以及索引监控信息可以监控到

在es集群每个节点安装metricbeat,其实是为了获取node_stats,而cluster_stats、index、index_recovery、index_summary、shard这几类信息,只要metricbeat其中一个实例可以正确上传就可以

使用es主节点的metricbeat实例运行metricbeat test modules,只要能通过测试就ok,不用太过纠结metricbeat test modules出现的报错

官方说明节选

收集器indices_stats,这些文档代表索引统计信息输出的一部分(例如GET /_stats)。该信息只需要收集一次,因此可以在选举的主节点上收集。该收集器最常见的故障与索引数量过大(因此收集它们的时间)有关,导致超时。indices_stats每个集合生成一个摘要 文档index_stats ,每个集合每个索引生成一个文档。

metricbeat收集监控数据超时

使用metricbeat7.4监控elasticsearch 6.4

1、环境说明

  • metricbeat版本:6.4.2
  • 被监控ES集群:6.4.2
  • 存储监控数据ES集群:7.4.1

2、出现以下类型报错

error":{"root_cause":[{"type":"mapper_parsing_exception","reason":"Root mappxxx

3、原因
因为ES从7.0版本开始,弃用了映射类型,所以metricbeat6.4取得的数据,想要存储在ES7.x中,数据字段是不匹配的
4、解决
Elasticsearch模块已通过Elasticsearch 6.3进行了测试,并且有望与所有6.x版本一起使用。

使用metricbeat7.4.x监控elasticsearch 6.3+

参考文档

Removal of mapping types
Elasticsearch模块

ES 7.X使用Metricbeat收集Elasticsearch监视数据

  • 堆栈监测视图使用的数据索引默认为.monitoring-es-7-xxxx.xx.xx,基础版许可证默认保留7天,不可修改,且只能展示一个ES集群的信息
  • 使用metricbeat收集,模块文件中开启xpack选项,会将数据直接存储到.monitoring-es-7-mb-xxxx.xx.xx索引
  • metricbeat模板必须是名为metricbeat-*,堆栈视图才能正常显示

注意事项

  • ES 7.x监控设置分为全局配置和服务的配置,elasticsearch的监控设置可以单独设置,全局配置需要开启,但是若使用metricbeat监控ES,则需要关闭elasticsearch的默认采集。

  • 使用metricbeat监控ES,要想最终展示在堆栈监测视图,则必须设置索引模板为metricbeat-*,以及elasticsearch-xpack模板中xpack.enabled为true,数据索引为.monitoring-es-7-mb-xxxx.xx.xx

参考文档

使用Metricbeat收集Elasticsearch监视数据(官方)

默认监控索引保留7天

ES 6.x暂停数据收集(可选)

使用metricbeat 7.x监控ES 6.3+的集群,ES 6.3+默认是开启集群监控的,为了避免metricbeat采集和系统监控重复,可选择关闭默认监控采集

  • 要停止在Elasticsearch中生成X-Pack监视数据,请禁用数据收集:
    xpack.monitoring.collection.enabled: false
#在kibana开发工具中
PUT /_cluster/settings
{
    "persistent" : {
        "xpack.monitoring.collection.enabled" : false    }
}
#命令行
curl -X PUT "localhost:9200/_cluster/settings?pretty" -H 'Content-Type: application/json' -d'
{
    "persistent" : {
        "xpack.monitoring.collection.enabled" : false
    }
}'

参考文档

暂停数据收集

群集更新设置API

你可能感兴趣的:(elastic,devops)