Middle
Co je replika-sada a nasazení?
sobes.tech AI
Odpověď od AI
ReplicaSet zajišťuje stanovený počet identických podů, které běží v clusteru. Sleduje stav podů a automaticky je nahrazuje ty, které selhaly nebo přestaly fungovat.
Deployment je poskytován nad ReplicaSetem. Řídí aktualizace a rollbacky aplikací, udržuje historii verzí deploymentu. Umožňuje provádět aktualizace podle strategie rolling update nebo recreate.
# Příklad manifestu Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3 # Určuje požadovaný počet podů (přes ReplicaSet)
selector:
matchLabels:
app: nginx
strategy:
type: RollingUpdate # Strategie aktualizace
rollingUpdate:
maxUnavailable: 1
maxSurge: 1
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2 # Verze obrazu, která bude aktualizována
ports:
- containerPort: 80
V tomto příkladu vytvoří Deployment ReplicaSet, který bude podporovat 3 podů s obrazem nginx:1.14.2. Při změně verze obrazu v manifestu Deployment vytvoří nový ReplicaSet pro novou verzi a postupně směruje provoz na něj, odstraňujíc staré pody podle strategie RollingUpdate.
Porovnávací tabulka:
| Možnost | ReplicaSet | Deployment |
|---|---|---|
| Záruka počtu podů | ✅ | ✅ |
| Aktualizace aplikací | ❌ | ✅ |
| Rollback verzí | ❌ | ✅ |
| Správa historie | ❌ | ✅ |