Перезапуск всех сервисов

kubectl -n default rollout restart deploy
kubectl -n default rollout restart ds

Если namespace отличен от по умолчанию, заменить default на свой

Более интересный вариант:

#!/usr/bin/env bash

function clearCompleted() {
    kubectl delete job $(kubectl get job -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}') > /dev/null 2>&1
}


kubectl scale deploy --replicas=0 --all

while [[ $(kubectl get pods -n default | grep -c "") -ne 0 ]]
do
  clearCompleted
  echo "Waiting for all pods are Terminating."
  sleep 15
done

kubectl scale deploy --replicas=1 --all
kubectl scale --replicas=4 deployment/worker

while true
do
  clearCompleted
  echo "Waiting for all pods are Ready."
  kubectl wait pods --all -n default --for condition=Ready --timeout=60s > /dev/null 2>&1 && break
  sleep 15
done

echo "All done."


Версия #3
Вербовик Максим Арнольдович создал 2022-12-17 11:22:15 MSK
Вербовик Максим Арнольдович обновил 2025-08-12 14:20:23 MSK