развертывание руля с помощью устройства готовности - PullRequest
0 голосов
/ 18 сентября 2018

Я использую helm в своем CI для обновления развертываний с более новыми версиями диаграмм.

helm upgrade --wait --install .

Ожидаемое поведение: флаг --wait должен ожидать готовности готовности, определенного в новой диаграмме. Смотрите также: https://docs.helm.sh/helm/#helm-upgrade

Однако он не ждет и просто развертывает новую диаграмму, даже если сбои readinessProbe.

Что приводит к провалу нового графика и уничтожению старого графика.

Это не имеет ничего общего с https://github.com/helm/helm/issues/3173,, поскольку readinessProbe выполняется правильно и завершается ошибкой. Но Хельм просто не ждет этого.

Кто-нибудь сталкивался с такими проблемами? Спасибо!

1 Ответ

0 голосов
/ 24 сентября 2018

Проблема была устранена путем установки следующего описания yaml Kubernetes внутри ресурса развертывания:

  strategy:
   type: RollingUpdate
   rollingUpdate:
    maxSurge: 1
    maxUnavailable: 0

Документация по развертыванию Kubernetes:

Примечание.Контроллер развертывания автоматически остановит неудачное развертывание и прекратит масштабирование нового ReplicaSet.Это зависит от заданных вами параметров rollUpdate (в частности, maxUnavailable).Kubernetes по умолчанию устанавливает значение 1, а .spec.replicas - 1, поэтому, если вы не заботились об установке этих параметров, ваше развертывание может иметь 100% недоступность по умолчанию!Это будет исправлено в Kubernetes в следующей версии.

...