南通外贸网站建设whois域名查询
服务健康检查与自愈
场景:监控服务状态,自动重启失败的进程或容器。
示例:使用Shell脚本检查Docker容器状态并重启。
#!/bin/bash SERVICE_NAME="my-web-app"if [ "$(docker inspect -f '{{.State.Status}}' $SERVICE_NAME)" != "running" ]; thenecho "服务 $SERVICE_NAME 已停止,尝试重启..." docker restart $SERVICE_NAMEecho "服务已重启" | mail -s "服务自愈通知" admin@example.com fi
Kubernetes Pod自愈脚本:
#!/bin/bash NAMESPACE="production" DEPLOYMENT="web-app"# 检查Pod是否处于Running状态 if kubectl -n $NAMESPACE get pods | grep $DEPLOYMENT | grep -qv Running; thenkubectl -n $NAMESPACE rollout restart deployment/$DEPLOYMENTecho "已触发 $DEPLOYMENT 重启" | mail -s "K8s Pod自愈操作" ops@example.com fi