Разворачивали ли вы микросервисы в Kubernetes самостоятельно или этим занимались DevOps
Что проверяют
Границу вашей ответственности и то, что происходит с сервисом после сборки артефакта. От Java-разработчика не ждут настройки кластера, ждут, что он не сломает свой сервис манифестом и разберётся, почему под перезапускается.
Как отвечать
Назовите реальный уровень, их три, и все нормальны: правил чужие манифесты, писал свои Deployment и Service под присмотром, вёл сервис от чарта до раскатки. Дальше покажите, из чего состоит развёртывание вашего приложения:
- Deployment с числом реплик и стратегией обновления, Service, правило Ingress;
- ConfigMap и Secret, подключённые через
envFromили примонтированные файлом; - пробы: readiness выводит инстанс из балансировки, liveness перезапускает контейнер, startup даёт время на долгий подъём контекста;
- requests и limits по памяти и процессору.
Сильная часть ответа это JVM в контейнере. Современная JVM видит лимиты cgroup, поэтому размер кучи задают долей от памяти пода через -XX:MaxRAMPercentage, а не жёстким -Xmx вровень с лимитом: метапространство, стеки потоков и прямые буферы живут вне кучи. Скажите про корректное завершение: под получает SIGTERM, Spring Boot умеет плавно гасить обработку, а пауза в preStop закрывает гонку с обновлением эндпойнтов.
Про DevOps говорите как про разделение труда: платформа даёт кластер, шаблон чарта и пайплайн, разработчик отвечает за значения, пробы, лимиты и миграции схемы.
Где спотыкаются
Ставят -Xmx вровень с лимитом памяти пода. Контейнер убивают по нехватке памяти, в логах приложения при этом чисто, и человек ищет утечку там, где её нет.
Путают liveness и readiness. В liveness добавляют поход в базу, база моргает, и оркестратор дружно перезапускает все реплики здорового сервиса. Проба живости отвечает, жив ли процесс, зависимости это готовность.
Отвечают «этим занимались DevOps» и закрывают тему. Даже если манифесты писали не вы, покажите, что читали их: сколько реплик, какая стратегия обновления, что происходит с запросами в момент выката.