使用granfana调用zabbix-api实现监控

 

 

 

 

 

 

1.概述php

  Grafana是一个开源指标分析和可视化套件,它最经常使用于可视化基础设施性能数据和应用程序分析的时间系列数据。html

Grafana也应用于其余领域,包括工业传感器,家庭自动化,天气和控制过程。前端

  固然做为IT工程师来说,无非最关注的是如何把数据聚合后进行展现,例如:服务器性能数据,应用程序数据分析,mysql

elasticsearch,大数据分析数据等,那此时选择Grafana就是一个极好的选择,由于它支持多种数据来源,咱们使用开源监控系统zabbix,可是后来发现,若是要把监控数据和日志分析系通通一进行展现和分析时,git

就须要开发一套系统对接,如今有了grafana事后变得至关EASY。github

 

2.安装web

  

  grafana支持在多种环境下安装,包括windows、centos、ubuntu、mac、docker等环境。我将grafana安装在centos环境下。下面是安装方法。sql

 支持如下安装方式docker

 

1.在线下载grafana数据库

2.yum 远程安装稳定版本

yum install https://grafanarel.s3.amazonaws.com/builds/grafana-4.1.2-1486989747.x86_64.rpm

3.使用yum仓库方式

保存如下信息到/etc/yum.repos.d/grafana.repo

 

[grafana] 

name=grafana baseurl=https://packagecloud.io/grafana/stable/el/6/$basearch repo_gpgcheck=1 

enabled=1

gpgcheck=1

gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana sslverify=1 

sslcacert=/etc/pki/tls/certs/ca-bundle.crt

 

使用yum install grafana -y

 

安装包的基本细节

二进制文件安装到 /usr/sbin/grafana-server

启动脚本复制到 /etc/init.d/grafana-server

环境变量文件 /etc/sysconfig/grafana-server

配置文件 /etc/grafana/grafana.ini

systemd服务名 grafana-server.service

默认日志文件 /var/log/grafana/grafana.log

默认数据库文件 /var/lib/grafana/grafana.db

启动服务 

centos 6: 

/etc/init.d/grafana-server start

 

centos 7:

systemctl enable grafana-server systemctl start grafana-server

 

3.基础介绍 

登陆:http://x.x.x.x:3000 grafana默认启动端口为3000,能够在配置文件的[server]配置中修改grafana的相关配置信息

默认用户名和密码: admin admin

4.配置文件

 

grafana默认配置文件/etc/grafana/grafana.ini,那下面咱们就来看一下grafana的基础配置。

如下配置文件中,“;”注释的配置项表示默认值,若是须要修改请把“;”去除修改配置便可。

如下为主要配置文件:

##################### Grafana Configuration Example #####################

# Everything has defaults so you only need to uncomment things you want to 

# change

 

# possible values : production, development 

; app_mode = production

 

#实例名称,如要HOSTNAME 变量为空,默认就为主机名 

; instance_name = ${HOSTNAME}

 

 

 

#################################### Paths #########################

[paths]

# 默认数据存储目录如,db,session等

#

;data = /var/lib/grafana

#

#日志存储目录 

#

;logs = /var/log/grafana

#

#插件安装目录,Grafana会自动扫描并查找插件 

;plugins = /var/lib/grafana/plugins

 

 

 

[server] 

协议 (http or https)

;protocol = http

 

# 绑定的IP地址,为空将在全部接口上绑定

;http_addr =

 

# 默认端口 

;http_port = 3000

 

# 对外的域名 

;domain = localhost

 

# 若是主机头与域不匹配,则重定向到正确的域 

#防止DNS从新绑定攻击

;enforce_domain = false

 

# 在浏览器中使用的彻底公开的网址,用于重定向和电子邮件

# 若是使用反向代理和子路径指定完整url(带子路径) 

;root_url = http://localhost:3000

 

# web 请求日志 

;router_logging = false

 

 

#相对路径

;static_root_path = public

 

# gzip压缩

;enable_gzip = false

 

# https证书

;cert_file =

;cert_key =

 

#################################### Database #############

[database]

# 默认数据库配置 

# as seperate properties or as on string using the url propertie.

 

