Sobes.tech
Назад к вопросам
Senior
4

Какие пробы (probes) есть в Kubernetes? Чем отличаются?

Компании, где спрашивали
WildberriesWildberries

Ответ от нейросети

sobes.tech AI

В Kubernetes есть три основных типа проб (probes), которые используются для проверки состояния контейнеров:

  1. Liveness Probe — проверяет, жив ли контейнер. Если проверка не проходит, kubelet перезапускает контейнер. Это помогает обнаружить ситуации, когда приложение зависло или находится в некорректном состоянии.

  2. Readiness Probe — проверяет, готов ли контейнер принимать трафик. Если проверка не проходит, контейнер временно исключается из сервисов (Endpoints), чтобы на него не шли запросы.

  3. Startup Probe — используется для проверки успешного запуска приложения. Если приложение долго стартует, эта проба позволяет не считать контейнер упавшим до завершения старта. После успешного прохождения Startup Probe, начинают работать liveness и readiness.

Отличия:

  • Liveness отвечает за перезапуск контейнера при сбое.
  • Readiness отвечает за доступность контейнера для обработки запросов.
  • Startup помогает корректно обрабатывать длительный старт приложения, предотвращая преждевременный перезапуск.

Пример liveness probe в манифесте:

livenessProbe:
  httpGet:
    path: /healthz
    port: 8080
  initialDelaySeconds: 15
  periodSeconds: 20

Это проверит HTTP эндпоинт /healthz каждые 20 секунд, начиная через 15 секунд после запуска контейнера.