CloudWatch Alarm là gì?
CloudWatch Alarm là cơ chế giám sát trong Amazon CloudWatch, cho phép bạn:
- Theo dõi metrics theo thời gian.
- So sánh với ngưỡng (threshold) do bạn setting và thay đổi State khi điều kiện xảy ra.
- Tự động kích hoạt Action khi vượt ngưỡng.
Ví dụ: nếu CPU của EC2 vượt quá 80% trong 5 phút, alarm sẽ gửi thông báo qua Amazon SNS hoặc tự động kích hoạt Auto Scaling.
Trạng thái của Alarm
Một alarm có thể có các trạng thái sau:
- OK → Metric nằm trong ngưỡng cho phép.
- ALARM → Metric vượt quá ngưỡng quy định.
- INSUFFICIENT_DATA → Không đủ dữ liệu để đánh giá.
Tổng quan cách hoạt động của Alarm
- Alarm theo dõi một hoặc nhiều Metrics từ CloudWatch.
- Định nghĩa ngưỡng (threshold) và điều kiện (
≥, ≤, >, <). - Chọn thời gian đánh giá (evaluation period).
- Khi metric vi phạm threshold → alarm thay đổi trạng thái.
- Alarm có thể kích hoạt:
- Notification qua Amazon SNS.
- EC2 actions: scale in/out EC2, restart instance.
- Auto Scaling action: Scale out khi CPU > 80%.
Các loại điều kiện Threshold
- Static Threshold (ngưỡng cố định)
- Đặt ngưỡng cụ thể (ví dụ: CPU > 80%).
- Ví dụ:
CPUUtilization > 80%trong 5 phút → ALARM.
- Anomaly Detection (Bất thường)
- Dùng machine learning của CloudWatch để tạo dải bất thường (Band)
- Alarm sẽ bật nếu metric nằm ngoài band.
- Ví dụ: Traffic website tăng vọt đột ngột (spike) ngoài dự đoán.
- Composite Alarm
- Kết hợp nhiều alarm với logic AND/OR.
- Giúp giảm cảnh báo giả (false alarm).
- Ví dụ: chỉ báo động khi CPUUtilization > 80% AND Memory > 75%.
Cách Alarm đánh giá Metric
- Period: Khoảng thời gian (thời gian lấy mẫu) để đánh giá metric (ví dụ: 1 phút, 5 phút…).
- Statistic/Math: Cách tính toán giá trị Metric trong mỗi period (Average, Sum, Minimum, Maximum, SampleCount).
- Threshold: Ngưỡng so sánh (ví dụ: 80%).
- Evaluation Period: Số khoảng thời gian (periods) liên tiếp mà metric phải vi phạm threshold để chuyển trạng thái.
- Ví dụ:
Evaluation Period = 3vàPeriod = 5 phútnghĩa là metric phải vi phạm threshold trong 3 khoảng 5 phút liên tiếp (tổng cộng 15 phút).
- Ví dụ:
- Datapoints to Alarm: Số datapoints trong các evaluation periods phải vi phạm threshold để chuyển trạng thái.
- Ví dụ:
Datapoints to Alarm = 2vàEvaluation Period = 3nghĩa là trong 3 khoảng 5 phút (tổng 15 phút), chỉ cần 2 khoảng vi phạm threshold là đủ để chuyển trạng thái.
- Ví dụ:
- Treat Missing Data: Cách xử lý khi không có dữ liệu trong một period.
missing: coi như không vi phạm (default).ignore: bỏ qua period đó.breaching: coi như vi phạm threshold.notBreaching: coi như không vi phạm.