# Either "mysql", "postgres" or "sqlite3", it's your choice ;type = sqlite3 

;host = 127.0.0.1:3306

;name = grafana

;user = root

# If the password contains # or ; you have to wrap it with trippel quotes. Ex """#password;""" 

;password =

 

# 使用URL或之前的字段来配置数据库

# Example: mysql://user:secret@host:port/database

;url =

 

# For "postgres" only, either "disable", "require" or "verify-full"

;ssl_mode = disable

 

# 仅适用于sqlite3数据库。将存储数据库的文件路径

;path = grafana.db

 

#################################### Security ############

[security]

# 系统默认用户为admin,在启动时建立 

;admin_user = admin

 

# 默认admin密码,能够在第一次启动grafana以前更改,或在配置文件中设置

;admin_password = admin

 

# used for signing

;secret_key = SW2YcwTIb9zpOOhoPsMm

 

# 自动登陆记住天数

;login_remember_days = 7

;cookie_username = grafana_user

;cookie_remember_name = grafana_remember

 

# 禁用用户头像 

;disable_gravatar = false

 

 

# 数据源代理白名单(ip_or_domain:端口以空格分隔)

;data_source_proxy_whitelist =

 

#################################### Users ########

[users]

# 禁用用户注册

allow_sign_up = false

 

# 容许非管理员建立组织 

;allow_org_create = true

 

# 若是为true,将自动将新用户分配到 (id为1)的组织 

;auto_assign_org = true

 

# 新用户默认角色

;auto_assign_org_role = Viewer

 

# 登陆页面的html字段说明

;login_hint = email or username

 

# 默认UI主题 ("dark" or "light")

;default_theme = dark

 

[auth]

# 可禁用登陆表单,若是使用OAuth登陆时很是有用

;disable_login_form = false

 

#################################### SMTP / Emailing ############

[smtp] ;enabled = false 

;host = localhost:25 ;user =

;password = ;cert_file = ;key_file = ;skip_verify = false

;from_address = admin@grafana.localhost 

 

[emails]

;welcome_email_on_sign_up = false 

#################################### Alerting ################## 

[alerting]

# Makes it possible to turn off alert rule execution. ;execute_alerts = true

 

5.数据源

  Grafana支持以时间序列存储数据的相关数据源,每一个数据源都有一个特定的查询编辑器,该编辑器针对特定数据源公开的功能进行自定义。

当前grafana支持如下数据源:Graphite、InfluxDB、OpenTSDB、Promethenus、Elasticsearch、CloudWatch。每一个数据源的查询语言和功能是不一样的,

Grafana能够将不一样尖的数据合并到单个Dashboard中。但每一个面板都要与属于特定组织的数据源相关联。换句话说就是每一个panel只能使用属于当前组织的数据源。

 

因为我这里使用的是zabbix做为数据源,因此暂且不介绍其余的数据源

 

安装Grafana-Zabbix

cd /var/lib/grafana/plugins

git clone https://github.com/alexanderzobnin/grafana-zabbix-app

而后从新启动grafana服务器。使用这种方式,您能够轻松升级插件

cd /var/lib/grafana/plugins/grafana-zabbix-app git pull service grafana-server restart

 zabbix图形要显示在前端用granfa 调用zabbix 接口

 

打开Grafana界面 3000端口,更新Zabbix插件

 

 

添加zabbix数据源

 按以下配置
    【注意1】Zabbix的API地址为“http://172.30.1.208/zabbix/api_jsonrpc.PHP”,其中IP的安装zabbix-server的服务器IP
    【注意2】Zabbix的API帐号密码就是Zabbix的Web端登陆帐号和密码,帐号:admin, 密码zabbix

 

 

查看数据源,Zabbix已经添加成功

 

 

查看Zabbix中的数据

 

 

 

 zabbix server主机信息

 

查看Zabbix中监控的主机

 

 自行配制监控的详情

 

 

 修改数据刷新时间

 

 而后在这里在修改成1s便可

 

查看

 

想要添加grafana中默认没有的,可是zabbix中自定义好的监控项图形(这里/home使用空间这块是我刚加的,下面展现下怎么去添加)

点击+ADD ROW

 

 

 

相关文章
相关标签/搜索