如何在zabbix执行远程主机的脚本或指令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在zabbix执行远程主机的脚本或指令相关的知识,希望对你有一定的参考价值。

场景需求
  1. 我们可以通过zabbix_server的web界面的脚本功能实现对已经安装了zabbix_agent主机实现远程关机而不用手动登陆然后输入关机指令

  2. 我们可以通过zabbix_server的web界面的脚本功能实现某个服务的启动关闭和重启

实验配置过程

  1. 创建脚本

打开zabbix_server的web配置界面,选择管理,接着选择蓝色导航条中的脚本选项,最后点击创建脚本。

技术图片

脚本名称:自定义

类型:如果是window或者linux主机类型都是选择脚本。IPMI类型(暂且不讨论)

执行在:有三种类型,
(1)zabbix客户端,说明创建的脚本会在安装了zabbix客户端的主机上运行。
(2) zabbix_server(代理),说明脚本会在zabbix代理上执行。
(3)zabbix服务器,说明脚本会在服务器上面执行。

命令:可以填系统命令,或者某个脚本的绝对路径

要求的主机权限:选择默认就好了

技术图片

创建一个显示主机ip的脚本

技术图片

重要:脚本创建完成后,必须到zabbix_agent的配置文件中开启允许zabbix客户端执行远程命令
技术图片

把默认的EnableRemoteCommands=0改成EnableRemoteCommands=1

重启zabbix客户端,使配置生效

脚本创建完成后,我们去到zabbix_server的web界面中的监测,然后找到蓝色导航条中的最新数据,找一台已经已经安装了zabbix客户端的window主机执行。因为ifconfig是linux主机的系统命令,所以测试只能找安装了zabbix客户端的linux主机测试。
技术图片

然后在主机列中,鼠标左键一下主机名,就会出现一些我们自定义和内置的脚本。显示IP的脚本就是我们刚才创建的。

技术图片

执行结果
技术图片

正常的显示出安装了zabbix客户端的linux主机的ip

以上是关于如何在zabbix执行远程主机的脚本或指令的主要内容,如果未能解决你的问题,请参考以下文章

学习四个小案例,让 Zabbix 应用技能更上层楼 | 运维进阶

Zabbix监控

Zabbix结合bat脚本与计划任务开启window远程桌面

要在一台主机上执行shell脚本判断另一台上的某个文件是不是存在,这个shell语句该怎么写?

Zabbix设置触发器调用远程主机脚本实现触发告警后自动启动自愈功能

linux下如何使用ssh远程登录主机 执行shell脚本?