Что такое реплика-сет и деплоймент?
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 |
|---|---|---|
| Гарантия числа подов | ✅ | ✅ |
| Обновление приложений | ❌ | ✅ |
| Откат версий | ❌ | ✅ |
| Управление историей | ❌ | ✅ |