Prometheus教程(2)安装部署Grafana并对接Prometheus

Prometheus教程(2)安装部署Grafana并对接Prometheus

一、Grafana介绍

Grafana是一款开源的可视化平台,它能够将来自不同数据源的数据(可以集成 Prometheus、Elasticsearch、MySQL 等多种数据源)转换成丰富的图形、图表(支持条形图、饼图、直方图、时间序列、仪表盘等各式图形),形成一个美观的监控大盘,并且支持告警功能。Prometheus + Grafana的组合已经成为云原生监控领域的标准配置之一,特别是在容器化和微服务架构中被广泛采用。两者的整合流程通常是让 Prometheus 负责从各个目标中收集监控指标数据,并将其存储在时间序列数据库中。然后Grafana 作为前端展示工具将收集到的数据以直观的方式展示出来,并且通过Grafana的图形化选择可以大大简化编写PromQL的难度。

二、Grafana的安装与启动

Grafana现在分为OSS社区开源版和Enterprise企业版,其中Enterprise企业版是默认和推荐的版本。它包含了OSS版的所有功能,并且可以免费使用,可以付费升级获取到企业插件,所以可以直接使用Enterprise企业版

1、使用二进制包或者RPM包安装Grafana 

#二进制包
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-11.4.0.linux-amd64.tar.gz
tar -zxvf grafana-enterprise-11.4.0.linux-amd64.tar.gz

#RPM包
yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-11.4.0-1.x86_64.rpm


2、启动Grafana

通常不需要对配置文件进行修改,如果使用RPM方式安装的可以直接用systemctl管理,如果是二进制包,需要用命令行启动。如果有自定义需求可以编辑配置文件.conf/defaults.ini

# 配置文件
# /usr/local/grafana/conf/defaults.ini

# 二进制安装启动方式
# nohup /usr/local/grafana/bin/grafana-server &

# RPM安装启动方式
systemctl enable grafana-server
systemctl start grafana-server


3、访问Grafana

Grafana启动后默认监听在3000端口,通过浏览器直接访问,默认账号密码是admin/admin

grafana.png

三、Grafana中文配置(非必须)

其实只有少量词汇做到了汉化,大部分配置依然为英文

grafana2.png


四、Grafana数据源配置

选择Prometheus作为数据源并配置好相关信息,保存以后就可以让Grafana从数据源中获取到数据

grafana3.png


grafana4.png


grafana5.png


五、Grafana模板

Grafana官方提供了大量现成模板(https://grafana.com/grafana/dashboards,导入合适的模板ID或者JSON就可以直接使用

grafana6.png


模板导入完成后就可以看到大量的图标,并且可以在此基础上进行增删调整

grafana7.png

六、自定义Grafana仪表盘

除了使用现成模板,还可以自定义Grafana仪表盘

1、点击左侧菜单栏-仪表盘,然后找到右上角的新建按钮,选择新建仪表板

grafana8.png


2、选择添加可视化,然后选择一个之前创建好的数据源,比如Prometheus

grafana9.png

grafana10.png

3、输入PromQL进行查询,如果能获取数据,就可以再根据需求进一步调整图形展现方式,如数据单位、指标显示方式等

当tooltip选择为ALL的作用就是当鼠标悬停在面板上后能显示出所有被监控对象的数据

grafana11.png


如果是百分比单位,最小值通常为0,最大值建议设置为auto,这样可以根据实际数据来自动变化,避免数据长期处在较低水位的时候呈现为一条直线的情况

grafana12.png


一个panel中可以设置多个查询语句并且一起展示,为了区分每个语句所对应的指标,可以通过Options--Legend进行名称设置

grafana13.png


可以将采集到的主表以表格形式展示,位置可以放在图表的下方或者右侧,除了最新值以外,还可以显示最大最小值等

grafana14.png


overrrides用于属性覆盖,比如一个panel中有多个指标,但是每个指标的单位可能不一样,这个时候就可以用属性覆盖来处理。在添加overrrides时可以选择根据查询语句进行添加,然后就可以选择对应的查询语句进行设置了

grafana15.png

七、Grafana 动态变量

随着监控大盘上图标数量的增加,如果要从一个大盘中找到具体某一个主机的某个指标就会非常困难。为了解决这个问题,可以通过配置Grafana的变量来实现下拉菜单的选择方式,让用户可以在一个监控大盘上通过选择指定的主机以查看其对应的指标,简化数据展示的同时也能快速获取所需的指标信息。效果如图:

grafana16.png


1、在需要创建变量的Dashboard菜单中,点击Variables进入变量配置菜单

grafana17.png


2、在变量配置菜单新建变量。Grafana变量类型分为查询变量(Query)、自定义变量(Custom)等。在Name栏输入变量名以后,在Dashboard就可以看到一个对应的下拉菜单

grafana18.png


3、依次找到Query Option-->Query-->Query type,选择Label values作为变量的值,在下面Label一行中则是填写具体的Label,最后的Metric才是真正要使用的指标,不同的指标有不同的标签。在下图的配置中表示使用redis_up指标中instance这个标签的值作为变量的值

grafana19.png

4、配置完成后最下方可以看到变量效果预览是否符合预期

grafana20.png

5、在Grafana PromQL配置中使用定义的变量,下图中的instance=~"$Instance"代表使用了Instance这个变量

grafana21.png

文章评论

猜你喜欢

Prometheus教程(1)Prometheus工作原理与安装部署

运维技术 Prometheus教程(1)Prometheus工作原理与安装部署

一、监控系统介绍监控的作用是持续不间断对系统或服务进行监视,确保被监控的对象处于一个正常稳定的运行状态。监控系统是确保系统稳定、高效运行的关键手段,能帮助运维人员提前发现问题、快速定位问题以及解决问题...