目录
本节概览 : 介绍了部署Grafana、对接inluxDb以及Grafana属性。Grafana主要包括DashBoards和DataSource两部分。
1 介绍Grafana
grafana是一个非常酷的数据可视化平台,常常应用于显示监控数据,底层数据源可以支持influxDb、graphite、elasticSeach。
2 部署Grafana
2.1 MAC 部署
参考 :https://grafana.com/grafana/download?platform=linux
1、安装
在mac下通过如下命令进行安装:
1 2 |
brew update brew install grafana |
2、启动和关闭服务
启动服务
1 |
brew services start grafana |
关闭服务
1 |
brew services stop grafana |
3、启动服务之后:http://localhost:3000 。用户名和密码在初始化都是admin和admin
4、查看版本号
在/usr/local/opt/grafana/bin执行
1 2 |
heartthinkdo@B000000064800:$ grafana-cli --version Grafana cli version 4.4.3 |
2.2 CentOS部署
2.2.1 方式1 通过rpm安装
1、部署
参考 :https://grafana.com/grafana/download?platform=linux
1 2 3 |
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.6.1-1.x86_64.rpm sudo yum localinstall grafana-4.6.1-1.x86_64.rpm |
2、启动
1 2 3 4 5 |
启动 # service grafana-server start 加入开机启动 # /sbin/chkconfig --add grafana-server |
3、配置
修改端口,如果我们是通过yum 方式按照rpm包的话,此时可以通过
1 |
vi usr/share/grafana/conf/defaults.ini |
对于其他文件如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# init.d脚本 /etc/init.d/grafana-server # 安装默认环境变量文件 /etc/sysconfig/grafana-server # 配置文件,修改这个文件不起作用。 /etc/grafana/grafana.ini # 日志文件 /var/log/grafana/grafana.log # 默认sqlite3数据库 /var/lib/grafana/grafana.db |
2.2.2方式2 通过tar包安装 (推荐)
1、部署
1 2 3 |
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.6.1.linux-x64.tar.gz tar -zxvf grafana-4.6.1.linux-x64.tar.gz |
2、启动
在解压包目录下执行
1 |
./bin/grafana-server web |
后台启动
1 |
nohup ./grafana-server web >/dev/null 2>&1 & |
3、相关问题
(1)问题分析
- 通过tar包安装之后,执行./grafana-server 时,会报错“ Floating point exception”
- 通过rpm安装时,在执行”service grafana-sever start” 时会报错“unrecognized option `–pidfile=/var/run/grafana-server.pid”
(2)问题解决
在网上查看“ Floating point exception”错误原因是因为gcc版本过低造成的。所以查看自己系统是centos的版本是4.3,gcc是3.x。尝试升级centos的版本到6.3,此时gcc的版本是4.8了,然后再重新执行”service grafana-sever start“,可以正常启动了。
3 配置文件-通过tar包安装方式
key | value |
官网配置 | http://docs.grafana.org/installation/configuration/ |
部署方式 | linunx下tar部署 |
配置文件路径 | 解压目录/grafana-4.6.1/conf/defaults.ini |
1、端口号
1 2 |
# The http port to use http_port = 8090 |
2、修改存储路径
主要包含log、database、session三个路径。
(1)文件路径
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#################################### Paths ############################### [paths] # Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used) # 用来保存数据库和session的路径 data = /home/disk7/influx/data/grafana # # Directory where grafana can store logs 保存log路径 # logs = /home/disk7/influx/data/grafana/log # # Directory where grafana will automatically scan and look for plugin 保存插件路径 # plugins = /home/disk7/influx/data/grafana/plugins |
(2)database
1 2 3 4 5 |
#################################### Database ############################ [database] # For "sqlite3" only, path relative to data_path setting # 相对路径,可以暂时使用默认的值 path = grafana.db |
(3)session
1 2 3 4 |
#################################### Session ############################# [session] # 相对路径,可以使用默认的值 provider_config = sessions |
4 接入influxDb
4.1 配置influxDb的数据源
4.2 新增DashBoards
1、添加
2、编辑Graph
(1)选择“edit”编辑graph。
(2)添加监控图对应的sql
5 Grafana-DashBoards配置
在Grafana系统,如下图中菜单可以找到Dashboards。Dashbord主要包括dashboard属性、pannel属性和template属性三部分。
5.1 DashBoard介绍
5.1.1 DashBoard组成
Dashbord组成如下图:
- 一个dashbord由多个row组成。
- 一个row由1~n个panel组成。
- 一个panel可以一个graph、table等。
5.1.2 新建Dashboard
通过如下可以新建一个Dashboards
4.1.3 DashBoard属性
1、如下两个按钮表示是否可以进行编辑或者隐藏“ADD ROW”按钮。
5.2 Panel
如下图,Graph、Singlestat、Table等都是一个panel。
5.2.1 Panel-Graph
1、配置sql
(1)点击graph上的“PannelTitle”,然后选择“Edit”
(2)编辑sql
对应的Graph的Metric属性,如下图
2、 缩放panel
5.3 Templating
5.3.1 一个例子
添加一个常量类型
修改Graph的查询sql,指定我们配置的变量”host”
选择查询条件
6 Grafana-DataSources
如下,可以配置influxDb、elasticSearch等数据源,指定数据来源。
配置数据源时,必须制定数据源必须指定dataSource。
7 安装插件
1、首先查看“解压目录/grafana-4.6.1/conf/defaults.ini”关于插件目录配置
1 2 3 |
# Directory where grafana will automatically scan and look for plugin 保存插件路径 plugins = /home/xxxx/influx/data/grafana/plugins |
2、下载插件和解压
如下载grafana-piechart-panel.zip。解压,将此解压目录拷贝到/home/xxxx/influx/data/grafana/plugins 目录下面,
3、关闭grafana
4、重新启动grana
8 与其他系统整合
我们常常需要将grapana的展示图,嵌套到其他系统中,这就需要一个无密码访问的问题。在grafana的配置文件中[auth.anonymous] 这个配置,默认是enabled=false, 修改为true(表示支持匿名登录),然后新启动就可以了。此时不需要登录就可以查看指标图了。
9 参考资料
1、【官网】对接influxdb http://docs.grafana.org/features/datasources/influxdb/
2、【官网】Grafana属性 http://docs.grafana.org/reference/templating/#the-timefilter-or-timefilter-variable