可视化工具Grafana部署

随着业务的愈加复杂,对软件系统的要求愈来愈高,这意味着咱们须要随时掌控系统的运行状况。所以,对系统的实时监控以及可视化展现,就成了基础架构的必须能力。web

Grafana官方网站json

https://grafana.com/

Grafana介绍

Grafana是一个跨平台的开源的度量分析和可视化工具,能够经过将采集的数据查询而后可视化的展现,并及时通知。它主要有如下六大特色:
一、展现方式:快速灵活的客户端图表,面板插件有许多不一样方式的可视化指标和日志,官方库中具备丰富的仪表盘插件,好比热图、折线图、图表等多种展现方式;
二、数据源:zabbix,Graphite,InfluxDB,OpenTSDB,Elasticsearch,CloudWatch和KairosDB等;
三、通知提醒:以可视方式定义最重要指标的警报规则,Grafana将不断计算并发送通知,在数据达到阈值时经过Slack、PagerDuty等得到通知;
四、混合展现:在同一图表中混合使用不一样的数据源,能够基于每一个查询指定数据源,甚至自定义数据源;
五、注释:使用来自不一样数据源的丰富事件注释图表,将鼠标悬停在事件上会显示完整的事件元数据和标记;
六、过滤器:Ad-hoc过滤器容许动态建立新的键/值过滤器,这些过滤器会自动应用于使用该数据源的全部查询。
后端

下载安装

本文此次介绍 zabbix与 Grafana结合使用
首先 先安装好zabbix 配置完成后开始安装Grafanacentos

zabbix官网
https://www.zabbix.com/
Grafana官网
https://grafana.com/

zabbix安装此次再也不赘述   没安装的能够看我以前的博客
api

获取Grafana

访问Grafana下载页面https://grafana.com/grafana/download在这里可获取该软件的全版本。
能够按照使用需求,进行下载相应版本。
浏览器

安装Grafana

系统环境说明服务器

[root@centos /root]
#cat  /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 

[root@centos /root]
#uname -r 
3.10.0-862.el7.x86_64

[root@centos /root]
#systemctl  status firewalld.service 
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

[root@centos /root]
#sestatus 
SELinux status:                 disabled

安装Grafana架构

在此次安装中,咱们使用的是grafana-5.2.4版本。不一样版本之间功能存在着必定的差距。
[root@centos /root]
#wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.2.4-1.x86_64.rpm
[root@centos /root]
#yum install initscripts fontconfig  #安装依赖
grafana-5.2.4-1.x86_64.rpm
[root@centos /root]
#yum localinstall grafana-5.2.4-1.x86_64.rpm

启动Grafana并发

[root@centos /root]
#systemctl  start grafana-server.service
[root@centos /root]
#systemctl enable grafana-server.service

检查监听端口
Grafana默认监听端口为3000,能够经过修改配置文件(/etc/grafana/grafana.ini)对其作定制化配置。app

[root@centos /root]
#netstat  -lntup |grep grafana
tcp6       0      0 :::3000                 :::*                    LISTEN      1333/grafana-server

Grafana的使用

访问界面

经过流量器访问 http://ip:3000 便可访问grafana页面,初始用户名与密码均为admin,可在登录是修改默认密码。
image.png
登录成功以后能够先进行建立第一个数据源,以及第一个展现面板。
image.png

Grafana For Zabbix

使用Zabbix收集数据,Grafana展现图形。Grafana默认没有zabbix做为数据源,须要给zabbix安装一个插件,而后再添加进Grafana便可。
注:本次使用zabbix版本为3.4.14。

[root@centos /root]
#zabbix_server -V
zabbix_server (Zabbix) 3.4.14

获取zabbix 插件

经过grafana-cli plugins list-remote命令 能够获取到grafana的插件列表。

[root@centos /root]
#grafana-cli plugins list-remote  |grep  zabbix
id: alexanderzobnin-zabbix-app version: 3.9.1

安装插件

[root@centos /root]
#grafana-cli plugins install alexanderzobnin-zabbix-app
installing alexanderzobnin-zabbix-app @ 3.9.1
from url: https://grafana.com/api/plugins/alexanderzobnin-zabbix-app/versions/3.9.1/download
into: /var/lib/grafana/plugins

✔ Installed alexanderzobnin-zabbix-app successfully 
Restart grafana after installing plugins . <service grafana-server restart>
出现√即为安装成功。在安装完成后务必重启Grafana
[root@centos /root]
#systemctl  restart grafana-server.service

配置zabbix源

登录grafana页面,开启zabbix插件。
点击enable开启插件。
image.png
添加zabbix数据源
image.png
相关配置项目说明:

配置项目 说明
Name 给数据源起一个名字。
Default 选择默认,意味着数据源将预先选定为新的面板。
Type 选择数据源的类型。
Url 这里的Url是http协议,地址和端口是zabbix-web提供的接口。或为zabbix的api地址。
Access 访问代理,这里选择了proxy表示Grfana经过后端访问,还有direct值表示从浏览器直接访问目录。
Username 输入zabbix的用户名,须要进行认证,通常使用管理员。
Password 输入zabbix用户的密码。

代理(proxy)访问意味着的Grafana后端将从浏览器代理全部请求,并将它们发送到数据源。这样是有用的,由于它能够消除CORS(交叉来源站点资源)的问题,如消除须要传播到数据源到浏览器的身份验证详细信息。但还支持直接(direct)访问,由于在某些状况下可能用来访问直接根据用例和拓扑结构的Grafana、 用户和数据源的数据源。
以上信息都填写完成以后点击Save & Test,出现Success就表示成功了,就能够去利用zabbix中数据添加图形了。

下面先引入zabbix自带的dashboard,点击import。
image.png
查看zabbix dashboard页面
image.png
 使用grafana的好处是对图形的自定义更加简便,经过变动不一样的json文件,便可在数据源中查找到想要的结果,而后绘制出图。

Grafana相关补充

Grafana插件安装目录

在Linux系统上,grafana-cli会假定grafana插件目录是/var/lib/grafana/plugins。经过指定-pluginsDir标志能够覆盖grafana-cli将要运行的目录。在Windows系统中,必须为每一个呼叫指定此参数

Grafana-cli命令说明

安装插件最简单的方法是使用与grafana捆绑在一块儿的CLI工具grafana-cli。在修改插件以后发生任何修改以前,grafana服务器须要从新启动。

列出可用的插件
#grafana-cli plugins list-remote

安装最新版本的插件
#grafana-cli plugins install <plugin-id>

安装特定版本的插件
#grafana-cli plugins install <plugin-id> <version>

列出安装的插件
#grafana-cli plugins ls

更新全部安装的插件
#grafana-cli plugins update-all

更新一个插件
#grafana-cli plugins update <plugin-id>

删除一个插件
#grafana-cli plugins remove <plugin-id>
相关文章
相关标签/搜索