主题搜索 全文搜索
香港服务器系统小知识, linux服务器上有一个采集进程,担心该进程出现故障挂死或者被人误杀,这种情况下需要能自动重启。使用peacemaker这样的分布式管理工具可以做到进程的监控,但毕竟体量较大,部署也稍嫌麻烦。 其实,使用keepalived就可以满足这种需求,部署起来也很简单,做个记录供以后查阅。 1、安装keepalived 2、配置keepalived检测 修改/etc/keepalived/keepalived.conf vrrp_script check_dtm { script "/etc/keepalived/check_dtm.sh" interval 1 weight -5 fall 3 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { } track_script { check_dtm } } 如上配置,对VI_1实例配置track脚本,每秒检测一次,实际检测的脚本是check_dtm.sh。 由于我们只是使用keepalived的check功能,所以virtual_address和virtual_server的功能都不需要,相关配置全部删除。 3、配置检测脚本check_dtm.sh #!/bin/bash ps aux|grep dtmonitor|grep java if [ $? != 0 ] ; then echo "dtmonitor is down, try to restart." bash /opt/dtmonitor/monitor/start.sh fi 真正做到重启的地方。简单来说,检查进程是否还在(当然可以做的粒度更准确一些,例如定时写一些文件之类),如果进程没了,则调用采集进程的启动脚本,尝试重启。 4、采集进程的启动脚本。 在采集进程的目录中(即/opt/dtmonitor/monitor/)编辑start.sh文件: #!/bin/bash CURDIR="`dirname $0`" java -jar $CURDIR/dtmonitor.jar & echo "dtmonitor is started." 注意当前目录的切换。 如上,启动keepalived服务后,杀死dtmonitor进程,可以观察到1s左右dtmonitor进程被keepalived服务重启了。更多香港服务器知识,可登入八联网络www.8lian.cn官网进行了解。 |
上一个文章:香港服务器Linux桌面系统的优势-八联网络
下一个文章:CN2专线的香港服务器优势在哪里?-八联网络