背景
在应用部署后,经常会遇到业务开发要调整所以要批量重启应用的情况。
直接 kubectl
kubectl --kubeconfig=<config_path> get deployments -n <target_namespace> | awk 'NR>1 {print $1}' | xargs -I {} kubectl --kubeconfig=<config_path> rollout restart deployment/{} -n <target_namespace>
shell方式
for deploy in $(kubectl --kubeconfig=/Users/xxx/Documents/devops/xxx get deploy -n <target_namespace> -o jsonpath='{range .items[*]}{.metadata.name}{"\n"}{end}'); do kubectl --kubeconfig=/Users/xxx/Documents/devops/xxx rollout restart deploy $deploy -n <target_namespace>; done