[root@k8s-master01 opt_k8s]# cat app_list
xxx-supervise-srv
xxx-recon-srv
xxx-mkt-strategy-srv
xxx-udc-srv
xxx-bgw-platform-srv
xxx-bgw-lass-platform-srv
[root@k8s-master01 opt_k8s]# cat restart_deployment
#!/bin/bash
Tag="rc" # prod
if [ $# -eq 0 ]; then
echo "no argument"
else
Tag=$1
fi
for app in `cat app_list`
do
deployment=`kubectl get deployments.apps -A | grep $app| grep $Tag |awk 'NR==1{print $2}'`
ns=`kubectl get deployments.apps -A | grep $app |awk 'NR==1{print $1}'`
#echo $deployment
#echo $ns
# echo -e "======= Sleep 2s =======\n"
for ((s=3;s>0;s--))
do
[ $s -gt 0 -a $s -lt 10 ] && echo -ne "$h:$m:0$s" || echo $h:$m:$s
# sleep 1
# clear
echo -ne "\r \r"
done
echo "kubectl rollout restart deployment -n $ns $deployment"
done
echo -e "\n"
通过接口批量重启k8s应用
curl --location --request POST 'http://cicd.gateway.xxx.com/k8s/restart' \
--header 'Content-Type: application/json' \
--data-raw '{
"env": "rc",
"app_list": [
"xxx-supervise-srv",
"xxx-recon-srv",
"xxx-mkt-strategy-srv",
"xxx-udc-srv",
"xxx-bgw-platform-srv",
"xxx-bgw-lass-platform-srv"
]
}'