一、简介

1、Zabbix查看图形的方法

  • 需要创建Graph
  • 直接在Latest Data搜索,然后自己组合查看
  • Zabbix图形需要创建,Zabbix图形组合比较麻烦

2、Grafana简介

  • Grafana自身并不存储数据,数据从其它地方获取。需要配置数据源
  • Grafana支持从Zabbix中获取数据
  • Grafana优化了图形的展现,可以用来做监控大屏
  • Grafana支持用户的认证,运维安全

3、本文环境
Zabbix Server: 10.0.0.104
Grafana: 10.0.0.102

二、Grafana安装及介绍

1、下载安装及启动

下载地址 http://docs.grafana.org/installation/rpm/

wget 'https://dl.grafana.com/oss/release/grafana-6.3.6-1.x86_64.rpm'
yum -y localinstall grafana-6.3.6-1.x86_64.rpm
systemctl enable grafana-server
systemctl start grafana-server

配置文件默认在 /etc/grafana/grafana.ini

2、查看进程、监听端口、日志

ps -ef | grep grafana
netstat -tlunp | grep grafana
tail -f /var/log/grafana/grafana.log

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_服务器

3、访问3000端口,10.0.0.102:3000,默认用户名密码都是admin,需要修改密码

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_02

4、Grafana的使用

  • 需要先创建dashboard,然后再创建图形
  • 每次操作都需要save保存,类似代码写完提交到代码管理服务器一样
  • 支持Influxdb等
  • 默认不支持去Zabbix读取数据,需要安装插件

5、Grafana安装Zabbix插件

插件安装有时候比较慢,可以下载离线的zabbix插件,放到/var/lib/grafana/plugins,解压

grafana-cli plugins list-remote
grafana-cli plugins list-remote|grep -i zabbix
grafana-cli plugins install alexanderzobnin-zabbix-app

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_03

安装后重启

systemctl restart grafana-server

三、Grafana使用zabbix数据源配置图表

1、创建一个dashboard仪表盘

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_服务器_04


设置名称然后点击右上保存,这样就新建了一个dashboard了,每次操作完都需要save

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_05

2、Grafana开启Zabbix插件:plugins -> apps -> zabbix -> enable

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_服务器_06


grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_07


grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_08


3、grafana配置zabbix数据源,如果grafana是6.0版本的,可能会出现404的错误,所以我安装的6.3.6的。

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_09

Name:自定义一个名称
Type: 下拉框中选择zabbix   #如果没有安装zabbix插件,此处则没有zabbix选项
URL:http://zabbix-serverIP/zabbix/api_jsonrpc.php   #zabbixAPI接口地址
Access: 默认Server(Default),表示grafana直接到Server取数据,brower表示让每个客户端单独获取,一般不用。
Username:填写你zabbix的用户名
Password: 填写你zabbix用户名的密码
Trends:勾选

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_10


然后保存

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_11


4、在前面创建的仪表盘上创建图形

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_12

第一页的query配置中可以配置数据源相关信息

选择www_001这台链接了zabbix linux模板的机器,item使用/load/,//表示正则匹配

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_13


第二页的Visualization的中可以调整图表显示的情况,单位等等,可以自己点一点测试一下,这里就不说了

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_14


第三页General中可以配置图表的名称和描述,我这边配置的名称为cpu load

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_15


第四页alert中配置告警,这里没用到先不说了

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_16


5、保存后查看图表,能读取到数据

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_17

6、同样的创建一下cpu time和ens33网卡的监控图表

cputime item为/CPU.*time/ 单位为百分比%

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_18

traffic ens33 item为/ens33/ 单位为bps

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_19

最后

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_20


7、监控系统启动时间,单一状态

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_21


grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_服务器_22


8、grafana添加zabbix告警配置数据库为zabbix的

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据_23


图表类型选zabbix problem

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_24


我这感觉又是版本的问题,提示没装插件。。先这样吧。。

四、使用Grafana变量展现Zabbix数据

1、介绍

Grafana展现Zabbix数据

  • 单台服务器的流量比较好展现,但多台服务器的流量得手动创建图形,比较麻烦
  • Grafana的变量功能让我们可以选择展现哪台服务器的流量

Grafana变量的使用

  • 主机组变量: group: *
  • 主机变量: host: $group.*

Grafana变量的使用

  • 流量图中使用模板,可以随意观察某台主机的流量
  • CPU利用率使用模板,可以随意观察某台主机的CPU利用率

2、为当前的dashboard面板设置变量

(当前面板–>设置–>variables–>add variables)

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_25

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_服务器_26


配置页面

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_服务器_27


配置说明 参考Grafana变量介绍

  • General (常用)
1、Name(定义变量名称)。
2、Label(标签),在仪表盘上显示标签的名字。
3、Hide(隐藏),用于隐藏label(标签)或者暂时不用variable(变量)。
4、Type(变量的类型)又包括如下几种选项:

Interval(间隔),此变量可以表示查询的时间跨度,这样在查询的SQL中不用硬件编码时间间隔,而是使用interval变量来定义时间间隔。
Query(查询),此变量用于编写数据源查询,与Query Options中的设置配合使用,通常返回度量名称,标签值等。例如,返回主机或主机组的名称。
Datasource(数据源),次变量 用于指定数据源,例如有多个zabbix源时,就可以使用此类变量,方便在Dashboard中交互切换数据源,快速显示不同数据源中的数据。
Custom(自定义),用户自定义设置的变量。
Constant(常量),定义可以隐藏的常量。对于要共享的仪表盘中包括路径或者前缀很有用。在仪表盘导入过程中。常量变量将成为导入时的选项。
Ad hoc filters(Ad hoc过滤器),这是一种非常特殊的变量、目前只适用于某些数据源、如InfluxDB、Prometheus、Elasticsearch。使用指定数据源时将自动添加所有度量查询出的键/值。
Text Box(文本框),次变量用于提供一个可以自由输入的文本框。
  • Query Options (查询选项)。
Data source(可以指定数据源)。
Refresh(刷新方式),即何时Dashboard中的数据会呗刷新,方式有:
Never(从不)。
On Dashboard load(仪表盘加载时)。
On time range changed(时间范围发生变化),通常会选择 On Dashboard Load。
Regex(正则),使用正则表达式类匹配对应的值;
Sort(排序)
Disanled禁用,
Alphabetical(asc)按字母升序。
Alphabetical(desc)按字母降序。
Numerical(asc)按数字升序。
Numerical(desc)按数字降序。
Alphabetical(casc-insensitive,asc)按字母不区分大小写升序。
Alphabetical(casc-insensitive,desc)按字母不区分大小写降序。
  • Selection Options(选择项)
Multi-value允许多选,即在Dashboard中可以同时勾选多个。
Include All option 允许选择All(所有),即在Dashboard中可以有一个All的选项,允许勾选。
  • Value groups/tags (Experimental feature),Grafana还处在验证性的特征。

我这里选了zabbix数据源后没出现Query字段,很奇怪,难道又是版本问题。。烦。以后解决了再补充吧

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_28

五、直接使用grafana自带的zabbix的模板

在数据源里可以直接import

grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_数据源_29


grafana中怎么结合zabbix的监控数据展示在table里面 grafana配置zabbix告警图形_服务器_30