一、简介:
Prometheus是由 SoundCloud开源的监控报警解决方案:
- 使用google公司开发的go语言编写。
- prometheus存储的是时序数据(时序数据库)
- Prometheus是一个框架,可以与其他组件完美结合。
- 数据带时间标签,如<metric name>{<label name>=<label value>-,...}
- Prometheus主要用在监控容器数据,也可以监控常规主机
- Prometheus重视高可用,它所收集的数据可能不会足够详细和完整
Prometheus架构图:
二、监控方式:
拉取:pull。监控端联系被监控端,采集数据(相当于zabbix的被动监控)
推送:push。被监控端主动把数据发给监控端。在prometheus中,push的方式需要额外的组件pushgateway(相当于zabbix的主动监控)
被监控端根据自身运行的服务,可以运行不同的exporter(被监控端安装的、可以与Prometheus通信,实现数据传递的软件)
常用exporter列表:https://prometheus.io/docs/instrumenting/exporters/
三、补充:
- 解压prometheus目录文件说明:
prometheus:执行文件(启动服务)
promtool:检查工具(检查语法是否正确)
tsdb:时序数据库
prometheus.yml:prometheus的配置文件 - 检查语法格式:
/usr/local/prometheus/promtool check config /usr/local/prometheus/prometheus.yml - 端口:9090