Выбор ответа Middle Service и Ingress спрашивают часто обновлено

Service без эндпоинтов

Вопрос

kubectl get endpointslices -l kubernetes.io/service-name=api показывает пустой список адресов, хотя поды api в статусе Running. Что проверить первым?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Совпадают ли метки подов с селектором и готовы ли поды. Эндпоинты формируются из подов, которые выбраны селектором сервиса и готовы.

Варианты ответа

  1. Перезапустить kube-proxy на всех узлах: он заполняет эндпоинты
  2. Совпадают ли метки подов с селектором и готовы ли подыправильный ответ
  3. Хватает ли CPU на узлах: перегруженные поды не попадают в эндпоинты
  4. Установлен ли Ingress-контроллер, он регистрирует эндпоинты

Разбор

Эндпоинты формируются из подов, которые выбраны селектором сервиса и готовы. Пусто, значит или селектор не находит поды (опечатка в метке, другой namespace), или поды не Ready. kube-proxy работает с уже готовыми эндпоинтами, CPU и Ingress на их состав не влияют. Проверка: kubectl get pods -l <селектор> --show-labels и колонка READY.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме