《数据监控-Prometheus/Grafana》Prometheus/Grafana详细入门教程

一、数据监控-Prometheus

1 什么是Prometheus

	Prometheus是由SoundCloud开源监控告警解决方案,从2012年开始编写代码,到2015年github上开源以来,
吸引不少用户以及公司的使用。Prometheus作为新一代的开源解决方案,很多理念与Google SRE的运维之道不谋而合。

2 Prometheus特点

1.Prometheus是按照Google SRE运维之道的理念构建的,具有实用性和前瞻性的特点。
2.Prometheus一直在优化和巩固
3.Prometheus基于Go语言,性能不错,安装和部署简单,可以实现多平台部署的兼容性。
4.丰富的数据收集客户端,而且官方提供了各种常用的exporter
5.丰富强大的查询能力

3 Prometheus主要功能

1.多维数据模型
2.灵活的查询语句
3.无以来存储,支持local和remote不同类型
4.次啊用http,使用pull(拉)模式,简单移动
5.监控目标,可以采用服务发现或静态配置的方式。
6.支持多种统计数据模型,图形化友好

4 Prometheus基础架构

在这里插入图片描述

5 工作流程

  • 指标采集:Prometheus server通过pull形式采集监控指标,可以直接拉取监控指标,也可以通过pushgateway作为中间环节,监控目标首先通过push操作将数据上传到pushgateway。
  • 指标处理:Prometheus server 将次啊及到的数据存储在自身的DB或者第三方的DB上。
  • 指标展示:Prometheus server 通过提供HTTP接口,提供自带或者第三方展示系统,例如Grafana。
  • 指标警告:Prometheus server 通过push告警信息到AlertManager,AlertManager通过静默-抑制-整合-下发这四个阶段处理后通知观察者结果。

6 组件

  • PushGateway

可选,作为数据采集的中间系统,监控木匾可以先通过push将数据上传到PushGateway,然后Prometheus server再通过pull的方式将数据采集到

  • Prometheus Server

Prometheus服务器的实例

  • Grafana

可选,这里建议使用,这是第三方的展示工具,可以编写Prom QL的查询语句,通过HTTP协议与Prometheus集成

  • Alter Manager

prometheus的Alerting模块,负责接收告警,例如Prometheus server发送的警告信息,并且通过提供静默-抑制-整合-下发等操作。

7 重点组件介绍

7.1 pushgateway

  • 拓扑图

在这里插入图片描述

监控目标通过脚本或者其他的程序push日志到pushgateway中,prometheus通过pull的方式拉取pushgateway的日志

  • pushgateway的重要性
因为Prometheus是以pull的形式采集监控的指标,这样的话就会存在两个这样的问题:
首先:每次新增监控的目标就需要修改Prometheus的配置
其次:如果监控目标所在网络和Prometheus所在网络不通,就无法通过Prometheus的pull形式采集指标
  • Prometheus的缺点
1.pushgateway存在单点问题,如果pushgateway出现故障,所有监控目标都将失败。当然也可以接触LSB来解决单点问题
2.丢失Prometheus对实例健康状态的检查功能
3.取消监控一个服务,需要手动删除pushgateway上对应的持久化数据

tips:单点故障

假设:一个大树的树根让人给刨了,那么他的树叶还有活路嘛,树干还有意义嘛。

这里的pushgateway就是进程中的一个单点,这个点如果出问题的话,就会引起单点问题。

  • API

所有的监控指标的push都通过HTTP接口

7.2 Alert Manager

  • 分组
将警告星系分组,方便应用于当大量报警信息涌入事的通知
  • 静默
按照一定的规则,在一定时间内不进行通知下发,在达到一定的阈值之后,统一下发
  • 抑制
一个告警信息被另一个告警信息抑制后,另一种告警发送之后,该告警不再发送

tips:

Prometheus正应用于离线数仓中采集监控功能,通过与grafana联合使用,实现采集监控
主要监控,通过openstry采集用户行为日志

二、数据监控之grafana

Grafana安装

## 下载grafana的安装包
[root@hadoop ~]# yum https://dl.grafana.com/oss/release/grafana-7.5.7-1.x86_64.rpm

100%[========================>] 51,909,421 1.36MB/s 用时 24s

2021-05-25 13:43:25 (2.07 MB/s) - 已保存 “grafana-7.5.7-1.x86_64.rpm” [51909421/51909421])

[root@hadoop ~]# ls
anaconda-ks.cfg grafana-7.5.7-1.x86_64.rpm

## 安装本地的grafana
[root@hadoop ~]# yum localinstall grafana-7.5.7-1.x86_64.rpm 

已安装:
grafana.x86_64 0:7.5.7-1

作为依赖被安装:
libXmu.x86_64 0:1.1.2-2.el7
libXxf86misc.x86_64 0:1.0.3-7.1.el7
libfontenc.x86_64 0:1.1.3-3.el7
urw-base35-bookman-fonts.noarch 0:20170801-10.el7
urw-base35-c059-fonts.noarch 0:20170801-10.el7
urw-base35-d050000l-fonts.noarch 0:20170801-10.el7
urw-base35-fonts.noarch 0:20170801-10.el7
urw-base35-fonts-common.noarch 0:20170801-10.el7
urw-base35-gothic-fonts.noarch 0:20170801-10.el7
urw-base35-nimbus-mono-ps-fonts.noarch 0:20170801-10.el7
urw-base35-nimbus-roman-fonts.noarch 0:20170801-10.el7
urw-base35-nimbus-sans-fonts.noarch 0:20170801-10.el7
urw-base35-p052-fonts.noarch 0:20170801-10.el7
urw-base35-standard-symbols-ps-fonts.noarch 0:20170801-10.el7
urw-base35-z003-fonts.noarch 0:20170801-10.el7
xorg-x11-font-utils.x86_64 1:7.5-21.el7
xorg-x11-server-utils.x86_64 0:7.7-20.el7

完毕!

## 启动grafana服务
[root@hadoop ~]# systemctl start grafana-server

## Web UI 查看
${IP}:3000/login
  • 启动登录页面:

在这里插入图片描述

  • 启动成功页面

在这里插入图片描述

三、Prometheus/Grafana实操

Prometheus + Grafana + node_exporter实现多台服务器性能监控

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DATA数据猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值