Middle
Šta je replika-set i deployment?
sobes.tech АИ
Одговор од АИ
ReplicaSet obezbeđuje zadatak broj identičnih podova koji rade u klasteru. On nadgleda stanje podova i automatski zamenjuje one koji su otkazali ili prestali da rade.
Deployment se pruža iznad ReplicaSet-a. On upravlja ažuriranjima i rollback-ovima aplikacija, održava istoriju verzija deployment-a. Omogućava izvršavanje ažuriranja prema strategiji rolling update ili recreate.
# Primer manifest Deployment-a
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3 # Određuje željeni broj podova (kroz ReplicaSet)
selector:
matchLabels:
app: nginx
strategy:
type: RollingUpdate # Strategija ažuriranja
rollingUpdate:
maxUnavailable: 1
maxSurge: 1
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2 # Verzija slike koja će biti ažurirana
ports:
- containerPort: 80
U ovom primeru, Deployment će kreirati ReplicaSet koji će podržavati 3 podova sa slikom nginx:1.14.2. Kada promenite verziju slike u manifestu Deployment-a, on će kreirati novi ReplicaSet za novu verziju i postepeno usmeravati saobraćaj na njega, uklanjajući stare podove prema strategiji rolling update.
Tabela poređenja:
| Mogućnost | ReplicaSet | Deployment |
|---|---|---|
| Garantuje broj podova | ✅ | ✅ |
| Ažuriranje aplikacija | ❌ | ✅ |
| Povratak na staru verziju | ❌ | ✅ |
| Upravljanje istorijom | ❌ | ✅ |