Deployment rollout és stratégiák
Rollout parancsok: - Kézi újraindítás: kubectl rollout restart deployment/my-java-app - Státusz követése: kubectl rollout status deployment/my-java-app - PÁNIKGOMB (Visszavonás): kubectl rollout undo deployment/my-java-app
Deployment Stratégiák (Hogyan frissít a K8s?)
A YAML fájl spec.strategy.type mezőjében két fő stratégiát állíthatsz be:
1. RollingUpdate (Alapértelmezett - Zero Downtime) A K8s egyesével cseréli le a podokat. Nem lesz leállás, de egy rövid ideig a régi és az új verzió (vagy adatbázis séma) is fut egyszerre.
spec:
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 25% # Max ennyi pod indulhat el a replika számon felül
maxUnavailable: 25% # Max ennyi pod hiányozhat frissítés közben
2. Recreate (Downtime-mal jár, de tiszta lap) A K8s először könyörtelenül megöli az összes futó podot, és csak utána indítja el az újakat. Akkor hasznos, ha a régi és az új verzió semmiképp nem fér meg egymás mellett (pl. adatbázis lock, inkompatibilis migráció).