夜莺-Nightingale
夜莺V7+
夜莺V6
采集器-Categraf
插件配置
Flashcat 企业版
开源生态
Telegraf
Prometheus
版权声明
第1章:天降奇兵
第2章:探索PromQL
开篇
理解时间序列
Metrics类型
初识PromQL
PromQL操作符
PromQL聚合操作
PromQL内置函数
在HTTP API中使用PromQL
最佳实践:4个黄金指标和USE方法
小结
第3章:Prometheus告警处理
开篇
Prometheus告警简介
自定义Prometheus告警规则
部署Alertmanager
Alertmanager配置概述
基于标签的告警处理路由
使用Receiver接收告警信息
告警模板详解
屏蔽告警通知
使用Recoding Rules优化性能
小结
第4章:Exporter详解
第5章:数据与可视化
第6章:集群与高可用
第7章:Prometheus服务发现
第8章:监控Kubernetes
开篇
初识Kubernetes
在Kubernetes下部署Prometheus
Kubernetes下的服务发现
使用Prometheus监控Kubernetes集群
基于Prometheus的弹性伸缩
小结
第9章:Prometheus Operator
参考资料
机器列表(对象列表)数据异常是为什么?
采集器使用 categraf
如果采集器用的 categraf,需要在 conf/config.toml 中打开 heartbeat 的配置。
# 心跳上报(附带资源信息,对象列表中使用)给夜莺v6
# 如果是v5版本,这里不需要保留
[heartbeat]
enable = true
# report os version cpu.util mem.util metadata
url = "http://127.0.0.1:17000/v1/n9e/heartbeat"
上例中,categraf 直接向中心端的 n9e 上报心跳。如果采用边缘机房的部署方式,categraf 也可以向 n9e-edge 心跳。那个 url 配置项就需要改成 n9e-edge 的地址,同时 urlpath 改成 /v1/n9e/edge/heartbeat
。
使用其他采集器
如果使用其他采集器,比如 grafana-agent、telegraf、datadog-agent 等,正常情况是机器列表会出现机器,但是 cpu、内存 等其他字段都是 unknown。这些采集器和夜莺的协同稍差。
数据流没有经过夜莺
如果数据流压根就没有经过夜莺,那夜莺就没法从监控数据中解析出机器信息,所以对象列表就是空的。
此时不影响核心的告警和看图功能,只是会丧失机器列表的功能(自然无法为机器监控数据打标签、对机器划分业务组控制权限),也没法使用告警自愈的功能。
比如使用 vmagent 作为采集器,采集了数据之后直接推给 VictoriaMetrics,没有流经夜莺;或者直接使用 Prometheus 抓取各类 exporter 的数据,也没有流经夜莺。此时就把夜莺仅作为看图 + 告警引擎就可以了。