概述
zabbix server 运行脚本或者二进制文件来执行外部检测,外部检测不需要在被监控端运行任何 agentd
item key 语法如下:

参数 定义
script shell 脚本或者二进制文件名.
parameter(s) Optional command line parameters.

如果不想传递任何参数,如下:
script[] 或者 script
zabbix server 会再定义好的目录里面执行外部脚本(zabbix server 中的配置 extenalScripts),这个脚本将使用 zabbix
的运行用户身份运行。请注意权限以及只有指定目录中的命令才能够被执行。
zabbix 脚本使用标准方式输出(完整输出但是会删除末尾的空白) ,标准错误和退出代码将会被丢弃

PS:请不要过度使用那个外部检测,这会严重降低 zabbix 系统性能

下面写个简单脚本测试下:

[root@localhost zabbix]# ls
alertscripts externalscripts
[root@localhost zabbix]# cat externalscripts/mysql.sh
#!/bin/bash
export MYSQL_PWD=
mysql -uroot -h 192.168.1.107 -e "select account_locked from mysql.user where user='zabbix';"
[root@localhost zabbix]# chmod a+x externalscripts/mysql.sh
[root@localhost zabbix]# chown zabbix:zabbix externalscripts/mysql.sh
[root@localhost zabbix]# ll externalscripts/mysql.sh
-rwxr-xr-x zabbix zabbix Jun : externalscripts/mysql.sh
[root@localhost zabbix]# pwd
/usr/lib/zabbix
[root@localhost zabbix]#

然后创建item

检查能不能获取到数据:

上面例子可以继续优化 实际上脚本可能会给多个主机使用,不同主机的数据库连接信息也不一样,需要改成传参的方式:

加入位置参数:

[root@localhost zabbix]# ./externalscripts/mysql.sh 192.168.1.107 zabbix
N
[root@localhost zabbix]# cat ./externalscripts/mysql.sh
#!/bin/bash
host=$
user=$
mysql_pwd=$ export MYSQL_PWD=$
mysql -uroot -h $ -e "select account_locked from mysql.user where user=\"$2\";" | sed -n "2p"
[root@localhost zabbix]#

修改下item:

再配置下value maping

lastest data看下效果:

zabbix--External checks 外部命令检测的更多相关文章

  1. (13)zabbix External checks 外部命令检测

    1.  概述 zabbix server运行脚本或者二进制文件来执行外部检测,外部检测不需要在被监控端运行任何agentd item key语法如下: ARGUMENT DEFINITION scri ...

  2. (14)zabbix Simple checks基本检测

    1. 开始 Simple checks通常用来检查远程未安装代理或者客户端的服务 使用simple checks,被监控客户端无需安装zabbix agent客户端,zabbix server直接使用 ...

  3. Zabbix使用外部命令fping处理ICMP ping的请求

    Zabbix使用外部命令fping处理ICMP ping的请求,fping不包含在zabbix的发行版本中,需要额外去下载安装fping程序, 安装完毕之后需要在zabinx_server.conf中 ...

  4. shell的内建命令和外部命令

    shell的内建命令和外部命令 Shell执行的命令可以分为内建命令(built-in)和外部命令(external),前者是构建在shell内部:后者是一个独立的文件(可以是二进制文件,也可以是一个 ...

  5. 无法解析的外部符号 _WinMain@16 fatal error LNK1120: 1 个无法解析的外部命令

    一,问题描述MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 ...

  6. vue不是内部或外部命令解决验证方案

    一.前提 1.该教程是在你已经安装配置好node.js和express情况下 2.你已经完成了vue和vue-cli的全局安装 3.完成以上2步后,使用vue指令,会显示"vue不是内部或外 ...

  7. Linux 系统中的内部与外部命令

    linux中的命令大致可分为两类,内部命令和外部命令: 内部命令(builtin command):也称shell内嵌命令 外部命令(external command):存放在一个文件中,使用时需要去 ...

  8. 搞定'express' 不是内部或外部命令,也不是可运行的程序或批处理文件

    1 -- 官方下nodejs,一路next完成, node -v 没问题 可以检测到版本号,node环境ok~ 2-- 本地 安装express :npm install express  -g 检测 ...

  9. node.js安装后输入“node -v”提示'node' 不是内部或外部命令,也不是可运行的程序的解决方法

    换个电脑,重新搭配环境的时候遇到的问题.node.js已经在官网进行下载安装了,但是VScode里面显示不是内部的命令,也不是可运行的程序 但是在cmd控制台还是能查到的 借助网上的方法进行了测试和调 ...

随机推荐

  1. 控制 if 语句 while循环 break continue

    if 语句的语法: 1. if 条件 :   #引号是将条件与结果分开 代码块   # 四个空格,或者一个tab键,这个是告诉程序满足这个条件的 说明: 当条件成立的时候(True), 代码块会被执行 ...

  2. Rikka with Nickname (简单题)

    Rikka with Nickname  链接:https://www.nowcoder.com/acm/contest/148/J来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒空间限制:C/ ...

  3. 微服务-技术专区-监控专区(Skywalking与Pinpoint) - 监控对比分析

    由于公司目前有200多微服务,微服务之间的调用关系错综复杂,调用关系人工维护基本不可能实现,需要调研一套全链路追踪方案,初步调研之后选取了skywalking和pinpoint进行对比; 选取skyw ...

  4. 【问题解决方案】单个文件夹嵌套时github仓库中最外层文件夹直接显示所有嵌套文件夹名的问题

    上传文件的时候遇到这样一个问题: 这么看着好像有什么问题,直觉不应该这么显示吧 折腾半天,从github新建了嵌套文件夹并同步到本地,然后从本地push了文件,结果依然显示是这样 好吧,那这个问题应该 ...

  5. 图片查看器(类似于QQ,另外又加了JARA的下方的图片缩略导航图)

    源码地址:https://gitee.com/yolanda624/coffer/tree/master/src/components/a-photo-view

  6. sql查询静态数据

    select * from ( ,,,'高中')) AS Education ( EducationId,EducationName )

  7. 1、selenium 8大元素定位方式

    元素定位方式: id name css class_name tag_name partial_link link_text : driver. find_element_by_link_text(& ...

  8. elasticsearch 6.x 安装search guard

    前言 es之前版本一直无用户验证功能,不过官方有提供一x-pack,但是问题是付费.在es的6.3.2版本中,已经集成了x-pack,虽然es团队已经对x-pack开源,但是在该版本中如果需要使用到安 ...

  9. 阿里云安装Cloudera Manager(草稿)

    选择三台同一局域网的阿里云服务器 最初使用阿里云.京东云.百度云的三台不同的服务器,遇到一些问题,没有解决,公网速度也没有保障,还是选择同一局域网的服务器吧 CM有三种不同的安装方式: 通过 Clou ...

  10. 使用Ueditor点击上传图片时显示延迟的问题

    最近在做一个项目,需要用到Ueditor,但是在点击上传图片的时候,总是隔了4-5秒才显示文件框 查了一些资料,最后发现,只需在 修改:(1) dialog/images/image.js 把imag ...