Chạy plan theo lịch trên các state quan trọng và alert khi plan không rỗng:
bash
terraform plan -detailed-exitcode
# 0 = khong doi, 1 = loi, 2 = co diff -> alertPhát hiện sớm tốt hơn nhiều so với việc gặp drift đúng lúc đang cần deploy gấp một thay đổi khác.
Không phải drift nào cũng do người sửa tay. Ba nguồn khác: provider bump thêm hoặc đổi default; dịch vụ tự đổi attribute (ASG scale làm desired_capacity lệch); và automation khác cùng sửa một resource (Karpenter, autoscaler, script backup).
Vì thế phải phân loại: loại phải sửa, và loại nên bỏ qua vì attribute do dịch vụ tự quản lý.
hcl
lifecycle {
ignore_changes = [desired_capacity, tags["LastScanned"]]
}Lưu ý khi đặt alert: alert quá nhiều còn tệ hơn không có.
Chín trên mười alert là bình thường thì team sẽ ngừng đọc.