Ответ
Deployment YAML в Kubernetes описывает желаемое состояние для развертывания приложения. Он включает:
- Метаданные (metadata) - имя, labels, аннотации
- Спецификацию (spec) - ключевые параметры:
- replicas - количество подов
- selector - как находить поды
- template - описание подов (контейнеры, volumes и т.д.)
- стратегия обновления (rollingUpdate или recreate)
Пример:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
Deployment обеспечивает развертывание, масштабирование и обновление приложения.