
文章目录
前言
Prometheus(普罗米修斯R)是一套开源的监控&报警&时间序列数据库的组合,由SoundCloud公司开发。
Prometheus基本原理是通过HTTP协议周期性抓取被监控组件的状态,这样做的好处是任意组件只要提供HTTP接口就可以接入监控系统,不需要任何SDK或者其他的集成过程。这样做非常适合虚拟化环境比如VM或者Docker。
Prometheus应该是为数不多的适合Docker、Mesos、Kubernetes环境的监控系统之一。
Prometheus 号称下一代监控系统,已经成为主导及容器监控方面的标配,并且在未来可见的时间内被广泛应用
提示:以下是本篇文章正文内容,下面案例可供参考
一、Prometheus、Grafana
1.1 Prometheus简介
Prometheus是由SoundCloud公司开发的开源监控和警报工具包。其设计思想是通过时间序列数据库存储监控数据,并通过强大的查询语言PromQL对数据进行分析。Prometheus的架构高度模块化,易于扩展,特别适合云原生环境,如Kubernetes集群。
1.2 Grafana简介
Grafana是一个开源的数据可视化工具,广泛用于绘制图表和仪表盘。它可以与多种数据源配合使用,如Prometheus、Graphite等,并提供丰富的图表类型和插件支持。Grafana的用户友好界面使得自定义和共享仪表盘变得轻而易举。
通过将Prometheus的数据采集、存储与Grafana的可视化能力相结合,可以创建一套强大的监控系统,帮助维护和优化大规模的IT环境。

1.3 Prometheus的核心组件
Prometheus服务器:负责收集和存储时间序列数据。
exporters:用于将不同类型的监控指标转化为Prometheus格式,例如node_exporter用于收集主机级别的指标。
Pushgateway:允许短暂的生命进程将指标推送到Prometheus,适用于批处理作业。
Alertmanager:负责处理Prometheus服务器发出的警报。
各种客户端库:用于与被监控的程序集成,这些库可以帮助自动生成指标。
Prometheus服务器是架构中的关键组件,它通过拉取(Pull)的方式从配置的目标中收集指标数据,并存储在自身的时序数据库中。通过查询接口,用户可以实时获取监控数据,进行问题诊断和趋势分析。
1.4 Prometheus优点
(1)提供多维度数据模型和灵活的查询方式
通过将监控指标关联多个 tag,来将监控数据进行任意维度的组合,并且提供简单的 PromQL 查询方式,还提供 HTTP 查询接口,可以很方便地结合 Grafana 等 GUI 组件展示数据。
(2)基于时序数据库,支持服务器节点的本地存储
通过 Prometheus 自带的时序数据库,可以完成每秒千万级的数据存储;不仅如此,在保存大量历史数据的场景中,Prometheus 可以对接第三方时序数据库和 OpenTSDB 等。
(3)定义了开放指标数据标准
以基于 HTTP 的 Pull 方式采集时序数据,只有实现了Prometheus监控数据才可以被 Prometheus 采集、汇总、并支持 Push 方式向中间网关推送时序列数据,能更加灵活地应对多种监控场景。
(4)支持通过静态文件配置和动态发现机制发现监控对象
自动完成数据采集。Prometheus 目前已经支持 Kubernetes、etcd、Consul 等多种服务发现机制。
(5)易于维护
可以通过二进制文件直接启动,并且提供了容器化部署镜像。
(6)集群支持
支持数据的分区采样和集群部署,支持大规模集群监控。
1.5 Prometheus缺点
Prometheus 是基于 Metric 的监控,不适用于日志(Logs)、事件(Event)、调用链(Tracing)。
由于Prometheus采用的是Pull模型拉取数据,意味着所有被监控的endpoint必须是可达的,需要合理规划网络的安全配置。
指标众多,需进行适当裁剪。
本次部署Prometheus+Grafana需要两台服务器
主节点(10.10.10.65)主要负责部署Prometheus+Grafana,搭建监控server平台,并开启9090、3000端口
从节点(10.10.10.214)主要负责部署Node_exporter,主要在被采集的主机上部署插件服务,并开启9100服务端口,支持部署多台被采集的主机,由主节点统一管理
二、部署Docker
三、主节点部署Prometheus+Grafana
3.1 部署Prometheus
#拉取镜像
docker pull prom/prometheus
#运行容器
docker run -itd --name=prometheus --restart=always


5136

被折叠的 条评论
为什么被折叠?



