目录
1. 简介
1.1 什么是Grafana?
1.2 Grafana的特点
2. 安装
2.1 部署形式
2.2 安装
2.3 配置说明
2.4 配置文件注释
2.5 配置文件路径
2.6 使用环境变量
2.7 开始配置
2.8 启动
2.9 配置说明
Grafana用Go语言开发的开源数据可视化工具,可以做数据监控和数据统计,带有告警功能。支持快速灵活的客户端图表,面板插件有许多不同方式的可视化指标和日志,官方库中具有丰富的仪表盘插件。
grafana拥有快速灵活的客户端图表,面板插件有许多不同方式的可视化指标和日志,官方库中具有丰富的仪表盘插件,比如热图、折线图、图表等多种展示方式,让我们复杂的数据展示的美观而优雅。
Grafana支持许多不同的时间序列数据(数据源)存储后端。每个数据源都有一个特定查询编辑器。官方支持以下数据源:Graphite、infloxdb、opensdb、prometheus、elasticsearch、cloudwatch。每个数据源的查询语言和功能明显不同。你可以将来自多个数据源的数据组合到一个仪表板上,但每个面板都要绑定到属于特定组织的特定数据源
Grafana中的警报允许您将规则附加到仪表板面板上。保存仪表板时,Gravana会将警报规则提取到单独的警报规则存储中,并安排它们进行评估。报警消息还能通过钉钉、邮箱等推送至移动端。但目前grafana只支持graph面板的报警。
Grafana使用来自不同数据源的丰富事件注释图表,将鼠标悬停在事件上会显示完整的事件元数据和标记;
Grafana使用Ad-hoc过滤器允许动态创建新的键/值过滤器,这些过滤器会自动应用于使用该数据源的所有查询。
Grafana支持两种部署形式
1. 自行部署, 可以部署在操作系统之上. 自行提供服务器, 域名等.
2. Grafana官方托管. 无需安装, 在线注册即可得到一个专属于自己的Grafana, 但是要花钱的. 是一种SaaS服务。
Grafana支持常见的绝大多数操作系统, 如windows mac linux 同时也支持部署在docker中.
大多数情况下, Grafana都是部署在linux服务器之上. 所以本课程也是基于Linux系统来讲解.
对windows mac系统 或 docker部署有兴趣的同学, 请参考: https://grafana.com/grafana/download
我们部署Grafana可以使用YUM来进行部署。
# 创建一个文件
vim /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
# 最后安装
yum install grafana
grafana-server具有许多配置选项,这些选项可以在.ini配置文件中指定,也可以使用环境变量指定。
Note. Grafana needs to be restarted for any configuration changes to take effect.
;符号在.ini文件中全局表示注释 ()
如果是自己解压安装, 或者自行编译的方式安装, 配置文件在:
默认: $WORKING_DIR/conf/defaults.ini
自定义:$WORKING_DIR/conf/custom.ini
自定义配置文件路径可以被参数 - config覆盖
对于YUM RPM 安装的方式, 配置文件在: /etc/grafana/grafana.ini
可以使用以下语法使用环境变量来覆盖配置文件中的所有选项:
GF__
其中SectionName是方括号内的文本。一切都应为大写,.应替换为_ 例如,给定以下配置设置:
# default section
instance_name = ${HOSTNAME}
[security]
admin_user = admin
[auth.google]
client_secret = 0ldS3cretKey
export GF_DEFAULT_INSTANCE_NAME=my-instance
export GF_SECURITY_ADMIN_USER=true # GF_ 固定 SECURITY 是SectionName ADMIN_USER 是配置的key 转大写 . 转 _
export GF_AUTH_GOOGLE_CLIENT_SECRET=newS3cretKey
Grafana支持使用Sqlite3 Postgresql Mysql这三种数据库作为其元数据的存储.
我们课程使用Mysql. 和zabbix的元数据mysql共用一个实例只需要配置如下内容即可:
并登陆mysql, 执行:
create database grafana CHARACTER SET utf8 COLLATE
utf8_general_ci;
创建Grafana使用的数据库作为元数据存储.
systemctl daemon-reload
systemctl start grafana-server
systemctl enable grafana-server
浏览器打开:http://node1:3000
默认账户密码:admin/admin