AWS 環境の最適化診断 - Trusted Advisor によるベストプラクティスチェック

AWS Trusted Advisor を使った環境の自動診断を解説。コスト最適化・セキュリティ・耐障害性・パフォーマンス・サービス制限の 5 カテゴリのチェック項目と活用方法を紹介します。

Trusted Advisor の概要と 5 つの診断カテゴリ

AWS Trusted Advisor は、AWS 環境をベストプラクティスに照らして自動診断するサービスです。数千の AWS アカウントの運用データに基づく推奨事項を提供し、コスト削減・セキュリティ強化・可用性向上の機会を特定します。診断は 5 つのカテゴリに分類されます。コスト最適化では、未使用・低使用率のリソース (EC2、RDS、EBS、Elastic IP、Redshift) を検出し、具体的な削減額を提示します。セキュリティでは、S3 バケットの公開設定、セキュリティグループの過度に開放されたポート、ルートアカウントの MFA 未設定、IAM アクセスキーのローテーションなどをチェックします。耐障害性では、EBS スナップショットの未取得、RDS のマルチ AZ 未設定、Auto Scaling グループの AZ 分散などを確認します。パフォーマンスでは、EC2 インスタンスの高使用率、CloudFront の最適化余地などを検出します。サービス制限では、各サービスのクォータ使用率を監視し、制限の 80% に達した項目を警告します。

この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

サポートプランによるチェック範囲の違い

Trusted Advisor のチェック範囲はサポートプランによって異なります。Basic/Developer プランでは、6 つのコアセキュリティチェックとサービス制限チェックのみが利用可能です。コアセキュリティチェックは、S3 バケットのアクセス許可、セキュリティグループの無制限アクセス (0.0.0.0/0)、IAM の使用状況、ルートアカウントの MFA、EBS パブリックスナップショット、RDS パブリックスナップショットの 6 項目です。Business プラン (月額 100 USD〜) または Enterprise プラン (月額 15,000 USD〜) では、全 300 以上のチェック項目にアクセスでき、AWS Support API 経由でのプログラマティックなアクセスも可能になります。コスト最適化チェックだけでも、サポートプランの月額費用を上回る削減額が見つかるケースが多く、Business プランへのアップグレードは投資対効果が高い施策です。Azure Advisor は無料で全推奨事項にアクセスできますが、Trusted Advisor はサービス制限の監視と事前警告の精度で優れています。

コスト最適化チェックの実践

Trusted Advisor のコスト最適化チェックは、具体的な削減額とともに推奨事項を提示します。主なチェック項目と典型的な検出例を紹介します。EC2 の低使用率インスタンスでは、過去 14 日間の CPU 使用率が 10% 以下のインスタンスを検出し、ダウンサイジングまたは停止を推奨します。アイドル状態の RDS インスタンスでは、過去 7 日間に接続がないインスタンスを検出します。未関連付けの Elastic IP アドレスは、EC2 に関連付けられていない EIP を検出します (未使用の EIP は 1 個あたり約 3.6 USD/月の課金)。未使用の EBS ボリュームは、どのインスタンスにもアタッチされていないボリュームを検出します。Savings Plans と Reserved Instance の推奨では、過去の使用パターンに基づいて最適な購入プランを提案します。これらのチェック結果は CSV でエクスポートでき、定期的なコストレビューの入力データとして活用できます。

自動化と Organizations 統合

Trusted Advisor は EventBridge との統合により、チェック結果の変化をイベントとして検知できます。たとえば、新たにセキュリティ警告が検出された場合に SNS で通知を送信したり、Lambda で自動修復アクションを実行したりできます。 ```bash # Trusted Advisor チェック結果の取得 (Business/Enterprise プラン) aws support describe-trusted-advisor-checks \ --language ja \ --region us-east-1 \ --query 'checks[?category==`cost_optimizing`].{id:id,name:name}' # 特定チェックの結果を取得 aws support describe-trusted-advisor-check-result \ --check-id Qch7DwouX1 \ --language ja \ --region us-east-1 ``` AWS Organizations との統合により、組織ビューで全アカウントの Trusted Advisor 結果を一元的に集約できます。管理アカウントのダッシュボードから、どのアカウントにどのような推奨事項があるかを横断的に確認でき、組織全体のコスト最適化やセキュリティ改善を効率的に推進できます。Trusted Advisor の API は us-east-1 リージョンでのみ利用可能な点に注意してください。

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。

