K8S Deployment Stratergies – Chiến lược triển khai trên K8S

Deployment Stratergies

K8S deployment stratergies hay còn gọi là Chiến lược triển khai trên k8s là thuật ngữ quan trọng hay sử dụng. Nhưng mà nói thật là lý thuyết học để phỏng vấn chứ mọi người đều nắm khá chắc khi làm với k8s.

Deployment Stratergies

deployment stratergies
K8S deployment stratergies

1. Recreate Deployment

📌 Quy trình:

  • Dừng toàn bộ pods cũTạo mới toàn bộ pods mới.

🛠 Khi nào sử dụng?

  • Ứng dụng stateful, nơi downtime là chấp nhận được.
  • Cần cập nhật lớn và không thể chạy đồng thời 2 phiên bản.

Nhược điểm:

  • Có downtime vì toàn bộ ứng dụng sẽ bị dừng trong quá trình cập nhật.

2. Rolling Update

📌 Quy trình:

  • Dần dần thay thế các pods cũ bằng pods mới mà không gián đoạn dịch vụ.

🛠 Khi nào sử dụng?

  • Ứng dụng stateless, yêu cầu zero-downtime.
  • Triển khai bản cập nhật an toàn, tránh ảnh hưởng toàn hệ thống.

Nhược điểm:

  • ❌ Nếu gặp lỗi, rollback có thể mất thời gian hơn so với Blue-Green.

3. Blue-Green Deployment

📌 Quy trình:

Chạy song song 2 môi trường:

  • Blue (phiên bản cũ)
  • Green (phiên bản mới)✔ Khi sẵn sàng, chuyển toàn bộ traffic từ Blue sang Green.

🛠 Khi nào sử dụng?

  • Ứng dụng quan trọng, cần rollback nhanh nếu có lỗi.
  • Dễ dàng kiểm tra phiên bản mới trước khi deploy chính thức.

Nhược điểm:

  • Tốn tài nguyên gấp đôi, vì phải duy trì cả 2 môi trường cùng lúc.

4. Canary Deployment

📌 Quy trình:

  • Phát hành phiên bản mới cho một nhóm nhỏ người dùng trước.
  • Nếu ổn định, tiếp tục mở rộng cho toàn bộ hệ thống.

🛠 Khi nào sử dụng?

  • Cập nhật có rủi ro cao, cần kiểm thử trên một nhóm nhỏ trước.
  • Triển khai AI/ML models hoặc tính năng mới dần dần.

Nhược điểm:

  • Cần thiết lập routing phức tạp để kiểm soát phân phối traffic.

Summary

Tóm tắt về K8S deployment stratergies hay còn gọi là chiến thuật triển khai trên k8s:

🔹 Tiêu chí🔹 Recreate🔹 Rolling Update🔹 Blue-Green🔹 Canary
Downtime✅ Có❌ Không❌ Không❌ Không
Triển khai nhanh✅ Có🔸 Trung bình❌ Không❌ Không
Rollback dễ dàng❌ Không🔸 Khó hơn✅ Nhanh✅ Rất nhanh
Tài nguyên tiêu tốn✅ Ít🔸 Trung bình❌ Nhiều🔸 Trung bình
Kiểm thử trước khi deploy❌ Không🔸 Hạn chế✅ Có✅ Có

Previous Article

50+ Câu Lệnh DevOps và Bash Aliases sử dụng hàng ngày

Write a Comment

Leave a Comment

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Đăng ký nhận Bản tin của tôi

Đăng ký nhận mail thì sẽ có email gửi cho bạn mỗi khi tôi có bài viết mới
Nội dung chất lượng, không Spam nha ✨