Amazon CloudWatch là gì?
Amazon CloudWatch là dịch vụ giám sát và quan sát hệ thống do AWS cung cấp, giúp thu thập và theo dõi metrics, logs, events từ các tài nguyên AWS, ứng dụng và dịch vụ bên ngoài. CloudWatch hỗ trợ theo dõi hiệu suất, phát hiện sự cố và tối ưu vận hành hệ thống.
Các thành phần chính
CloudWatch Metrics
- Lưu trữ và hiển thị dữ liệu dạng số liệu (metrics) theo thời gian.
- Ví dụ: CPUUtilization, NetworkIn, RequestCount.
- Hỗ trợ Custom Metrics do người dùng định nghĩa.
CloudWatch Logs
- Thu thập và lưu trữ log từ Amazon EC2, Lambda, API Gateway, ECS/EKS hoặc ứng dụng custom.
- Cho phép tìm kiếm, lọc, và phân tích log.
- Có thể thiết lập Log Retention Policy.
CloudWatch Alarms
- Tạo cảnh báo khi metric vượt quá ngưỡng quy định.
- Hành động khi báo động:
- Gửi thông báo qua Amazon SNS.
- Tự động thực hiện hành động (Auto Scaling, khởi động lại instance).
CloudWatch Events (EventBridge)
- Ghi nhận sự kiện hệ thống và dịch vụ AWS.
- Có thể thiết lập rule để phản ứng lại sự kiện, ví dụ:
- Khi một EC2 instance thay đổi trạng thái.
- Khi một Lambda function được gọi.
CloudWatch Dashboards
- Tạo bảng điều khiển tùy chỉnh để hiển thị metrics và logs.
- Giúp dễ dàng quan sát toàn bộ hệ thống tại một giao diện tập trung.
Tích hợp phổ biến
- EC2: Theo dõi CPU, bộ nhớ, disk.
- RDS/Aurora: Theo dõi kết nối, dung lượng, read/write IOPS.
- Lambda: Giám sát số lần gọi, thời gian thực thi, lỗi.
- ECS/EKS: Quan sát container metrics.
- Route 53: Tích hợp Health Check.
- Auto Scaling: Kích hoạt scaling dựa trên CloudWatch Alarms.
Ứng dụng thực tế
- Giám sát hiệu năng hệ thống theo thời gian thực.
- Cảnh báo sự cố ngay khi có bất thường.
- Phân tích logs để khắc phục sự cố.
- Kích hoạt hành động tự động khi vượt ngưỡng.