安装完zabbix服务器之后 只有两个探索规则模版,挂载点探索和网卡探索

场景描述:想使用zabbix监控kvm虚拟机的网卡的流量情况,

获取虚拟机和网卡对应关系

虚拟机 S-1

virsh domiflist S-1 # 列出虚拟机的网卡 (vnet*)

virsh domifstat S-1 vnet0 # 列出虚拟机的网络流量

所以监控虚拟机的网卡流量情况,需要知道虚拟机的名和对应的网卡

首先建立探索脚本,来搜索虚拟机和网卡

vi /etc/zabbix/zabbix_agentd.d/virsh_running_discovery.sh

#!/bin/bash
virsh_running_discovery()
{ local tmpfile="/tmp/mounts.tmp"
echo > "$tmpfile"
local kvm_list=(`sudo virsh list | grep running |awk '{print $2}'`)
local num1=${#kvm_list[@]}
printf '{\n'
printf '\t"data":[ '
for i in ${kvm_list[@]}
do
((num1--))
local vnic_list=(`sudo virsh domiflist $i|sed '1,2d'|awk '{print $1}'|grep -v ^$`)
local num2=${#vnic_list[@]}
for s in ${vnic_list[@]}
do
printf '\n\t\t{'
printf "\"{#VS_NAME}\":\"${i}\","
printf "\"{#VS_NIC}\":\"${s}\"}"
((num2--))
[ "$num2" == 0 -a "$num1" == 0 ] && break
printf ","
done
done
printf '\n\t]\n'
printf '}\n'
}
case "$1" in
virsh_running_discovery)
"$1"
;;
*)
echo "Bad Parameter."
echo "Usage: $0 virsh_running_discovery"
exit 1
;;
esac

自定义key 

编辑配置文件vim /etc/zabbix/zabbix.agentd.d/kvm_list.conf

UserParameter=virsh.running.discovery,/bin/bash /etc/zabbix/zabbix_agentd.d/virsh_running_discovery.sh virsh_running_discovery

 测试

  zabbix_get -s 127.0.0.1 -k virsh.running.discovery

