Khi rollback không có, chỉ có… hotfix lúc 2h sáng

Lỡ deploy lỗi thì sao?
– Thì sửa code rồi deploy lại...

Deploy lỗi, hệ thống sập, nhưng không có cách rollback về version trước. Team đành viết hotfix lúc 2h sáng, vừa sửa vừa lo, vì production đang “cháy”.

Khi deploy lỗi mà không có rollback plan.


Vấn đề: Không có rollback plan

Thực trạng:
  • Không versioning release: Không tag release, không biết version nào đang chạy.
  • Không blue/green: Deploy trực tiếp, không có môi trường song song để chuyển đổi.
  • Rollback thủ công: Phải SSH vào server, chạy git checkout hoặc khôi phục DB bằng tay.

Hậu quả: Hotfix vội vàng dễ sinh lỗi mới, khách hàng mất lòng tin.

Giải pháp: Versioning và rollback strategy

Để rollback an toàn:
  • Versioning release: Tag mỗi release trên Git (ví dụ: v1.0.1).
  • Dùng canary/blue-green: Deploy canary để thử nghiệm hoặc blue/green để chuyển đổi mượt mà.
  • Image rollback: Lưu Docker image của version trước, rollback chỉ cần chạy lại image cũ.

Ví dụ: Với Kubernetes, dùng kubectl rollout undo để quay lại deployment trước.

🎯 Tóm lại: Rollback là “phao cứu sinh” khi deploy lỗi. Dùng versioning, canary, hoặc image rollback để tránh hotfix lúc 2h sáng.

Post a Comment

Mới hơn Cũ hơn