Middle
Mis on replikakogum ja juurutus?
sobes.tech AI
Vastus AI-lt
ReplicaSet tagab määratud arvu sarnaseid pod'e, mis töötavad klastris. See jälgib pod'ide olekut ja asendab automaatselt need, mis on langenud või lõpetanud töö.
Deployment on teenus, mis põhineb ReplicaSet'il. See haldab rakenduste uuendusi ja tagasipöördumisi, säilitades deploymenti versiooniloo. See võimaldab teha uuendusi kas rolling update või recreate strateegiaga.
# Deploymenti näidismäärus
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3 # Määrab soovitud pod'ide arvu (käsitletud ReplicaSet'i kaudu)
selector:
matchLabels:
app: nginx
strategy:
type: RollingUpdate # Uuenduse strateegia
rollingUpdate:
maxUnavailable: 1
maxSurge: 1
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2 # Pildi versioon, mida uuendatakse
ports:
- containerPort: 80
Selles näites loob Deployment ReplicaSet'i, mis toetab 3 pod'i pildiga nginx:1.14.2. Kui deploymenti manifestis muudetakse pildi versiooni, loob see uus ReplicaSet ja suunab liikluse järk-järgult sellele, eemaldades vanad pod'id rolling update strateegia abil.
Võrdlustabel:
| Võimalus | ReplicaSet | Deployment |
|---|---|---|
| Pod'ide arvu garantii | ✅ | ✅ |
| Rakenduste uuendamine | ❌ | ✅ |
| Versioonide tagasipöördumine | ❌ | ✅ |
| Ajaloo haldamine | ❌ | ✅ |