Servisphere

Module 9 · SAA-C03

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ớ

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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.
  9. 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 đó.
  10. 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.
  11. 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.
  12. 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.
  13. 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

CloudWatch alarm: từ metric tới hành độngAuto Scaling group112thêm máy333EC2EC2MetricCPUUtilizationAlarm> 70% trong 3 × 1 phútScaling policySNS → emailEC2 action: recoverStatusCheckFailed_System
Metric vượt ngưỡng đủ số chu kỳ thì alarm chuyển sang ALARM và chạy hành động: thêm máy, báo đội, hay tự khôi phục instance lỗi phần cứng.

Từng bước

  1. EC2 gửi metric (5 phút; bật detailed monitoring để có 1 phút).
  2. 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.
  3. 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

CloudWatch agent: metric trong hệ điều hành và log ứng dụngEC2 / máy on-prem1112222Ứng dụng/var/log/app.logCloudWatch agentCustom metricmem_used_percentLog groupretention 30 ngàyMetric filterđếm "ERROR"AlarmSNS
Agent đọc bộ nhớ, đĩa và file log trên máy (EC2 hoặc on-prem). Metric filter đếm lỗi trong log để đặt alarm; Logs Insights để truy vấn.

Từng bước

  1. Agent gửi metric bộ nhớ / đĩa (namespace CWAgent) và đẩy file log vào log group.
  2. 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

CloudTrail: organization trail tới tài khoản log riêngAWS Organizations112lifecycle23metric filter3Tài khoản ProdTài khoản DevOrganization trailmanagement + data eventS3 (Object Lock)log file validationGlacier (7 năm)CloudWatch LogsAlarm: root login
Một trail cho mọi tài khoản và Region. Log vào bucket S3 ở tài khoản log (Object Lock, validation) và CloudWatch Logs để cảnh báo hành động nhạy cảm.

Từng bước

  1. Trail tạo ở tài khoản quản lý ghi API của mọi tài khoản thành viên.
  2. Log vào bucket ở tài khoản log, chống sửa / xoá; lifecycle chuyển sang Glacier để giữ lâu, rẻ.
  3. Đồ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

AWS Config: phát hiện cấu hình sai và tự sửa1112NON_COMPLIANT33sửa lại3Security groupvừa mở cổng 22Bucket S3EBS volumeConfig recorderlịch sử cấu hìnhConfig rulerestricted-sshSSM Automationgỡ luật 0.0.0.0/0EventBridge → SNS
Recorder ghi mọi thay đổi cấu hình. Config rule đánh giá tài nguyên; không tuân thủ thì chạy remediation bằng Systems Manager Automation.

Từng bước

  1. Mỗi thay đổi cấu hình được ghi thành configuration item.
  2. Config rule đánh giá ngay khi cấu hình đổi (hoặc theo chu kỳ).
  3. 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

Gom log về S3 và OpenSearch bằng subscription filter111subscription filter222LambdaEC2 (agent)VPC Flow LogsLog groupsLogs InsightsFirehoseS3Athena truy vấnOpenSearch
Subscription filter đẩy log gần thời gian thực sang Firehose; Firehose ghi S3 (lưu lâu, Athena) và OpenSearch (tìm kiếm, dashboard).

Từng bước

  1. Log từ Lambda, EC2, VPC Flow Logs vào CloudWatch Logs (truy vấn nhanh bằng Logs Insights).
  2. 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ụ

X-Ray: theo dấu một request qua nhiều dịch vụ111chậm12trace2Người dùngAPI Gateway120 msLambda80 msDynamoDB8 msAPI bên ngoài1.900 msX-Rayservice map
Mỗi dịch vụ ghi segment kèm trace ID; X-Ray ghép lại thành service map và cho thấy đoạn nào chậm hay lỗi.

Từng bước

  1. 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.
  2. 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

Systems Manager quản lý EC2 trong subnet privateVPCSubnet privateSession Manager1222Kỹ sư vận hànhIAMSystems ManagerVPC endpointssm, ssmmessages, ec2messagesEC2 + SSM agentkhông mở cổng 22EC2 + SSM agent
SSM agent trên máy kết nối ra dịch vụ qua VPC endpoint (không cần NAT, không mở cổng vào). Session Manager thay SSH và bastion; Patch Manager vá theo lịch.

Từng bước

  1. Kỹ sư mở phiên từ console / CLI; quyền kiểm soát bằng IAM, phiên được ghi log.
  2. 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

CloudFormation StackSets: một template, nhiều tài khoản và Regionap-southeast-1us-east-1 (DR)1222TemplateGitStackSetStack ProdStack DevStack DR
Template mô tả hạ tầng; StackSets tạo stack giống hệt ở các tài khoản / Region đích. Drift detection cho biết tài nguyên nào bị sửa tay.

Từng bước

  1. Template trong Git là nguồn duy nhất của hạ tầng.
  2. 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

AWS Health: tự động phản ứng với sự cố và bảo trì của AWS122AWS Healthbảo trì EC2 theo lịchEventBridge ruleSNS → đội trựcLambdastop / start để dời máy
AWS Health gửi sự kiện liên quan tài nguyên của bạn vào EventBridge; luật gửi thông báo hoặc chạy tự động hoá.

Từng bước

  1. 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.
  2. 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

CloudWatchCloudTrailAWS Config
Trả lờiHệ 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ệuMetric, log, trace (X-Ray / Application Signals)Sự kiện API (management, data, Insights)Configuration item theo thời gian
Hành độngAlarm → SNS, Auto Scaling, EC2 actionGửi log tới S3 / CloudWatch Logs; EventBridgeConfig rule → remediation (SSM Automation)
Ví dụ đềCPU vượt 80% thì thêm máyAi đã xoá security group?Bucket nào đang public? Volume nào chưa mã hoá?

Lưu giữ dữ liệu

LoạiGiữ bao lâu
Metric độ phân giải dưới 60 giây3 giờ
Metric 1 phút15 ngày
Metric 5 phút63 ngày
Metric 1 giờ455 ngày (15 tháng)
CloudWatch LogsMặc định không bao giờ hết hạn (tự đặt retention)
CloudTrail Event history90 ngày, chỉ management event
CloudTrail trailTuỳ bạn (log nằm trong S3 của bạn)

Systems Manager: chọn tính năng

CầnTính năng
Vào shell của EC2 mà không mở cổng 22, có log phiênSession Manager
Vá hệ điều hành theo lịch cho cả đội máyPatch Manager + Maintenance Window
Chạy một lệnh trên hàng trăm máyRun 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ầnDù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-premCloudWatch agent · xem sơ đồ
Đếm lỗi trong log rồi cảnh báoMetric filter + alarm · xem sơ đồ
Ai đã gọi API gìCloudTrail (trail / organization trail) · xem sơ đồ
Ai đã đọc / ghi object S3CloudTrail data event · xem sơ đồ
Lịch sử cấu hình, kiểm tra tuân thủ, tự sửaAWS Config rules + remediation · xem sơ đồ
Đẩy log sang S3 / OpenSearch gần thời gian thựcSubscription filter → Firehose · xem sơ đồ
Tìm đoạn chậm trong microservicesAWS X-Ray · xem sơ đồ
Vào máy không SSH, vá, chạy lệnh hàng loạtSystems Manager · xem sơ đồ
Hạ tầng dạng code, nhiều tài khoản / RegionCloudFormation StackSets · xem sơ đồ
Biết về sự cố / bảo trì của AWS ảnh hưởng mìnhAWS 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

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 ↗
Luyện câu hỏi module này →