Назад | Перейти на главную страницу

Kubernetes в производстве. Проблемы с рабочим стручком

У меня вопрос с кубернетами при развертывании новой версии.

Моя yaml-конфигурация Kubernetes имеет RollingUpdate strategy. Проблема возникает, когда дело доходит до смены версий таким образом. Если у меня есть php-fpm, который выполняет действие, это действие теряется? В случае, если он просто меняет этот модуль на новую версию.

Мой главный вопрос заключается в том, учитывает ли Kubernetes с этой стратегией, используется ли модуль, и если да, то ждет ли он, пока он закончит то, что он должен делать, и изменит его.

Спасибо!

Чтобы расширить то, что @Fady сказал выше, для тех, кому все еще может быть любопытно.

Вызвав хук контейнера PreStop, вы можете закрыть все свободные концы до того, как контейнер будет завершен. Из документации «PreStop: эта ловушка вызывается непосредственно перед завершением работы контейнера». [1]

Хук PreStop может выполнять определенную команду (команды) или HTTP-запрос к конечной точке в контейнере. Кроме того, стандартный льготный период составляет 30 секунд. Однако вы можете указать произвольное время, добавив --grace-period=<seconds>. [2]

[1] https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

[2] https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods