k8s检测脚本

export KUBECONFIG=/path/to/your/kubernetes.yaml
pods=""
total=`/usr/local/bin/kubectl --kubeconfig=$KUBECONFIG get pods -o wide | grep service | sed -n '$='` # 1
for pod in `/usr/local/bin/kubectl --kubeconfig=$KUBECONFIG get pods -o wide | grep service | awk '{print $1 "_" $6}'`    # 2
do
        name=`echo $pod | awk -F_ '{print $1}'`
        ip=`echo $pod | awk -F_ '{print $2}'`
        sname=`echo $name | awk -F- '{print $5}'`
        curl -s --connect-timeout 10 -m 10 $ip:8672 > /dev/null # 3
        if [ $? -ne 0 ]; then # 4
                /usr/local/bin/kubectl delete pod $name
                pods="$pods$sname ×, "
        else
                pods="$pods$sname √, "
        fi
done
pods="${pods%??}" # 5
success=`echo $pods | awk -F"√" '{print NF-1}'` # 6
if [ $success -ne $total ]; then
        # 7
        curl 'https://oapi.dingtalk.com/robot/send?access_token=***' \
                        -H 'Content-Type: application/json' \
                        -d '{ "msgtype": "text", "text": { "content": "检查结果 ['"$success"'/'"$total"'] :\n'"${pods}"'" } }'
fi



export KUBECONFIG=/opt/k8s-deploy/.kube/config
  for pod in `/usr/local/bin/kubectl --kubeconfig=$KUBECONFIG get pods -n  darwin-prod|grep prod-darwin-app-api|grep 'Run'|awk '{print $1 "_" $3}'`
  do
       stat=`echo $pod |awk -F '_' '{print $2}'`
       sname=`echo $pod |awk -F '_' '{print $0}'`
       if [ "$stat" != "Running" ]; then
          curl -X POST  'https://open.feishu.cn/open-apis/bot/v2/hook/191b8565-f050-4863-a0fc-a6b539a40eb7' \
             -H 'Content-Type: application/json' \
              -d '{"msg_type":"text","content":{"text":"检查结果发布成功'$sname'"}}'
     else
         curl -X POST 'https://open.feishu.cn/open-apis/bot/v2/hook/191b8565-f050-4863-a0fc-a6b539a40eb7' \
              -H 'Content-Type: application/json' \
              -d '{"msg_type":"text","content":{"text":"检查结果发布失败'$sname'"}}'
     fi
    done
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值