场景需求

  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