测试通过过 在zabbix界面添加探索规则,然后添加此规则的项目原型,使用{#VS_NAME}引用虚拟机名,{#VS_NIC} 引用网卡名

补充:

zabbix 调用到了virsh 命令 所以要配置sudo 才能让zabbix 调用virsh

vi /etc/sudoers

zabbix ALL=(ALL) NOPASSWD: /usr/bin/virsh # NOPASSWD 表示 sudo的时候不使用密码

将 Defaults requiretty 给注释,在centos fedora 下面 使用sudo  需要有个tty才可以 ,因为在脚本里面执行 所以要将这行注释

zabbix 自定义探索规则发现服务器上面的kvm虚拟机和对应的网卡的更多相关文章

  1. PHP网站在Linux服务器上面的安全配置

    本文详细总结了PHP网站在Linux服务器上面的安全配置,包含PHP安全.mysql数据库安全.web服务器安全.木马查杀和防范等,很好很强大很安全. PHP安全配置 1. 确保运行php的用户为一般 ...

  2. context.getResourceAsStream获取的是部署在服务器上面的文件位置 而不是我们本地的工程位置 意思是说获取的都是web下面的文件位置

    context.getResourceAsStream获取的是部署在服务器上面的文件位置 而不是我们本地的工程位置 意思是说获取的都是web下面的文件位置

  3. 如何在CentOS6.4系统上安装KVM虚拟机

    CentOS6.4系统上安装KVM虚拟机   备注:以下操作说明是经过实验验证后总结出来的笔录,有需要的朋友可以进行参考,以下是基于VMware12.5.2虚拟机版本上安装的实验环境. 一.安装KVM ...

  4. C# C/S WPF 远程操作服务器上面的文件

    作的时候用的是WPF,需要做一个上传附件的功能,服务器上有一个文件夹,附件都上传到里面,只知道URL路径. 文件夹是在服务器上的IIS里面(就比如说你发布一个网站,把文件夹建在网站下面,当然这个网站啥 ...

  5. SQL SERVER怎样将某个服务器上面的数据自动备份到另一台服务器上面(异地备份)

    一:试验背景 异地备份好处:(待补充) 1:异地备份了把原有服务器数据放在另外一个位置,避免些物理损害.  比把数据刻录光盘和原始数据放同房间了房间失火了备份数据也没有了要放另外地方避免了  就是备份 ...

  6. visualvm工具远程对linux服务器上的JVM虚拟机进行监控与调优

    文/朱季谦 最近在做了一些JVM监控与调优的事情,算是第一次实践,还比较陌生,故而先把这一次经验简单记下笔记,这样,对后面学习调优方面时,不至于又想不起来了.本文档主要总结在window本地环境远程对 ...

  7. ubuntu18.04上搭建KVM虚拟机环境超完整过程

    看标题这是篇纯运维的文章.在中小型企业中,一般很少配置专业的运维人员,都是由开发人员兼着.同时,对有志于技术管理的开发人员来说,多了解一些运维及整个软件生命周期的知识,是很有帮助的,因为带团队不仅仅是 ...

  8. 如何解决eclipse远程服务器上面的Rabbitmq连接超时问题?

    1.嗯,问题呢,就是一开始安装好RabbitMQ,练习了一下RabbitMQ的使用,但是呢,过了一段时间,我来复习的时候,发现运行出现下面的错误了.后来想想,是自己学习微服务的时候,修改了/etc/h ...

  9. zabbix磁盘的自动发现与磁盘指标监控

    由于最近项目上需要对服务器监控进行规范化监控,再磁盘这块有几种方式 1.如果每台设备的磁盘是一样的 比如都有vda,vdb两块磁盘那么可以采用 1.1 每台客户端写脚本,服务端每台设备去加上监控项(- ...

随机推荐

  1. Linux系统virtualbox + ubuntu + xshell 问题与注意事项

    序言:ubuntu闭源软件太多,一般不推荐使用:没钱可以使用centos.debian:有钱使用redhat 目前主流和常用的Linux版本主要有:1.Redhat 版本5.5和6.0最新:培训.学习 ...

  2. python excel操作

    python操作excel表格(xlrd/xlwt)转载:http://www.cnblogs.com/zhoujie/p/python18.html   最近遇到一个情景,就是定期生成并发送服务器使 ...

  3. Android之菜单总结

    在Android中,菜单被分为如下三种,选项菜单(OptionsMenu).上下文菜单(ContextMenu)和子菜单(SubMenu). 1. 选项菜单(OptionsMenu)详解 Activi ...

  4. Object-C 1.0 第二章

    1.  输出obc #import <Foundation/Foundation.h> int main(int argc,const char *argv[]) { NSLog(@&qu ...

  5. windows下调试virtualbox的虚拟机串口

    1.我不知道其他人是怎么实现的,我是这么实现的. 2.下载一个叫做VSPD的软件,其作用是在windosw上虚拟几个串口出来. 下载完了安装,安装完了注册,如果不是花钱买来的,那就自己想办法注册吧.我 ...

  6. js的三种继承方式及其优缺点

    [转] 第一种,prototype的方式: //父类 function person(){ this.hair = 'black'; this.eye = 'black'; this.skin = ' ...

  7. java 将一张图片拷贝到另外一个地方。(IO流)

    package com.beiwo.inputstream; import java.io.FileInputStream; import java.io.FileOutputStream; impo ...

  8. ScrollTo:平滑滚动到页面指定位置

    使用方法 1.准备jQuery库和scrollTo.js插件. <script type="text/javascript" src="js/jquery.js&q ...

  9. mysql 定时任务

    mysql 5.1以上支持定时任务. SHOW VARIABLES LIKE 'event_scheduler';   检查是否已开启该功能 开启计划任务功能: SET GLOBAL event_sc ...

  10. 使用mutt+msmtp在Linux命令行界面下发邮件(续)

    一年前写过一篇<使用mutt+msmtp在Linux命令行界面下发邮件>,但是最近想照着文中的办法解决新的问题时发现又有新的疑惑了,所以就有了今天这篇“续集”. 首先说说msmtp.如果你 ...