引言
我们知道 zabbix 在监控界占有不可撼动的地位,功能强大。但是对容器监控显得力不从心。为解决监控容器的问题,引入了 Prometheus 技术。
一、Prometheus 概述
zabbix与prometheus区别
zabbix消耗的资源比较多,如果监控的主机非常多时(服务器数量超过500台),可能会出现监控超时、告警超时、告警系统,单点故障等现象,不过也有很多解决办法,比如提高硬件性能、改变zabbix监控模式、 多套zabbix等。
1. 简介
- borgmon (监控系统) 对应克隆的版本:prometheus(go语言)
- 所以prometheus 特别适合K8S 的架构上,作为一个数据监控解决方案,它由一个大型社区支持,有来自700多家公司的6300个贡献者,13500个代码提交和7200个拉取请求
2. 特性
- 可以自定义多维数据模型,储存更加高效
- 具有灵活且强大的查询语句(PromQL)
- 提供本地存储和分布式存储
- 通过基于HTTP和HTTPS的Pull模型采集时间序列数据(pull数据的推送,时间序列:每段时间点的数据值指标,持续性的产生。横轴标识时间,纵轴标识数据值,一段时间内数值的动态变化,所有的点连线形成大盘式的折线图)
- 可以通过push gateway进行时序列数据库推送
- 可以通过服务发现或静态配置去获取要采集的目标服务器(通过consul自动发现和收缩)
- 支持多种可视化图表及仪表盘
补充:
apen-Falcaon是小米开源的企业级监控工具,用Go语言开发,包括小米、滴滴、美团等在内的互联网公司都在使用它,是一款灵活、可拓展并且高性能的监控方案
3. 监控三大核心步骤
① 数据收集模块 ② 数据提取模块 ③ 监控告警模块
可以细化为下面6层
第一层:数据收集层 (多渠道监控数据)
第二层:数据展示层 (数据生成曲线图展示,对时序数据的动态展示)
第三层:数据提取层 (定时采集数据到监控模块)
第四层:告警规则配置层 (告警规则设置、告警伐值设置)
第五层:告警事件生成层 (实时记录告警事件、形成分析图表,趋势分析、可视化)
第六层:用户展示管理层 (同一用户管理、集中监控、集中维护)
二、Prometheus 监控体系
1. 系统层监控
-
CPU、load、Memory、swap、disk、I/O、process 等
-
网络监控:网络设备、工作负载、网络延迟、丢包率等