Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知。它主要有以下六大特点:
这里我们介绍它,自然是与InfluxDB结合来展示性能监控平台的数据,由于它有良好的图表和高度的查询定制能力,所以非常适合用于性能监控数据的实时展示。
官方下载地址: https://grafana.com/grafana/download
对于Centos用户,可以用下面的命令添加InfluxDB的仓库
cat <<EOF | sudo tee /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
EOF
然后安装、运行InfluxDB服务:
sudo yum install grafana
sudo service grafana-server start
sudo /sbin/chkconfig --add grafana-server ## service服务开机自启动
如果你的系统可以使用Systemd,也可以这样启动:
sudo yum install influxdb
sudo systemctl daemon-reload
sudo systemctl start grafana-server
sudo systemctl status grafana-server
sudo systemctl enable grafana-server.service ## systemd服务开机自启动
假定你跟我一样是Centos的用户,那么安装命令是这样的:
wget https://dl.grafana.com/oss/release/grafana-6.3.3-1.x86_64.rpm
sudo rpm -ivh grafana-6.3.3-1.x86_64.rpm
grafana-server -config /etc/grafana/grafana.ini -homepath /usr/share/grafana
启动grafana-server之后,就可以通过3000端口来访问web页面了,比如:http://localhost:3000。 默认的账户为admin:admin,首次登录时会要求修改密码。登录后的界面如下:
登录之后,首先要做的事情就是添加数据源;前面我们也提到过grafana可以支持很多数据源,这里只选择influxdb作为数据源,其添加内容的界面如下:
只需要选择好数据类型为influxdb,然后配置好相应的访问url和数据库即可。
接下来就是添加面板,也就是想要展示数据的图表;influxdb不仅支持普通曲线图,还是支持很多的可视化图;此外还支持使用第三方已经配置好的模板和插件,非常的好用。
比如:对于jmeter性能数据就有专门的第三方模板,直接使用即可无需自己配置;还有像nginx、redis、mysql、mongo等都有专门的三方模板可以选用。
而如果你只想安静地展示自己独有的数据,那么你也可以选择自定义一个模板;grafana新建模板有2种方式可选,图示如下:
这2种方式的配置步骤和内容基本一样,只是对于图形展示的属性有所不同而已;而最重要的就是配置influxdb的数据读取语句。
这个样例里从cpu_load表中读取value字段的数值并计算平均值再展示。
配置好面板的基本数据之后,记得保存然后返回主面板页面,就能看到数据的展示情况了。如下图:
这里刚好配置了2种形式的图表,上面是普通的,下面则是可视化的;现在知道它们的区别了吧!
grafana可以说是即强大又简单的数据展示工具,可以支持很多的数据源,提供了很多的图表格式,还有三方模板库可以直接使用;而对于简单需求的配置却是如此的简单。