设为首页 收藏本站
查看: 5941|回复: 1

[经验分享] Zabbix 踩坑之旅——zabbix触发重启tomcat

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-4-18 10:26:16 | 显示全部楼层 |阅读模式
一、实验需求
    公司tomcat服务经常自动崩溃,导致业务中断,暂时用zabbix对其执行监控,在tomcat崩溃时能够先自动启动,保证业务尽快恢复正常。


二、准备环境
    系统环境:CentOS 6.5
    IP地址:
         zabbix-server: 192.168.239.128
         zabbix-agent: 192.168.239.130

    zabbix的服务端和客户端的安装此处都以rpm包安装,配置略过。agent端上安装好tomcat。

三、开启踩坑之旅——agent端
    ① 修改zabbix-agent配置文件,修改后重启生效
       # vim /etc/zabbix/zabbix_agentd.conf
          EnableRemoteCommands=1    开启agent端远程命令执行功能   
       # sudo server zabbix-agent restart   
wKiom1cTPzXwryzAAAAVCi5j5v4096.jpg
    ② 修改sudoers,给zabbix用户赋予权限,不然zabbix-agent无法执行命令  
       # sudo visudo
         zabbix ALL:NOPASSWD ALL
         zabbix ALL:NOPASSWD /usr/loacal/catalina.sh start
wKiom1cTQlGTzG8EAAAWg_dOMD8929.jpg
四、开启踩坑之旅——server端
    ① 先创建一个Host ,直接填入agent端的IP就行
wKioL1cTN5jQ4UpTAADKOPv-SLQ807.jpg
    ② 创建Item,使用內建的Key
       "proc.num[<name>,<user>,<state>,<cmdline>]"
       通过某用户执行,某进程状态,进程名称来统计进程的数量
          name:进程名称(默认"all processes")
          user:用户名(默认"all user")
          state:进程状态(默认"all"),可选:run,sleep,zomb
          cmdline:命令行过滤(使用正则表达式查找进程)
       例如: proc.num[,root,all,tomcat]   统计root用户运行匹配tomcat的所有状态的进程。
wKioL1cTOcvR1CU6AAB6rmzRy9Y855.jpg
    ③ 创建Trigger,设定触发条件,下面的表达式意思就是 最后两次的结果为0就触发告警
wKiom1cTORDiaxQLAABIluzMhaM215.jpg
    ④ 创建Action
        Operation type:改为执行远端命令
        Target list:选定执行的agent
        Type:可以有多种选择,此处是启动tomcat,选择Remote command或ssh既可
        Execute on:执行端,默认选择agent端既可
        Commands:写入想让agent端执行的命令既可
            坑:这里的命令尤为注意,一定要加sudo提升zabbix的权限,不然命令无法执行,并且远程命令执行不会有回复信息的,排错也比较难。
wKioL1cTPdXgLSw8AADD4EeyQZE630.jpg
wKioL1cTSD3SJkWCAAAwyXkUg9k846.jpg
五、测试
    ① agent端关闭tomcat

wKiom1cTQu7zSgxcAAApj-j7S1w359.jpg
   ② server显示为故障,过一会儿就正常了。(正常的图是截完日志再截的,时间上有点久)
wKioL1cTQ-jy9m2oAABPGxJWPJk267.jpg
wKiom1cTRJKCXvqkAABQbLQ47RY539.jpg
    ③ 通过日志也可以看出server端恢复了
wKiom1cTRDDiibF2AACYmVzDMyc467.jpg

总结:关键点总结
   ① zabbix-agent端:
        添加 EnableRemoteCommands=1
        修改sudoers,给zabbix授权
   ② zabbix-server端:
        确保触发条件和执行条件正常,远程命令记得添加 sudo

   直接参考zabbix官方文档既可


运维网声明 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-205543-1-1.html 上篇帖子: linux监控zabbix 下篇帖子: ZABBIX 之python脚本邮件报警配置

尚未签到

发表于 2016-4-28 16:22:19 | 显示全部楼层
楼主,请问下 我单台服务器,即是server也是agentd  然后测试tomcat down掉重启功能。zabbix web界面查看命令是执行正常的。 但是服务器上tomcat却没有启动。有遇到过这种情况吗?  这个要怎么处理才好?

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

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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