はじめに
AWS Solutions Architect Associate (SAA) の学習中に整理した CloudWatch / CloudTrail / AWS Config / Systems Manager 関連の知識をまとめました。
この4つのサービスの使い分けは試験で超頻出であり、正確に理解しておくことが重要です。
本記事は個人の学習ノートをベースにしています。誤りがあればコメントでご指摘いただけると助かります。
サービス概要
CloudWatch vs CloudTrail vs Config(超頻出の使い分け)
| サービス | 用途 | キーワード |
|---|---|---|
| CloudWatch | パフォーマンス監視、メトリクス、アラーム、ログ | 「監視」「アラート」「メトリクス」 |
| CloudTrail | API コールの記録、誰が何をしたかの監査 | 「誰が」「API コール」「アカウントアクティビティ」 |
| AWS Config | リソース設定の評価・履歴・コンプライアンス | 「設定変更」「コンプライアンス」「設定履歴」 |
覚え方として以下のように整理すると分かりやすいです。
- CloudWatch = 「リソースのパフォーマンスはどうか?」
- CloudTrail = 「誰がこのリソースを変更したか?」
- Config = 「このリソースの設定は過去どうだったか?コンプライアンスを満たしているか?」
EC2 CloudWatch 監視の種類
| タイプ | 間隔 | 追加料金 | セットアップ |
|---|---|---|---|
| Basic Monitoring | 5分 | 無料 | 不要 |
| Detailed Monitoring | 1分 | 有料(少額) | 有効化のみ |
| CloudWatch Agent | 1秒〜 | 有料 | エージェントインストール |
EC2 の標準メトリクスにはメモリが含まれない点に注意してください。メモリやディスク使用率を監視するには CloudWatch Agent が必要です。
CloudWatch Alarm EC2 アクション
| アクション | 用途 |
|---|---|
| Reboot | Instance Health Check 失敗時(アプリ / OS の問題) |
| Recover | System Health Check 失敗時(ハードウェア障害) |
| Stop | インスタンス停止 |
| Terminate | インスタンス終了 |
CloudWatch Alarm は Lambda を介さずに EC2 アクションを直接実行できます。
CloudWatch Logs Agent
- インスタンス上のログを CloudWatch Logs に自動送信
- インスタンス終了後もログが残る
- ASG などエフェメラルなインスタンスではベストプラクティス
AWS Config
- リソース設定の評価・履歴・コンプライアンス
- マネージドルール(例: ACM 証明書期限チェック)が用意されている
- SNS 通知と統合可能
AWS Systems Manager
- EC2 / オンプレの統合管理
- Default Host Management Configuration: 既存 IAM ロールを変更せず SSM を有効化
-
Automation:
AWSEC2-PatchLoadBalancerInstance等で ALB 配下の EC2 パッチを自動化 - Maintenance Windows: スケジュール管理
- Session Manager: SSH 不要でインスタンスにアクセス
コスト最適化ツール
| ツール | 用途 | できないこと |
|---|---|---|
| Cost Optimization Hub | コスト最適化推奨の一元管理 | - |
| Compute Optimizer | EC2 インスタンスタイプ推奨 | 購入オプション推奨なし |
| Trusted Advisor | RI 期限切れ通知、アイドル RDS 検出等 | RI の自動更新なし |
| S3 Storage Class Analysis | Standard → Standard-IA 遷移推奨 | Glacier / One Zone-IA 推奨なし |
試験で問われる設計パターン
CloudWatch 系
EC2 フリーズの自動リブート → CloudWatch Alarm + EC2 Reboot Action
シナリオ: EC2 インスタンスが時々フリーズします。フリーズを検知したら自動リブートさせたいですが、最も運用負荷の低い方法は?
正解: CloudWatch Alarm + EC2 Reboot Alarm Action
- CloudWatch Alarm は直接 EC2 アクションを実行可能
- Lambda 経由は不要(リソース非効率)
単一 EC2 の自動復旧 → CloudWatch アラーム + Recovery Action
シナリオ: 単一の EC2 インスタンスにハードウェア障害が発生した場合、同じ IP アドレスを維持したまま自動復旧させたいです。
正解: CloudWatch アラームで自動復旧
- Instance Store では自動復旧不可(EBS のみ)
- システムステータスチェック失敗時のみトリガー
ASG でインスタンス終了後にログが消える → CloudWatch Logs Agent
シナリオ: Auto Scaling Group のインスタンスが終了すると、アプリケーションログも一緒に消えてしまいます。
正解: CloudWatch Logs Agent をインストール
- 終了後もログが CloudWatch Logs に残る
- スナップショットの取得は過剰
EC2 パフォーマンス監視 + 2分以内の間隔 → Detailed Monitoring
シナリオ: EC2 の CPU 使用率を2分以内の粒度で監視したいです。運用の手間は最小限にしたいです。
正解: EC2 Detailed Monitoring
- Detailed = 1分間隔(有効化するだけ)
- CloudWatch Agent はメモリ / ディスク / カスタムメトリクスが必要な場合のみ
Config 系
リソース設定のコンプライアンス + 設定履歴 → AWS Config
シナリオ: EC2 や S3 の設定がコンプライアンスを満たしているか評価し、設定の変更履歴も追跡したいです。
正解: AWS Config
- CloudWatch = パフォーマンス監視
- CloudTrail = API コール監査
- Config = 設定変更・履歴・コンプライアンス
ACM インポート証明書の期限監視 → Config managed rule + SNS
シナリオ: ACM にインポートした SSL 証明書の有効期限を監視し、期限が近づいたら通知したいです。
正解: AWS Config managed rule + SNS 通知
- ACM が発行した証明書は自動更新されるため監視不要
- インポート証明書は手動更新が必要 → 監視が必要
- Config managed rule はプリセットで工数最小
Systems Manager 系
EC2 パッチ管理の自動化 + 既存 IAM ロール維持 → Default Host Management Configuration
シナリオ: EC2 のパッチ管理を自動化したいですが、既存の IAM ロールは変更したくないです。
正解: SSM Quick Setup - Default Host Management Configuration
- 既存 IAM ロールを変更せず SSM 機能を有効化
- EC2 には1つの IAM ロールしかアタッチできない
- Hybrid Activation はオンプレ / 非 EC2 用
ALB 配下 EC2 の安全なパッチ適用 → SSM Automation + Maintenance Windows
シナリオ: ALB 配下の EC2 にサービスを中断せずにパッチを適用したいです。(2つ選択)
正解:
- SSM Automation +
AWSEC2-PatchLoadBalancerInstanceドキュメント - SSM Maintenance Windows でスケジュール管理
- ALB からの除外 → パッチ → 再登録を全自動
- ネットワーク無効化は SSM 通信が切断されて失敗する
コスト最適化ツール系
AWS コスト最適化ツールの使い分け
シナリオ: AWS のコストを最適化するために適切なツールを選びたいです。
ポイント:
- Trusted Advisor は RI の自動更新はしない
- Compute Optimizer は購入オプションの推奨はしない
- S3 Storage Class Analysis は Glacier への遷移は推奨しない
CloudFormation 系
ベストプラクティスを再利用可能なインフラテンプレートに → CloudFormation
シナリオ: インフラのベストプラクティスをテンプレート化して再利用したいです。
正解: AWS CloudFormation
- IaC でベストプラクティスをコード化
- Trusted Advisor は推奨のみ(テンプレート作成不可)
おわりに
CloudWatch / CloudTrail / Config の3つの使い分けは SAA の最頻出トピックの一つです。「パフォーマンス → CloudWatch」「誰が変更した → CloudTrail」「設定履歴・コンプライアンス → Config」と覚えておけば迷いません。Systems Manager は「パッチ自動化 + ALB 連携」のパターンを押さえておきましょう。
間違いや補足があればぜひコメントで教えてください。