监控对象
- 容器集群节点
- 集群上运行的容器
监控数据类型
-
性能状态图表: 各性能指标的不间断连续数据
-
服务心跳: 定时上报,确认服务活性
-
报警: 由状态数据经过报警逻辑计算触发(阈值,断流等)的报警信息
不同类型数据流向
-
状态: 集群节点采集器 -> Prometheus -> Grafana
-
心跳: 被监控容器自身 -> oneAgent -> InfluxDB -> Grafana
-
报警: 集群节点采集器 -> Prometheus -> AlertManager -> oneAgent -> 报警终端
注:
- 集群节点采集器包括cAdvisor, node-exporter 等容器
- 心跳需要特殊编写脚本,对于容器,要在Dockerfile编写时加入,并在启动时启用heartbeat相关参数
架构及部署变化
目前测试运行的 Docker Swarm 栈将要发生变化,首要目的是处于节约容器集群资源考虑,将Prometheus剥离出集群单独部署。
设计任务
关键指标的提前整理归类等
部署任务
- 解决Prometheus和AlterManager剥离出集群后的服务发现问题(或通过配置中静态配置采集器地址)
- 数据采集效率和延迟测试
开发任务
- 容器节点和容器的心跳上报脚本,心跳功能考虑纳入今后容器构建发布的规范。
- AlterManager 报错脚本编写。需要了解学习Prometheus技术栈,提取报警通用逻辑,避免随着服务变动频繁增添脚本。
- oneAgent接口研究,修改(如有必需)
Comments
comments powered by Disqus