一个服务探活及保活脚本

之前在维护 ETCD 集群时,发现ETCD有时会意外崩溃,在定位到具体问题之前,为了保证集群可用,开发了一个简单的服务保活脚本,主要流程是如下:每分钟检查一下服务是否存在,如果服务不存在,则重新启动。

具体脚本如下:

#!/bin/bash

while true
do
    procid=$( ps -ef | grep etcd | grep -v grep | wc -l ) //获取 etcd 服务进程ID

    if [ $procid -eq 0 ] // 如果进程ID不存在,则服务停止,打印必要日志,并重启服务
    then
        time=$(date "+%Y-%m-%d %H:%M:%S")
        echo "restart the etcd begin at ${time}"
        ./start.sh > Logs/etcd.logs
    fi
    sleep 60 //存活检查频率。这里是每分钟检查一次
done
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容