疲劳是最舒适的枕头,努力工作吧。

kibana monitor中apm-server instance实例信息显示不全

Kibana | 作者 wayne | 发布于2020年06月01日 | 阅读数:348

一、集群环境信息
1、apm-server7.4 (实例数:2)--> ES7.4(集群) --> Kibana7.4(实例数:1)
2、apm-server(k8s prod)、ES+kibana(阿里云)
3、应用场景:应用性能监控APM
 
二、问题描述
1、在kibana monitor页面查看apm-server实例监控指标,页面中只能看到其中1个apm-server实例,实际部署了2个apm-server实例;
 
三、问题排查
1、执行API查询beat监控数据,聚合查询beats_state.beat.name 字段,结果返回2个apm-server实例对应的name记录;
GET .monitoring-beats-*/_search
{
  "size": 0, 
  "aggs": {
    "apm-servers": {
      "terms": {
        "field": "beats_state.beat.name",
        "size": 10
      }
    }
  }
}
 
2、执行API查询语句,聚合查询beats_state.beat.uuid 字段,结果返回1个uuid记录;
GET .monitoring-beats-*/_search
{
  "size": 0, 
  "aggs": {
    "apm-servers": {
      "terms": {
        "field": "beats_state.beat.uuid",
        "size": 10
      }
    }
  }
}
 
3、初步排查结果是,两个apm-server持有相同的uuid,导致kibana monitor页面在同一时间只能显示一个apm-server实例的信息;
 
4、更新排查进展,两个apm-server运行在k8s的两个pod上,这两个pod运行在同一个node节点上,尝试分开这两个pod到不同的node上,再次聚合查询beats_state.beat.uuid字段,显示两个不同的uuid,同时kibana monitor页面能正常显示两个apm-server实例的监控信息。
 
四、疑问点
1、kibana monitor 根据beats_state.beat.uuid区别不同的apm-server实例,beats_state.beat.uuid这个字段值的生成逻辑需要继续排查;
2、我理解的apm-server实例本身的监控数据采集流程,apm-server metrics --> x-pack采集 --> ES索引名.monitoring-beats-* --> Kibana Monitor , 是这样的吗?
已邀请:

要回复问题请先登录注册