zabbix_manager 是 zabbix 终端管理工具,可以在 linux 终端实现管理 zabbix,基于api方式。

项目地址:https://github.com/meetbill/zabbix_manager/wiki/introduction

使用该工具 可以做到生成监控报表。详细的说明见项目wiki。

一、安装

 git 下载

#git clone https://github.com/BillWang139967/zabbix_manager.git
#cd zabbix_manager
#sh start.sh

常见问题 git clone 失败

[root@localhost ~]# git clone https://github.com/BillWang139967/zabbix_manager.git
Initialized empty Git repository in /root/zabbix_manager/.git/
error:  while accessing https://github.com/BillWang139967/Vim.git/info/refs
fatal: HTTP request failed

解决方法

#git config --global http.sslVerify false

二 配置

配置文件位置

  • /etc/zabbix_tool/zabbix_config.ini(连接 zabbix server 服务配置)

  • /etc/zabbix_tool/zabbix_setting.ini(额外配置)

配置文件:/etc/zabbix_tool/zabbix_config.ini

注意,配置时将配置配置在 [zabbixserver] 字段下

[zabbixserver]---------------------- 默认连接(可通过 --profile 选择连接的 zabbix)
server = 127.0.0.1------------------zabbix server IP
port = 80---------------------------zabbix web 端口
user = admin------------------------zabbix web 管理员账号
password = zabbix-------------------zabbix web 管理员密码

################################# 
# zabbix_api 可以进行管理多台 zabbix server 只需要在配置文件中增加如下配置即可,加入要对 [bendi] 的机器进行管理,在命令行后跟 --profile bendi 即可
#[bendi]
#server = 192.168.199.128
#port = 80
#user = admin
#password = zabbix
#################################

额外配置

搭建 zabbix server 时使用的lnmp(即前端使用的 nginx 时则不需要进行以下操作),前端使用的apache时需要进行操作

配置文件:/etc/zabbix_tool/zabbix_setting.ini

修改如下

apache=True

image.png

测试

zabbix_api hostgroup_get --table

image.png


三、使用

运行帮助

直接执行 zabbix_api 输出帮助信息

zabbix_api

输出 zabbix_api 成员函数信息以及选项

image.png


Hostgroup管理

table选型使得输出以列表输出,默认以text输出

zabbix_api hostgroup_get --table


Host管理-主机列表

zabbix_api host_get --table

image.png


获取机器列表

使用方法

--hostgroupid 可以使用主机组名,也可以使用主机组ID

#zabbix_api host_list  --hostgroupid "HONGLOU"  --table
#zabbix_api host_list  --hostgroupid 17  --table

image.png


item 查询

item_get ,获取host的所有的item 列表

zabbix_api item_get host_id
eg:zabbix_api item_get 10263

image.png

item_list,获取某台主机特定的application的item

zabbix_api item_list 10263 "CPU"

image.png


生成指定报表

通过--hostgroupid ,--hostid选择特定主机

zabbix_api --report "Memory utilization" "2018-11-01 00:00:00" "2018-12-01 00:00:00" --table --hostgroup 17 --xls /tmp/ceshi1.xls
# --report 报表
#--table 显示在终端
#--hostgroup 指定主机组
#--xls    保存xls格式表格

image.png

生成的报表

image.png


四、使用心得

此工具可以方便对linux主机进行配置,报表生成,对网络设备的支持报表生成也可以,但是比较麻烦。

1、网络设备的监控模板都是不一样的,无法按照统一的监控项格式导出报表

2、生成报表不能获取多个监控项


思考:

1、修改监控项名称,尽量统一,获取统一的监控数值

2、使用定时工具或者zabbix-menu自动定时生成报表

3、进行二次开发,对生成的报表进行再加工


没事请大神喝茶

image.png