Категория: k8s
Просмотров: 554
Когда внутри пода один из контейнеров становится готовым (проходит свои readinessProbe), но другие контейнеры ещё не готовы (не прошли свои пробы), под в целом не считается готовым. В Kubernetes состояние пода определяется на основе состояния всех его контейнеров, особенно тех, у которых определены readinessProbe.
Технически Kubernetes работает следующим образом:
Под считается готовым только тогда, когда все контейнеры внутри него, у которых определены readinessProbe, успешно проходят свои проверки.
Сервисы (Service) в Kubernetes направляют трафик только на те поды, которые находятся в состоянии "Ready" (готовы).
Если хотя бы один контейнер в поде с readinessProbe не прошёл проверку и не готов, под не будет получать трафик через сервис.
Как это происходит на практике:
Инициализация пода:
Проверка готовности контейнеров:
readinessProbe Kubernetes периодически выполняет проверки.readinessProbe считаются готовыми сразу после запуска.Определение состояния пода:
readinessProbe находятся в состоянии "Ready".Маршрутизация трафика через сервис: