Ответ
Pods в Kubernetes управляются контроллерами (controllers), которые следят за состоянием и поддерживают желаемое количество реплик. Основные типы:
- Deployment — для stateless-приложений, обеспечивает обновления, откаты и масштабирование.
- StatefulSet — для stateful-приложений (например, БД), гарантирует порядок и устойчивость томов.
- DaemonSet — запускает pod на каждом (или выбранном) узле (например, для логирования).
- Job/CronJob — для разовых или периодических задач.
Пример Deployment:
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:latest