Kubernetes - Выполнение проверки готовности после запуска контейнера
Есть ли способ предотвратить выполнение проверки готовности после успешного запуска контейнера? Я полагаю, что проверки жизнеспособности должно быть достаточно для мониторинга состояния контейнера.
2 ответа
Датчики готовности и живучести служат несколько иным целям.
Проверка готовности контролирует, включен ли IP-адрес модуля в список конечных точек для службы, а также определяет, является ли цель для маршрута, когда он отображается через внешний URL-адрес.
Датчик живучести определяет, работает ли модуль по-прежнему нормально или его нужно перезапустить.
Технически приложение все еще может работать нормально, но, возможно, оно заблокировано, и поэтому вы хотите использовать зонд готовности, чтобы временно удалить его из набора конечных точек для службы, чтобы избежать перенаправления дальнейших запросов и их простой блокировки в запросе. очередь для этого конкретного модуля, когда другой модуль может обработать его.
Так что я лично согласился бы, что дублирование кажется странным, но именно так можно различать разные ситуации.
Теперь эту проблему следует решить с помощью Startup probes.
Зонд запуска вызывается во время запуска и используется для определения того, готов ли контейнер принимать запросы. Если проба запуска настроена, проверки работоспособности и готовности отключаются до тех пор, пока проба запуска не завершится успешно.
Тесты при запуске могут быть настроены в агрессивном темпе, чтобы гарантировать, что ваше приложение будет доступно как можно скорее.
Проверка готовности может быть настроена на менее агрессивный темп, чтобы обрабатывать «отставание», например ситуации, упомянутые в принятом ответе.
И проверка Liveness, когда вам нужен перезапуск модуля.