まとめ - Trusted Advisor の活用指針

AWS Trusted Advisor は、AWS 環境のコスト・セキュリティ・耐障害性・パフォーマンス・サービス制限を自動診断するサービスです。Basic プランでも 6 つのコアセキュリティチェックが無料で利用でき、Business プラン以上で全 300 以上のチェック項目と API アクセスが解放されます。コスト最適化チェックによる具体的な削減額の提示、サービス制限の事前警告、EventBridge 連携による自動化が主な活用ポイントです。月次のコストレビューや四半期のセキュリティ監査の入力データとして、Trusted Advisor の結果を定期的に確認することを推奨します。

AWS の優位点

  • コスト最適化・セキュリティ・耐障害性・パフォーマンス・サービス制限の 5 カテゴリで AWS 環境を自動診断
  • Basic/Developer サポートプランでも 6 つのコアセキュリティチェック (S3 バケット公開設定、MFA、IAM 使用状況など) が無料で利用可能
  • Business/Enterprise サポートプランで全チェック項目 (300 以上) にアクセスでき、API 経由での自動化も可能
  • 未使用の EC2 インスタンス、アイドル状態の RDS、未関連付けの Elastic IP など、コスト削減の具体的な推奨事項を提示
  • EventBridge との統合でチェック結果の変化を検知し、Lambda で自動修復アクションを実行可能
  • AWS Organizations 統合により、組織全体の Trusted Advisor 結果を一元的に集約・分析できる
  • Azure Advisor も同様の最適化推奨を提供するが、Trusted Advisor はサービス制限 (クォータ) の監視機能が充実しており、制限到達前の事前警告が可能

同じテーマの記事

