🎯一句話總覽:
服務名 | 類比/角色 | 主要功能 |
---|---|---|
CloudTrail | 監控攝像頭錄像回放 | 記錄“誰在什么時候做了什么操作” |
CloudWatch | 護士測體溫 + 護士喊醫生 | 實時監控系統狀態,并能報警/自動應對 |
AWS Config | 保安巡邏 + 記錄資產變更歷史 | 記錄 AWS 資源的“配置狀態變化” & 是否合規 |
🕵??♂? CloudTrail = 錄像機(誰干了什么)
你說它像 ELK Stack,用于記錄日志供后期審計用 —— 完全正確!
-
它記錄的是 “管理操作”層面 的日志(也就是 API 調用):
- 誰登錄了?
- 誰訪問了哪個 S3 桶?
- 誰關了 EC2?
- 哪個 IAM 政策被改了?
🧠 類比:
CloudTrail 像一個全天開啟的監控攝像頭 + 日志錄像機,你事后能查誰干了什么。
🛡? 安全合規審計的必備工具。
👀 CloudWatch = 護士 + 報警器 + 儀表盤
CloudWatch 是 AWS 的統一監控平臺,你說的也對:
-
監控“指標”(Metric):
- CPU > 90%
- 內存占用高
- 請求出錯率高
-
設置“報警”(Alarm):
- 指定閾值觸發通知(SNS、自動重啟、Lambda 執行等)
-
還能查看“日志”(Log):
- 應用寫入 CloudWatch Logs,集中查看調試輸出
🧠 類比:
CloudWatch 就像醫院護士站:
- 持續檢測每個病人的指標(CPU、內存)
- 觸發報警器(通知或自動處理)
- 日志查看記錄(像病歷本)
🧬 AWS Config = 資源追蹤記錄員 + 合規巡邏員
這是你最疑惑的一個。它和 etcd、zookeeper 完全不是一類東西。
它不是配置中心,不是程序讀配置的地方。
? AWS Config 是干嘛的?
它記錄的是:你所有 AWS 資源的“配置快照” 和“變化歷史”。
比如:
- 某個 EC2 的安全組變了
- 某個 IAM Policy 被修改了
- 某個 S3 桶的公開訪問被打開了
它還能:
-
對你的資源狀態進行“合規性檢測”:
- S3 桶是否加密?
- EBS 是否啟用備份?
- 安全組是否開放 22 端口?
🧠 類比:
AWS Config 像一個“自動記錄資產狀態變更 + 安全審計規則引擎”
🚨三者的本質區別總結
服務名 | 監控對象 | 記錄內容 | 是否實時觸發 | 是否做合規判斷 |
---|---|---|---|---|
CloudTrail | 人(API 調用) | 誰做了什么操作 | ? 事后查閱 | ?(可配合 Config) |
CloudWatch | 系統(資源指標) | CPU、內存、錯誤率、日志等 | ? 支持報警觸發 | ? |
AWS Config | 資產狀態 | 資源配置變化 & 是否合規 | ? 可檢測不合規 | ? 合規規則支持 |
? 場景對比記憶法:
場景 | 用哪個服務? |
---|---|
誰昨天凌晨關了 EC2? | CloudTrail(操作審計) |
我的 EC2 CPU 快滿了,自動重啟它 | CloudWatch(資源指標 + 自動處理) |
我的某個 S3 桶是不是公開的,合規嗎? | AWS Config(資源狀態 + 合規檢測) |
代碼里想要讀取某個配置值(配置中心) | ? 沒有內建服務,需用 Parameter Store 或 Secrets Manager |
想看每次安全組配置變更的記錄 | AWS Config(記錄變化歷史) |