Вступить в клуб →
сложнаявопросKafka и надёжность распределённых сервисов

Проверка базы в liveness-пробе и циклические перезапуски подов

У сервиса в Kubernetes liveness-проба обращается к эндпоинту, который проверяет доступность PostgreSQL и Kafka. Readiness-проба настроена на тот же эндпоинт.

База ушла на переключение на резерв и была недоступна около 10 минут. За это время все поды сервиса многократно перезапустились, а после восстановления базы сервис ещё долго возвращался в строй. Что настроено неверно?

  • Ничего: перезапуск при недоступности зависимости — правильное поведение, надо просто увеличить число реплик
  • Проверку базы надо перенести в startup-пробу — она выполняется только один раз при запуске пода
  • Достаточно убрать обе пробы: без них Kubernetes не будет вмешиваться в работу подов и рестартов не будет
  • Проверки внешних зависимостей место в readiness, а не в liveness: тогда под выводится из балансировки, но не перезапускается

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела