近期,我们的mogilefs系统存储节点上的mogstored服务子进程总是莫名其妙的自动退出,又因mogilefs无日志功能,具体详情无从查起,根据调研资料分析写出mogilefs自管理脚本,如下:

在mogilefs存储节点mogstored上:
#vim /usr/bin/monitor_mogstored
#!/bin/bash
proc_name=mogstored
proc_num=$( pstree -p |grep $proc_name|wc -l )
proc_hao=$( ps -ef|grep $proc_name|grep -v grep|grep -v  monitor_$proc_name|awk -F " " '{print $2}' )
if test $proc_num -lt 11
    then
      kill -9  $proc_hao
      /usr/local/bin/$proc_name --daemon
fi
sleep 288 && monitor_$proc_name &
保存退出。
#chmod +x /usr/bin/monitor_mogstored
#monitor_mogstored       //激活自监控脚本。
#echo “sleep 10 && monitor_mogstored &” >> /etc/rc.local            //开机自激活,非必需。