Argo Rollouts và Release Audit
Canary cần metrics/approvals; không chỉ có setWeight YAML.
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
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.
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Đố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 ↗