Шумо чӣ гуна версияҳои навро дар кластер Kubernetes татбиқ кардед?
sobes.tech AI
Ҷавоб аз AI
ใน Kubernetes โดยทั่วไปจะใช้แนวทางดังต่อไปนี้ในการนำเวอร์ชันใหม่ของแอปพลิเคชันไปใช้งาน:
-
Rolling Update — การแทนที่ pod เก่าอย่างค่อยเป็นค่อยไปด้วย pod ใหม่ที่มีเวอร์ชันภาพใหม่ ซึ่งเป็นวิธีมาตรฐานในการอัปเดต Deployment ที่ให้เวลาหยุดทำงานน้อยที่สุด
-
Blue-Green Deployment — การติดตั้งเวอร์ชันใหม่ควบคู่ไปกับเวอร์ชันเก่า จากนั้นเปลี่ยนเส้นทางทราฟฟิกไปยังเวอร์ชันใหม่หลังจากตรวจสอบแล้ว พร้อมตัวเลือกในการย้อนกลับ
-
Canary Deployment — เวอร์ชันใหม่จะถูกเปิดใช้งานบนส่วนเล็ก ๆ ของ pod หรือทราฟฟิกเพื่อทดสอบความเสถียรก่อนการเปิดใช้งานเต็มรูปแบบ
-
การอัปเดต manifest ด้วยเวอร์ชันภาพใหม่ (tag ของภาพ) และนำไปใช้ผ่าน kubectl apply หรือ pipelines ของ CI/CD
ตัวอย่างคำสั่งสำหรับ rolling update:
kubectl set image deployment/myapp myapp-container=myapp:2.0
คำสั่งนี้จะอัปเดต container ใน Deployment เป็นเวอร์ชัน 2.0 Kubernetes จะเปลี่ยน pod ทีละน้อยอย่างค่อยเป็นค่อยไป