自动化运维 | 如何实现服务器宕机后自动重启

来源:互联网 发布:大数据采集软件 编辑:程序博客网 时间:2024/05/22 10:53
之前一段时间,老左在网友圈抽样进行调查,发现80%以上的站长用户希望网站、服务器实现自动化运维。前几天就有网友希望自己的服务器定期重启。

其实老左经常遇到有网友提到服务器需要定时执行某个任务、以及在服务器可能出现问题时候需要自动重启。如果单纯的靠人为的执行效率上肯定不如自动化好。无论我们是个人站长,还是公司企业的专业运维人员,我们在管理和维护网站的时候更为需要实现自动化运维,因为这样不但可以减少我们的工作量和提高工作效率,而且更能快速响应和自动化解决项目服务器的问题。

这两天,有看到监控宝提供URL回调的功能应用。其实,我们也可以利用监控宝URL回调的功能,检测到宕机报警之后,自动重启Nginx等WEB服务。

在这篇文章中,老左将会实战演练如何利用监控宝URL回调功能,检测到宕机服务器且进行重新启动Nginx服务,从而恢复网站正常的运转。

1、准备工作
A - 我们需要有一个监控宝(jiankongbao.com)账户,如果没有账户则需要新注册一个。

B - 用户放置URL回调PHP页面的站点目录,我们可以找一个在用/可用的WEB环境站点根目录,也可以自己专门搭建一个,需要当前环境支持SSH2(SSH2安装教程)、以及PHP5.3以上。

C - 需要监控的站点/服务器,添加到监控宝的监控项目中。

2、设置URL回调页面和参数获取


根据上图,我们到自己的监控宝账户中,添加URL回调的页面,这个页面是需要能够访问到的,这里可以根据官方的文档参考制作不同项目的开发脚本。

3、部署和编辑重启服务器回调脚本
脚本地址:http://soft.laozuo.org/tools/jiankongbao.zip

这里老左把脚本也分享出来(感谢P总给予技术支持),这里仅仅是自动重启或者执行SSH命令的范例,对于其他深入的使用则需要我们自己写脚本。


在文档的jiankongbao.php文件中,参数对应说明,我们需要找到项目的ID、以及当前回调URL的Token,以及我们监控服务器的ROOT信息。
更为重要的是,在ssh_command是表示在服务器出现问题之后,我们来执行重启Nginx WEB服务,同样的如果我们需要重启数据库也可以这样使用。

4、监控宝URL回调功能体验
老左在部署完毕URL回调页面参数之后,针对监控服务器关闭掉Nginx,然后等待监控促发之后手机、邮件告知服务器宕机,然后等待一会可以看到收到恢复且重启Nginx的自动任务。建议购买付费版本,因为从响应速度、监控频率以及功能上会优秀很多。

总结,通过监控宝URL回调的重新启动WEB服务的功能,我们还可以应用到更为强大的自动运维服务中,这样可以实现无人值守的运维实践。
0 0
原创粉丝点击