zoukankan      html  css  js  c++  java
  • Zabbix+Grafana打造全方位立体化监控系统

    前言简介:

    Grafana是一个开源的指标量检测和可视化工具。常用于展示基础设施的实时数据和应用程序运行分析;是一个通用的可视化工具,不仅仅用于展示zabbix下的监控数据,也同样适用于一些其他数据可视化的需求;首选需要搞清楚两个概念:

    1、数据源(datasource)

    数据存储源,主要定义了将用什么方式查询数据展示在grafana上面,不同的datasource拥有不同的查询语法;官方支持数据源最常见的有:zabbix,prometheus,Elasticsearch,Open TSDB等等;每个数据源的查询语言和能力各不相同,可以将来自多个数据源整合到一个仪表盘中,但是每个面板都绑定在属于特定组织的特定数据源

    2、仪表盘(Dashboard)

    通过数据源定义好可视化的数据源之后,对于用户而言最重要的事情就是实现数据的可视化,在Grafana中,通过dashboard来组织和管理我们的数据可视化图表

    在dashboard中一个最基本的可视化单位为一个panel(面板),panel通过如趋势图,热力图形式展示可视化数据,并在dashboard中每个panel是一个完全独立的数据源以及数据查询方式;

    【Grafana部署配置】

    wget -c https://dl.grafana.com/oss/release/grafana-6.2.0-1.x86_64.rpm

    yum localinstall -y grafana-6.2.0-1.x86_64.rpm

    [root@Grafana-109102 ~]# systemctl enable grafana-server

    [root@Grafana-109102 ~]# systemctl start grafana-server

    [root@Grafana-109102 ~]# grafana-cli plugins list-remote|grep zabbix
    id: alexanderzobnin-zabbix-app version: 3.10.5
    [root@Grafana-109102 ~]# grafana-cli plugins install alexanderzobnin-zabbix-app version: 3.10.5

    [root@Grafana-109102 ~]# grafana-cli plugins install alexanderzobnin-zabbix-app
    installing alexanderzobnin-zabbix-app @ 3.10.5
    from url: https://grafana.com/api/plugins/alexanderzobnin-zabbix-app/versions/3.10.5/download
    into: /var/lib/grafana/plugins
    
    ✔ Installed alexanderzobnin-zabbix-app successfully
    
    Restart grafana after installing plugins . <service grafana-server restart>

    [root@Grafana-109102 ~]# grafana-cli plugins install grafana-clock-panel
    installing grafana-clock-panel @ 1.0.3
    from url: https://grafana.com/api/plugins/grafana-clock-panel/versions/1.0.3/download
    into: /var/lib/grafana/plugins

    ^@✔ Installed grafana-clock-panel successfully

    Restart grafana after installing plugins . <service grafana-server restart>

    [root@Grafana-109102 ~]# systemctl restart grafana-server

    【配置Zabbix数据源】

    1.因为刚部署的Grafana,默认是没有任何数据源的,此时我们直接点击”Add data source“即可,然后Plugins标签,并启用这个zabbix插件;

     

      

     2.在左侧点击组态,找到plugins插件的zabbix数据源,点进去便可以设置了

    配置解析:

    #URL地址需要填写zabbix server的API地址,这个地方需要注意一下,前面的可以修改成自己zabbix的IP或者域名,后面的uri要根据自己的web发布目录级别来指定,我这里是http://192.168.109.103/api_jsonrpc.php
    #Zabbix API details的配置其实就是zabbix web界面登录的用户和密码,默认是Admin/zabbix

    配置完毕之后,一定要点击最下角的“Save&Test”保存之后,继续选择左边的Dashboards数据源,默认有线程的数据源模板,直接引用即可,如下图所示:

    最后找到左上角的home,找到模板名称即可发现已经收集到关于zabbix监控可视化数据了。 

     

     【自定义Dashboad】

    除了zabbix插件自带的Dashboard之外,我们自己还可以自定义Dshboard

     找到右上角旁边的“Dashboard settings”添加模板

     

    修改面板名称为”测试-zabbix“

     添加面板变量 

    点击左侧的”Variables“,然后在选择”Add variable“定义变量;

     

     

    参数详解

    Grnralbu上部分

    Name:变量的名字,表示为group组意思,后续需要用$group来调用
    Type:变量的类型,这里选择Query表示一个查询语句,type也可以是datasource,表示该变量是整个数据源,另外变量类型还是可以时间间隔lnterval等;
    Label:是对应下拉框的名称,默认修改主机组,分别为空,label(不显示下拉框的名字),variable(表示隐藏该变量);

     Query Options

    Data source:数据源
    Refresh:表示何时更新变量值,首先变量的值市通过查询数据源而获取到的,数据源本身也会发生变化,因此需要经常更新变量的值,这样才能保证数据源的改变会在变量对应的下拉框中显示出来;Refresh默认三个值可选择:
    1、Never(永不更新);
    2、On Dashboard Load(在一定dash board加载时更新);
    3、On Time Range Change(在一个时间范围内更新)
    Query:查询表达式,不同的数据源查询表达式也会不同,这里由于是要查询zabbix的groups信息,表达式为
    "*" 代表查询组内所有 Regex:正则表达式,主要用来将抓取到的数据进行过滤,这里选择默认不过滤 sort:排序,对下拉框中的变量值进行排序,默认选择disable,表示查询结果是怎样下拉框就怎样显示;

     

     Selection Options

    Multi-value:启用这个功能,变量的值可以选择多个,具体表现在对应的下拉框可以选多个值组合
    lnclude All option:启用这个功能,变量下拉框中就多了all选项

     #创建host变量

     #创建netif变量

     #添加CPU查询面板

     

     #添加网卡监控流量面板

    最终效果如下所示

     

     END!

  • 相关阅读:
    男子胃脘胀痛案(知老)
    转 Django中的Form
    转 Alert.log shows No Standby Redo Logfiles Of Size 153600 Blocks Available
    转发 django 初探
    转 Logs are not shipped to the physical standby database
    python 之django (一) Windows环境下Django 1.6.11开发环境搭建(简易版)
    oracle db 产品路线图
    转 python中%s与%d
    转 python 的常用函数replace, split(),enumerate() 函数
    转 [Error]EOL while scanning string literal
  • 原文地址:https://www.cnblogs.com/bixiaoyu/p/12494751.html
Copyright © 2011-2022 走看看