Вопрос с собеседования · DevOps

Чем StatefulSet отличается от Deployment и стоит ли запускать базы данных в Kubernetes?

SeniorKubernetes
Ещё спрашивают так:
  • Что такое PersistentVolumeClaim?
Коротко

StatefulSet даёт подам стабильные имена (db-0, db-1), свой том на каждую реплику (volumeClaimTemplates — том переживает пересоздание пода) и упорядоченный запуск и остановку. Нужен кластерам с ролями и идентичностью: БД, Kafka, ZooKeeper. PVC — запрос пода на хранилище, PV — сам том, StorageClass — как его создать динамически.

  • Адреса реплик через headless Service: db-0.db.ns.svc.cluster.local
  • Удаление StatefulSet не удаляет тома — данные сохраняются
  • БД в Kubernetes реальны с операторами (CloudNativePG, Strimzi), но требуют зрелой команды

А ещё Часто проще управляемая БД облака: бэкапы, обновления и отказоустойчивость — не ваша забота

Подробно

Отличия от Deployment:

DeploymentStatefulSet
имена подовслучайныепорядковые, стабильные
томаобщие или безсвой PVC на реплику
порядокпараллельнопо порядку (можно ослабить)
замена подалюбой новыйтот же идентификатор и том

Хранилище: PVC в шаблоне → StorageClass создаёт диск облака → под на любом узле зоны подключает его. Блочный диск привязан к зоне: под с томом не переедет в другую зону.

БД в Kubernetes — аргументы:

  • за: единая платформа, декларативность, операторы автоматизируют failover, бэкапы, обновления;
  • против: сложность хранения и сети, производительность дисков, риски при ошибках в операторе, нужна экспертиза и в БД, и в Kubernetes.

Оператор — контроллер, который знает предметную область: умеет переключить мастера, сделать бэкап, обновить версию.

Что хотят услышать

  • Стабильная идентичность и свои тома.
  • PV, PVC, StorageClass.
  • Взвешенный ответ про БД в Kubernetes и операторы.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✗StatefulSet и Deployment ничем не отличаются
  • ✗Базы данных в Kubernetes запрещены
  • ✗Отличие в том, что том пода StatefulSet удаляется при пересоздании, а у Deployment сохраняется
  • ✓Стабильные имена подов, свой том на реплику и упорядоченный запуск — для БД и брокеров

Связанные вопросы

Партнёр платформы

Разбор собеседования с sotto

После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.

Разбор собеседования