设为首页 收藏本站
查看: 3126|回复: 0

[经验分享] zabbix自定义KEY监控服务状态[不需要端口]

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-1-4 09:35:43 | 显示全部楼层 |阅读模式
                      zabbix监控Windows下的服务并实现告警和重启服务
首先 创建获取服务状态的脚本
一、Windows脚本

1
2
3
4
5
6
7
8
9
10
11
12
@echo off

set srvname=%1
for /f "skip=3 tokens=4" %%i in ('sc query %srvname%') do set "zt=%%i" &goto :next
:next
if /i "%zt%"=="RUNNING" (
    :服务运行正常,返回1.
    echo 1
    ) else (
    :服务运行异常,返回0
     echo 0
    )




我这里将此脚本命名为test.bat  保存在 c:\zabbix\cmd\test.bat里面
cmd运行 c:\zabbix\cmd\test.bat W32Time
看返回的服务状态是否正常

二、Linux 脚本
刚才又编辑了linux下的脚本,实现方式一样
1
2
vi /etc/zabbix/test.sh
chmod +x /etc/zabbix/test.sh



输入以下内容:
1
2
3
4
5
6
7
8
srvname=$1
sta=`ps -ef |grep $srvname |grep -v "grep"`
if [[ $sta = "" ]];
then
    echo "0"
else
    echo "1"
fi



1
2
3
cd /etc/zabbix/
./test.sh httpd
1



同样的 测试脚本返回状态是否正确
我这里测试的是httpd服务

三、配置自定义KEY并测试


然后编辑zabbix_agentd的配置文件 C:\zabbix\conf\zabbix_agentd.win.conf
打开远程脚本开关 并自定义KEY值
EnableRemoteCommands=1
打开远程脚本开关
UserParameter=test.status,C:\zabbix\cmd\test.bat W32Time
自定义Key 并从脚本获取key的值 我这里的key是test.status。W32Time 是需要监控的服务
完整配置如下
1
2
3
4
5
6
7
8
LogFile=c:\zabbix\log\zabbix_agentd.log
Server=172.16.1.241,127.0.0.1
Hostname=TEST
StartAgents=10
Timeout=30
UnsafeUserParameters=1
EnableRemoteCommands=1
UserParameter=test.status,C:\zabbix\cmd\test.bat W32Time



然后重启windows下的zabbix_agentd服务
重启完成以后在本机测试自定义key是否可以成功运行
在cmd里面输入
1
2
3
c:\zabbix\bin\zabbix_get.exe -s 172.16.1.252 -k test.stat
us
0



我这里已经吧W32Time关闭 这里返回的是0  如果打开的话 应该返回1

测试成功以后,在zabiix服务器上测试自定义的key值
1
/usr/local/zabbix/bin/zabbix_get -s 172.16.1.252 -k test.status



应该也可以正确返回0或者1 如果不能请检查防火墙或者zabbix_agentd服务是否成功启动,并检查zabbix_agentd的配置文件中的server指定的IP是否正确

四、在zabbix中添加自定义key并创建动作进行报警和远程命令


然后就可以在zabbix中创建自定义key来监控此服务了
我这以W32Time为名称 键值输入 在zabbix_agent中自定义的键值 展示值这选择Service state

QQ截图20160104093342.png
然后创建触发器
定义触发器名称,表达式如下所示。选择最后一次值为0时触发报警
严重性这里根据您的实际情况进行选择
QQ截图20160104093403.png
创建动作
在条件里面选择触发器 将刚才创建的触发器添加到里面
QQ截图20160104093412.png
操作里面添加远程命令
使用 sc start W32Time  这里的W32Time根据需要改为您的服务名称
QQ截图20160104093431.png
保存以后在zabbix_agent客户机上重启W32Time服务器测试报警及远程命令执行结果
QQ截图20160104093450.png
在zabbix上查看服务监控状态
QQ截图20160104093518.png



                   


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-160002-1-1.html 上篇帖子: zabbix_agentd windows配置 下篇帖子: 规划zabbix trigger 监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表