企业级监控平台 prometheus
日期:2019-01-08
目录:
Prometheus介绍
1、Prometheus应用场景
2、Prometheus优缺点
3、Prometheus架构图
4、Prometheus组件
Prometheus监控
1、监控基础项(类似于zabbix的基础监控模版)
2、监控process
3、监控nginx
4、监控redis
5、埋点监控
1
Prometheus应用场景
Prometheus有Google与Kubernetes 社区强力支持,尽快告警功能简单,
但是开源社区异常火爆,作为CNCF第二开源项目(第一开源项目Kubernetes Borg的开源版本),
Google Borgmon的开源版本(用于监控Borg),未来发展前景看好
Prometheus监控场景: 业务监控、性能监控、容器监控、微服务监控、部分应用监控(能够做的
应用监控)
https://prometheus.io/docs/ Prometheus-book(中文)
https://yunlzheng.gitbook.io/prometheus-book/
http://docs.grafana.org/
2
Prometheus优缺点
Prometheus优点
它可以埋点的方式实现对业务进行监控,实现对docker的原生态监控
它是一个功能强大且易于使用的监控工具,而且组件少,配置简易,维护方便
它使用灵活的服务发现,内置了对Azure、Consul、Docker、EC2和Kubernetes的支持
它具有一个活跃的响应式社区
官方提供的客户端类库有go,java,python,ruby,还有很多第三方开发的库,支持nodejs,
php,erlang
Prometheus 缺点
它不支持分布式存储
3
Prometheus架构图
4
Prometheus组件
•
•
•
•
Prometheus Server:时序数据的存储、查询(PromQL语句);提供了简单的dashbord页面,可以通过web访问(默
认监听端口:9090);监控轮询,扫描Exporter暴露的http接口,获取监控数据;告警条件判断
Alertmanager:告警管理组件,用于告警信息的处理,包括:告警分发、分组、告警抑制等等。
Exporters:exporter是Prometheus的监控数据采集器,用于采集不同监控目标的性能数据。目前有丰富的组件支持
不同监控目标的指标采集,包括官方支持的与第三方开发的,详见:
https://prometheus.io/docs/instrumenting/exporters/
Grafana:看板工具。支持灵活的自定义看板编排,用于数据可视化。也提供了告警配置功能,但告警逻辑比较简单。
5
监控基础项
监控基础项:
https://github.com/prometheus/node_exporter
agent:
启动命令:
/data/SicentApp/node_exporter/node_exporter --web.listen-address=:9910 &
>> /var/log/node-stdout.log 2>> /var/log/node-stderr.log
6
监控process
监控process
process-exporter
https://github.com/ncabatoff/process-exporter
启动命令:
/data/SicentApp/node_process/process-exporter/process-exporter -config.path mongos.yaml & >>
/var/log/node-stdout.log 2>> /var/log/node-stderr.log
7