故障处理

最近更新时间: 2026-06-30 15:06:00

  1. 故障处理思路

    1. Apm指标数据链路:
      Apm通过collector组件,将指标数据上报到barad-nws,barad-nws对维度信息翻译以后缓存到kafka,kafka数据流入到flink,flink再将数据计算结果流入kafka,kafka再将数据写入writer,writer写入es,客户在前端查看数据,调用api,api从es拉取数据展示。
    2. 告警链路:
      创建了告警策略之后,同步器会去同步告警策略和告警规则到adp告警检测,adp告警检测会从第二层kafka获取监控数据进行检测是否符合告警规则,符合则到amp告警发送,amp告警发送发送消息给到客户,并且将告警历史等信息存到es保存。
    3. 排查思路:
      1. 分析具体场景,缩小范围。
      2. 针对具体case分析。
      3. 全链路分析,逐一排查。
  2. 故障处理CASE

    1. 指标无监控数据

      • 排查思路:
        根据数据链路去查每一个组件。
      • 故障现象:
        租户端控制台所有产品都看不到监控数据。
      • 故障定位及处理:
        1. 检查ES集群是否正常部署:
        • 在pod内curles1.barad:9200/_cat/health?v,如果集群状态为green则正常。
        1. 查看存储表是否正常初始化:
        • curl es1.barad:9200/_metrics,正常应返会viewName index的集合,若报无权限或无该index,则创建集群的初始化参数有问题,开启了鉴权,或集群类型创建的不是ctsdb,需将集群销毁重新创建,具体可参考ctsdb oss部署文档。
        • 查看建表的时间戳格式是否正常:curl es1.barad:9200/_metric/cvm_device-60,若返回的format为epoch_second则为正常,若为epoch_mills则为异常。如异常需要将该表删掉重建(如管控刚刚拉起,存量数据无需保留的话,可将所以metric删掉后重新执行初始化脚本)。
        1. 如以上都正常,且集群本身运营有一段时间后突然没数据,可查看es存储是否被写满,
        • curl  es1.barad:9200/cat/allocation?v的disk.indices可查看当前已使用的node空间,
        • curl es1.barad:5100/_search/clusters可以看到对应集群预先分配的node磁盘空间。如已达到分配容量,则需要对ES进行扩容。
    2. 拓扑图无数据

      • 排查思路:
        这种情况可以肯定的是taw-streaming组件那个的链路存在问题,
      • 故障现象:
        拓扑图无数据,无法生成关系图。
      • 故障定位:
        1. 确认上报方collector组件是否有写入kafka数据中。
        2. 如确实有写入,检查streaming的任务是否有丢弃数据,过滤。
        3. 如没有,检查writer-trace是否正常消费写入es中。
      • 运维经验:
        1. 集群的初始化操作一定要做。
        2. 配置的管理切记不要搞错。
    3. 业务无告警

      • 告警架构:
        监控中台将告警能力分为检测和告警



- 告警组件:
同步组件tcloud-barad-alarm-synchronizer
告警发送tcloud-barad-alarm-amp
告警检测tcloud-barad-alarm-detector
库 StormCloudConf,alert_management_platform_new,manager。
- 数据同步逻辑:

1. 查看是否有监控数据,若无监控数据,则先按照《无监控数据》进行定位。
2. 若有监控数据但无告警,则需要查看告警组件的日志,根据日志报错进行排查。