Prometheus监控系统(9)安装部署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数据源配置
1、Grafana中文配置
其实只有少量词汇做到了汉化,大部分配置依然为英文
2、配置数据源
选择需要的数据源,这里选择Prometheus,然后填写数据源的相关信息并保存
3、导入Dashboard
通过Web UI导入喜欢的Dashboard ID,也可以访问https://grafana.com/grafana/dashboards/进行查找
4、查看监控大盘
由于Prometheus配置文件中只监控了自己,所以也只能看到一个目标的数据,后续可以通过自动发现等机制实现更多目标的监控
四、自定义Grafana仪表盘
除了使用现成的仪表盘模板,还可以按照自己的需求来自定义Grafana仪表盘。在创建仪表盘时需要自己准备好各种指标的PromQL,然后为这些指标创建合适的图形。
1、点击左侧菜单栏-仪表盘,然后找到右上角的新建按钮,选择新建仪表板
2、选择添加可视化,然后选择一个之前创建好的数据源
3、输入PromQL,能获取数据后再按需求调整图形展现方式等,包括单位、指标显示方式等
五、Grafana 动态变量
随着监控大盘上图标数量的增加,如果要从一个大盘中找到具体某一个主机的某个指标就会非常困难。为了解决这个问题,可以通过配置Grafana的变量来实现下拉菜单的选择方式,让用户可以在一个监控大盘上通过选择指定的主机以查看其对应的指标,简化数据展示的同时也能快速获取所需的指标信息。
· Grafana变量应用效果
· Grafana变量创建与使用
1、在需要创建变量的Dashboard菜单中,点击Variables进入变量配置菜单
2、Grafana变量可分为查询变量(Query)、自定义变量(Custom)等。在Name栏输入变量的名称,在Query type栏选择Label values代表我们需要使用变量来取得Label的值作为变量的值,而紧跟着的Label栏就是指定具体的Label,最后的Metric用于选择是使用哪个指标,不同的指标有不同的标签
3、可以在最下方看到一个变量效果预览是否符合预期
4、在Grafana PromQL配置中使用定义的变量
评论