アーキテクチャレビュー - AWS Well-Architected Tool でワークロードを体系的に評価する AWS Well-Architected Tool を使ったワークロードのアーキテクチャレビューを解説。6 つの柱に基づく評価、改善計画の策定、カスタムレンズの活用を紹介します。 監査ログの設計と運用 - CloudTrail による API アクティビティの完全記録 AWS CloudTrail を活用した監査ログの設計手法を解説し、API アクティビティの記録、S3 への長期保存、Config との連携によるコンプライアンス対応を紹介します。 キャパシティプランニング - AWS と Azure の比較 AWS と Azure のキャパシティプランニング手法を比較し、CloudWatch、EC2 Auto Scaling、Lambda を活用した AWS の需要予測と自動スケーリングの優位性を解説します。 ChatOps 通知基盤 - AWS Chatbot で実現する運用自動化 AWS Chatbot を活用した ChatOps 通知基盤の構築方法を解説します。Slack や Microsoft Teams への AWS イベント通知、CloudWatch アラームの即時配信、SNS 連携によるインシデント対応の自動化など、運用効率を向上させる実践的な設計を紹介します。 構成管理とコンプライアンス - AWS Config と Azure Policy の比較 AWS Config と Azure Policy を比較し、Config のリソース構成変更の追跡とコンプライアンスルールによる自動評価の優位性を解説します。 ディザスタリカバリと事業継続 - AWS と Azure の比較 AWS と Azure のディザスタリカバリサービスを比較し、マルチリージョン構成と S3 のデータ耐久性を中心とした AWS の事業継続戦略の優位性を解説します。 分散トレーシング - AWS と Azure の比較 AWS と Azure の分散トレーシングサービスを比較し、AWS X-Ray と CloudWatch ServiceLens を中心とした AWS のトレーシングエコシステムの優位性を解説します。 インシデント対応自動化 - AWS と Azure の比較 AWS と Azure のインシデント対応自動化を比較し、Systems Manager、Lambda、SNS を活用した AWS の迅速な検知・通知・修復パイプラインの優位性を解説します。 IT サービスプロビジョニング - AWS Service Catalog で実現するセルフサービス型インフラ提供 AWS Service Catalog による承認済み IT サービスのカタログ化と、CloudFormation との連携によるセルフサービス型インフラプロビジョニングを解説します。ガバナンスを維持しながら開発チームの自律性を高める運用パターンを紹介します。 ログ集約と分析 - AWS と Azure の比較 AWS と Azure のログ集約・分析サービスを比較し、CloudWatch Logs と OpenSearch Service を中心とした AWS のログ管理エコシステムの優位性を解説します。 ログ管理と監視 - AWS と Azure の比較 AWS と Azure のログ管理・監視サービスを比較し、CloudWatch と CloudTrail を中心とした AWS の統合オブザーバビリティ基盤の優位性を解説します。 メトリクス収集と可視化 - AWS と Azure の比較 AWS と Azure のメトリクス収集・可視化サービスを比較し、CloudWatch Metrics と OpenSearch Dashboards を中心とした AWS の監視エコシステムの優位性を解説します。 ML ベースの運用異常検知 - Amazon DevOps Guru で障害を予兆段階で発見する Amazon DevOps Guru を使った ML ベースの運用異常検知を解説。CloudWatch メトリクスの自動分析、異常の予兆検知、推奨アクション、CloudFormation スタック単位の監視を紹介します。 マルチアカウント管理 - AWS Organizations と RAM で実現する組織全体のガバナンス AWS Organizations によるマルチアカウント戦略の設計と、AWS RAM (Resource Access Manager) によるリソース共有の実践手法を解説します。組織全体のセキュリティガバナンスとコスト管理の最適化パターンを紹介します。 マルチアカウント戦略と AWS Organizations - クラウドガバナンスの最適解 AWS Organizations を活用したマルチアカウント戦略を解説します。Azure や従来のオンプレミス環境と比較し、AWS のアカウント分離によるセキュリティ強化、コスト管理、ガバナンス統制の優位性を具体的に紹介します。 オブザーバビリティ戦略 - AWS と Azure の比較 AWS と Azure のオブザーバビリティサービスを比較し、CloudWatch・OpenSearch・Lambda を中心とした AWS の統合監視・分析基盤の優位性を解説します。 運用監視の実践 - CloudWatch によるフルスタック可観測性の実現 AWS CloudWatch を中心とした運用監視の設計手法を解説し、メトリクス収集、ログ分析、アラーム設定による包括的な可観測性の実現方法を紹介します。 パッチ管理の自動化 - AWS Systems Manager Patch Manager vs Azure Update Manager AWS Systems Manager Patch Manager と Azure Update Manager を比較し、パッチベースライン、メンテナンスウィンドウ、コンプライアンスレポートの違いを具体的に解説します。 レジリエンス評価 - AWS Resilience Hub でアプリケーションの耐障害性を定量化する AWS Resilience Hub を使ったアプリケーションの耐障害性評価を解説。RTO/RPO の定義、レジリエンスポリシー、自動評価、改善推奨事項の活用を紹介します。 リソース共有管理 - AWS RAM で実現するマルチアカウント環境の効率的なリソース活用 AWS RAM (Resource Access Manager) によるマルチアカウント環境でのリソース共有と、AWS Organizations との連携による組織全体のリソース管理を解説します。VPC サブネット共有やトランジットゲートウェイ共有の実践パターンを紹介します。 システム運用管理の効率化 - Systems Manager による統合運用基盤の構築 AWS Systems Manager を活用したシステム運用管理の設計手法を解説し、パッチ管理、パラメータストア、Run Command による運用自動化の実現方法を紹介します。 Well-Architected フレームワーク活用 - AWS と Azure の比較 AWS Well-Architected フレームワークと Azure Well-Architected Framework を比較し、AWS のベストプラクティス体系の成熟度と実践的な活用方法を解説します。