Giám sát, vận hành và hạ tầng dạng code
CloudWatch, CloudTrail, Config, Systems Manager, CloudFormation: quan sát, ghi vết, tự động hoá vận hành.
- DomainThiết kế chịu lỗi
- DomainThiết kế bảo mật
- 9 sơ đồ
- 10 tình huống
- 11 dịch vụ
5 phút phải nhớ
- Ba câu hỏi, ba dịch vụ: hiệu năng ra sao → CloudWatch; ai đã gọi API gì → CloudTrail; cấu hình tài nguyên đã đổi thế nào, có đúng luật không → AWS Config.Đề hay trộn ba dịch vụ này; đọc kỹ câu hỏi đang cần số liệu, nhật ký hành động hay lịch sử cấu hình.
- EC2 mặc định gửi metric 5 phút một lần (basic, miễn phí); bật detailed monitoring để có 1 phút (tính phí).Auto Scaling phản ứng nhanh hơn với metric 1 phút.
- EC2 không tự gửi metric bộ nhớ và dung lượng đĩa đã dùng: cần cài CloudWatch agent (gửi cả log).Câu "cảnh báo khi RAM trên 80%" → CloudWatch agent + custom metric + alarm.
- Custom metric có thể high-resolution (1 giây); alarm trên metric này đánh giá được mỗi 10 hoặc 30 giây.Metric chuẩn của AWS là 1 phút; cần nhanh hơn thì tự gửi metric độ phân giải cao.
- CloudWatch alarm có 3 trạng thái OK / ALARM / INSUFFICIENT_DATA; hành động: gửi SNS, scaling policy, EC2 action (stop, terminate, reboot, recover), Systems Manager.Tự khôi phục EC2 khi lỗi phần cứng: alarm trên StatusCheckFailed_System với hành động recover.
- CloudWatch Logs mặc định giữ log mãi mãi; đặt retention cho từng log group để giảm chi phí.Metric filter biến dòng log thành metric (đếm lỗi 5xx…) để đặt alarm; Logs Insights để truy vấn.
- Subscription filter đẩy log theo thời gian thực sang Kinesis, Firehose hoặc Lambda (rồi S3, OpenSearch…).Gom log nhiều tài khoản về một chỗ, hoặc phân tích log gần thời gian thực.
- CloudTrail bật sẵn: Event history giữ 90 ngày management event trong mỗi Region. Muốn lưu lâu hơn: tạo trail ghi vào S3 (hoặc CloudTrail Lake).Organization trail ghi cho mọi tài khoản; bật log file validation để phát hiện log bị sửa.
- Data event (S3 GetObject / PutObject, Lambda Invoke…) không ghi mặc định và tính phí thêm.Đề hỏi "ai đã đọc / xoá object trong bucket": phải bật data event cho bucket đó.
- AWS Config ghi lịch sử cấu hình và đánh giá tuân thủ bằng Config rules; có remediation tự động qua Systems Manager Automation."Phát hiện security group mở cổng 22 ra 0.0.0.0/0 và tự sửa" → Config rule + remediation.
- X-Ray theo dấu một request qua nhiều dịch vụ (service map, độ trễ từng đoạn).Tìm chỗ chậm hoặc lỗi trong microservices / serverless: X-Ray, không phải CloudTrail.
- Systems Manager: Session Manager (vào máy không cần SSH, bastion, cổng 22), Patch Manager, Run Command, Parameter Store, Automation.Vá và quản lý hàng loạt EC2 / máy on-prem; máy trong subnet private cần VPC endpoint của SSM hoặc NAT.
- CloudFormation: hạ tầng dạng code (template → stack); StackSets triển khai nhiều tài khoản / Region; drift detection phát hiện sửa tay.Dựng lại môi trường giống hệt ở Region khác (DR, nhiều môi trường) nhanh và nhất quán.
Sơ đồ
CloudWatch alarm: từ metric tới hành động
Từng bước
- EC2 gửi metric (5 phút; bật detailed monitoring để có 1 phút).
- Alarm so ngưỡng qua nhiều chu kỳ liên tiếp, tránh báo động vì một điểm nhiễu.
- Chuyển sang ALARM: gọi scaling policy, gửi SNS; alarm trên status check hệ thống có thể recover instance.
CloudWatch agent: metric trong hệ điều hành và log ứng dụng
Từng bước
- Agent gửi metric bộ nhớ / đĩa (namespace CWAgent) và đẩy file log vào log group.
- Metric filter biến dòng ERROR thành metric; alarm trên metric đó hoặc trên bộ nhớ thì báo SNS.
CloudTrail: organization trail tới tài khoản log riêng
Từng bước
- Trail tạo ở tài khoản quản lý ghi API của mọi tài khoản thành viên.
- Log vào bucket ở tài khoản log, chống sửa / xoá; lifecycle chuyển sang Glacier để giữ lâu, rẻ.
- Đồng thời gửi CloudWatch Logs; metric filter bắt hành động nhạy cảm (đăng nhập root, sửa IAM) để cảnh báo.
AWS Config: phát hiện cấu hình sai và tự sửa
Từng bước
- Mỗi thay đổi cấu hình được ghi thành configuration item.
- Config rule đánh giá ngay khi cấu hình đổi (hoặc theo chu kỳ).
- Không tuân thủ: remediation tự gỡ luật mở 22; đồng thời gửi sự kiện để báo đội.
Gom log về S3 và OpenSearch bằng subscription filter
Từng bước
- Log từ Lambda, EC2, VPC Flow Logs vào CloudWatch Logs (truy vấn nhanh bằng Logs Insights).
- Subscription filter đẩy log sang Firehose để lưu S3 giá rẻ và tìm kiếm trên OpenSearch.
X-Ray: theo dấu một request qua nhiều dịch vụ
Từng bước
- Request đi qua API Gateway, Lambda rồi DynamoDB và một API bên ngoài; trace ID đi kèm suốt đường.
- X-Ray ghép segment: thấy ngay cuộc gọi API bên ngoài chiếm gần hết thời gian.
Systems Manager quản lý EC2 trong subnet private
Từng bước
- Kỹ sư mở phiên từ console / CLI; quyền kiểm soát bằng IAM, phiên được ghi log.
- SSM agent tự kết nối ra qua VPC endpoint; không cần IP công khai, bastion hay luật inbound 22.
CloudFormation StackSets: một template, nhiều tài khoản và Region
Từng bước
- Template trong Git là nguồn duy nhất của hạ tầng.
- StackSet triển khai stack giống hệt ra nhiều tài khoản và Region, kể cả Region DR.
AWS Health: tự động phản ứng với sự cố và bảo trì của AWS
Từng bước
- AWS Health phát sự kiện (sự cố dịch vụ, bảo trì lên lịch) cho tài khoản của bạn.
- Luật EventBridge báo đội trực và chạy Lambda xử lý trước giờ bảo trì.
So sánh nhanh
CloudWatch, CloudTrail, Config
| CloudWatch | CloudTrail | AWS Config | |
|---|---|---|---|
| Trả lời | Hệ thống đang chạy thế nào (metric, log, alarm) | Ai đã làm gì, lúc nào, từ đâu (API call) | Tài nguyên được cấu hình thế nào, đổi ra sao, có tuân thủ không |
| Dữ liệu | Metric, log, trace (X-Ray / Application Signals) | Sự kiện API (management, data, Insights) | Configuration item theo thời gian |
| Hành động | Alarm → SNS, Auto Scaling, EC2 action | Gửi log tới S3 / CloudWatch Logs; EventBridge | Config rule → remediation (SSM Automation) |
| Ví dụ đề | CPU vượt 80% thì thêm máy | Ai đã xoá security group? | Bucket nào đang public? Volume nào chưa mã hoá? |
Lưu giữ dữ liệu
| Loại | Giữ bao lâu |
|---|---|
| Metric độ phân giải dưới 60 giây | 3 giờ |
| Metric 1 phút | 15 ngày |
| Metric 5 phút | 63 ngày |
| Metric 1 giờ | 455 ngày (15 tháng) |
| CloudWatch Logs | Mặc định không bao giờ hết hạn (tự đặt retention) |
| CloudTrail Event history | 90 ngày, chỉ management event |
| CloudTrail trail | Tuỳ bạn (log nằm trong S3 của bạn) |
Systems Manager: chọn tính năng
| Cần | Tính năng |
|---|---|
| Vào shell của EC2 mà không mở cổng 22, có log phiên | Session Manager |
| Vá hệ điều hành theo lịch cho cả đội máy | Patch Manager + Maintenance Window |
| Chạy một lệnh trên hàng trăm máy | Run Command |
| Lưu cấu hình, chuỗi kết nối (có thể mã hoá KMS) | Parameter Store |
| Runbook tự động (ví dụ remediation của Config) | Automation |
Tình huống đề hay gặp
1Cần cảnh báo khi bộ nhớ dùng trên EC2 vượt 85%.
Xem đáp án
Đúng: Cài CloudWatch agent gửi mem_used_percent, đặt CloudWatch alarm → SNS
Bộ nhớ, đĩa đã dùng là metric trong hệ điều hành, chỉ agent đọc được.
Sai: Alarm trên metric MemoryUtilization có sẵn của EC2
EC2 không có sẵn metric bộ nhớ.
Sai: Bật detailed monitoring
Chỉ đổi chu kỳ thành 1 phút, vẫn không có bộ nhớ.
2Một security group bị sửa mở cổng 3389 ra internet; cần biết ai đã sửa và lúc nào.
Xem đáp án
Đúng: CloudTrail (AuthorizeSecurityGroupIngress trong Event history hoặc trail)
CloudTrail ghi người gọi, thời gian, IP nguồn của mọi lệnh API.
Sai: CloudWatch metric của EC2
Không ghi hành động API.
Sai: VPC Flow Logs
Ghi luồng mạng, không ghi ai sửa cấu hình.
3Cần liên tục kiểm tra mọi security group không được mở cổng 22 ra 0.0.0.0/0 và tự sửa nếu sai.
Xem đáp án
Đúng: AWS Config managed rule (restricted-ssh) + remediation tự động bằng Systems Manager Automation
Config đánh giá mỗi khi cấu hình đổi và chạy remediation cho tài nguyên không tuân thủ.
Sai: CloudTrail + đọc log bằng tay mỗi tuần
Không liên tục, không tự sửa.
4Kiểm toán yêu cầu lưu nhật ký API của mọi tài khoản trong organization 7 năm, không ai sửa được.
Xem đáp án
Đúng: Organization trail ghi vào bucket S3 ở tài khoản log riêng, bật log file validation, S3 Object Lock và lifecycle sang Glacier
Một trail cho mọi tài khoản; validation phát hiện sửa đổi; Object Lock chống xoá.
Sai: Dựa vào Event history của CloudTrail
Chỉ 90 ngày, theo từng tài khoản.
5Cần biết ai đã tải xuống một file nhạy cảm trong bucket S3.
Xem đáp án
Đúng: Bật CloudTrail data event cho bucket đó (hoặc S3 server access logging)
Data event ghi từng lần đọc / ghi object; có tính phí theo số sự kiện.
Sai: Event history của CloudTrail
Chỉ có management event; GetObject là data event.
6Ứng dụng web ghi log ra CloudWatch Logs; cần alarm khi số lỗi HTTP 500 trên 50 trong 5 phút.
Xem đáp án
Đúng: Metric filter trên log group đếm dòng chứa "500", alarm trên metric đó
Metric filter biến log thành metric để đặt alarm.
Sai: CloudTrail
Không đọc log ứng dụng.
7Ứng dụng serverless (API Gateway → Lambda → DynamoDB) thỉnh thoảng chậm; cần tìm đoạn nào gây chậm.
Xem đáp án
Đúng: Bật AWS X-Ray tracing cho API Gateway và Lambda
Trace cho thấy thời gian từng đoạn và service map.
Sai: CloudTrail
Ghi lệnh API quản trị, không đo độ trễ request.
8Đội vận hành cần vào shell EC2 trong subnet private, công ty cấm mở cổng 22 và không muốn có bastion.
Xem đáp án
Đúng: Systems Manager Session Manager (SSM agent + IAM role; VPC endpoint ssm, ssmmessages, ec2messages)
Phiên đi qua kênh của SSM, phân quyền bằng IAM, log phiên vào S3 / CloudWatch Logs.
Sai: Bastion host ở subnet public
Đề cấm bastion và vẫn phải mở 22.
9Cần dựng môi trường giống hệt ở Region thứ hai để DR, và triển khai cùng cấu hình bảo mật cho 50 tài khoản.
Xem đáp án
Đúng: CloudFormation template; StackSets để triển khai ra nhiều tài khoản / Region
Hạ tầng dạng code, lặp lại giống hệt; drift detection phát hiện sửa tay.
Sai: Làm tay theo tài liệu
Chậm, dễ lệch.
10Cần tự động thông báo cho đội khi AWS lên lịch bảo trì phần cứng ảnh hưởng EC2 của mình.
Xem đáp án
Đúng: Sự kiện AWS Health → luật EventBridge → SNS / Lambda
AWS Health gửi sự kiện về sự cố và bảo trì liên quan tài nguyên của bạn.
Sai: CloudWatch metric CPU
Không biết lịch bảo trì.
Chọn nhanh
Cần theo dõi / quản lý gì?
| Khi cần | Dùng |
|---|---|
| Cảnh báo theo metric và tự hành động (scale, recover, SNS) | CloudWatch alarm · xem sơ đồ |
| Metric bộ nhớ, đĩa, log ứng dụng từ EC2 / on-prem | CloudWatch agent · xem sơ đồ |
| Đếm lỗi trong log rồi cảnh báo | Metric filter + alarm · xem sơ đồ |
| Ai đã gọi API gì | CloudTrail (trail / organization trail) · xem sơ đồ |
| Ai đã đọc / ghi object S3 | CloudTrail data event · xem sơ đồ |
| Lịch sử cấu hình, kiểm tra tuân thủ, tự sửa | AWS Config rules + remediation · xem sơ đồ |
| Đẩy log sang S3 / OpenSearch gần thời gian thực | Subscription filter → Firehose · xem sơ đồ |
| Tìm đoạn chậm trong microservices | AWS X-Ray · xem sơ đồ |
| Vào máy không SSH, vá, chạy lệnh hàng loạt | Systems Manager · xem sơ đồ |
| Hạ tầng dạng code, nhiều tài khoản / Region | CloudFormation StackSets · xem sơ đồ |
| Biết về sự cố / bảo trì của AWS ảnh hưởng mình | AWS Health + EventBridge · xem sơ đồ |
| Gợi ý tiết kiệm, bảo mật, giới hạn dịch vụ | Trusted Advisor |
Bẫy hay gặp
- Tìm metric bộ nhớ có sẵn của EC2: phải cài CloudWatch agent.
- Nghĩ detailed monitoring cho thêm metric: nó chỉ đổi chu kỳ 5 phút thành 1 phút.
- Dùng CloudWatch để trả lời "ai đã làm": đó là CloudTrail.
- Dùng CloudTrail để kiểm tra cấu hình có đúng luật không: đó là AWS Config.
- Tin rằng Event history giữ mãi: chỉ 90 ngày, chỉ management event.
- Quên bật data event nên không thấy ai đọc object S3.
- Để log group giữ mãi mãi rồi bất ngờ vì hoá đơn lưu trữ log.
- Mở cổng 22 và dựng bastion trong khi Session Manager làm được mà không cần cả hai.
- Máy trong subnet private không có VPC endpoint của SSM (hay NAT) nên không hiện trong Systems Manager.
- Dùng X-Ray để kiểm toán thay đổi cấu hình, hoặc CloudTrail để đo độ trễ.
- Sửa tay tài nguyên do CloudFormation tạo rồi stack lệch (drift).
Dịch vụ trong module
CloudWatchđo lường & cảnh báo
CloudWatch Logslưu và tìm log
CloudTrailnhật ký ai gọi API gì
Configghi nhận và đánh giá cấu hình
Systems Managerquản lý máy & cấu hình
CloudFormationhạ tầng bằng code
X-Raytruy vết request phân tán
EventBridgeđịnh tuyến sự kiện
Health Dashboardtrạng thái sức khoẻ dịch vụ AWS
Trusted Advisortư vấn tối ưu tài khoản tự động
Organizationsquản lý nhiều tài khoản
Số liệu dễ thay đổi (đã kiểm với tài liệu AWS)
- Metric CloudWatch: dưới 60 giây giữ 3 giờ; 1 phút giữ 15 ngày; 5 phút giữ 63 ngày; 1 giờ giữ 455 ngày. Custom metric high-resolution 1 giây; alarm high-resolution chu kỳ 10 hoặc 30 giây. kiểm ngày 2026-10-16 ↗
- EC2 basic monitoring: metric 5 phút (status check 1 phút), miễn phí; detailed monitoring: 1 phút, tính phí theo metric. kiểm ngày 2026-10-16 ↗
- Metric bộ nhớ (mem_used_percent), đĩa (disk_used_percent) do CloudWatch agent thu, thêm vào metric mặc định của EC2. kiểm ngày 2026-10-16 ↗
- CloudWatch Logs mặc định lưu log vô thời hạn; retention đặt theo từng log group. kiểm ngày 2026-10-16 ↗
- CloudTrail Event history: 90 ngày management event mỗi Region, miễn phí, không gồm data event. kiểm ngày 2026-10-16 ↗
- Trail và event data store không ghi data event mặc định; ghi data event tính phí thêm. kiểm ngày 2026-10-16 ↗