Назад к вопросам
Middle
271
questionbank

Что такое реплика-сет и деплоймент?

Sobes Copilot

Получайте ответы в реальном времени

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

sobes.tech AI

Реплика-сет (ReplicaSet) обеспечивает заданное количество идентичных подов, работающих в кластере. Он мониторит состояние подов и автоматически заменяет те, что упали или прекратили работу.

Деплоймент (Deployment) предоставляется поверх Реплика-сета. Он управляет обновлениями и откатами приложений, поддерживая историю версий деплоймента. Позволяет выполнять обновления по стратегии rolling update или recreate.

# Пример манифеста Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3 # Определяет желаемое количество подов (через ReplicaSet)
  selector:
    matchLabels:
      app: nginx
  strategy:
    type: RollingUpdate # Стратегия обновления
    rollingUpdate:
      maxUnavailable: 1
      maxSurge: 1
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2 # Версия образа, которая будет обновляться
        ports:
        - containerPort: 80

В этом примере Deployment создаст ReplicaSet, который будет поддерживать 3 пода с образом nginx:1.14.2. При изменении версии образа в манифесте Deployment, он создаст новый ReplicaSet для новой версии и постепенно переведет трафик на него, удаляя старые поды по стратегии RollingUpdate.

Таблица сравнения:

Возможность ReplicaSet Deployment
Гарантия числа подов
Обновление приложений
Откат версий
Управление историей