CHƯƠNG 18 · Enterprise CI/CD & Multi-Cluster•BÀI 72 / 80

Argo Rollouts và Release Audit

Canary cần metrics/approvals; không chỉ có setWeight YAML.

Vận hành◷ 4 phút đọc4/4 trong chương

Nắm bản chất

Argo Rollouts hỗ trợ Canary/Blue-Green; setWeight không có traffic router chỉ xấp xỉ theo replicas. True weighted HTTP traffic thường đòi hỏi router integration. AnalysisTemplates với Prometheus có thể đánh giá errors/latency nhưng cần traffic đủ và query đúng.

Release audit gồm artifact evidence (digest, signature, provenance), approval evidence (PR/environment) và deployment evidence (sync revision, actual images, health metrics). Rollback image không đảo database migrations.

Luồng hoạt động

v1→25%→analysis→promote v2

Hãy tự giải thích mỗi mũi tên: dữ liệu, quyền hoặc tín hiệu nào được truyền qua bước này?

Lệnh & cấu hình mẫu

kubectl -n lab18-canary get rollouts,pods
kubectl argo rollouts get rollout lab18 -n lab18-canary --watch
kubectl argo rollouts promote lab18 -n lab18-canary
kubectl argo rollouts abort lab18 -n lab18-canary

Lệnh có placeholder hoặc phụ thuộc môi trường thì cần thay thông tin thực tế, kiểm tra quyền và chỉ thực hiện trên tài nguyên được phép.

Bài tập 10–20 phút

✳

Trong lab Buổi 18, thực hành pause/promote/abort trên Kind riêng, rồi viết incident timeline gồm bản canary, metrics và lý do quyết định.

Lỗi dễ mắc

!

Đừng tuyên bố automated canary analysis an toàn khi Prometheus metric chưa tồn tại hoặc có lượng request quá ít để đánh giá.

Tự kiểm tra

`setWeight: 25` với 3 replicas có bảo đảm chính xác 25% requests không?Xem đáp án ↗

Không. Nếu không có traffic router tương thích, cân bằng chủ yếu xấp xỉ theo replicas.

TÀI NGUYÊN ĐI KÈM

Học thêm qua lab

Có project thực hành đúng với chương này, kèm README và những giới hạn môi trường cần lưu ý.

↓ Tải mã nguồn thực hành chương 18
NGUỒN CHÍNH THỨC

Đối chiếu tài liệu gốc

Cú pháp và khả năng hỗ trợ có thể thay đổi theo phiên bản. Trước khi dùng Production, hãy kiểm tra tài liệu tương ứng.

Mở tài liệu chính thức ↗