このガイドは、AWS認定試験で問われる重要なポイントを体系的にまとめたものです。前回のガイドに追加して、さらに詳細な内容と新たな試験ポイントを解説しています。
目次
- セキュリティとコンプライアンス
- ネットワークとコンテンツ配信
- デプロイ、プロビジョニング、およびオートメーション
- モニタリング、ロギング、および修復
- 信頼性と事業の継続性
- コストとパフォーマンスの最適化
1. セキュリティとコンプライアンス
1.1 監査とコンプライアンス
重要ポイント:
- 監査人へのアクセス権限の適切な付与方法
- AWS CloudTrailの証跡設定と監査ログの管理
試験ポイント:
- 監査人にAWSリソースへのアクセスを許可する最適な方法は、CloudTrailログの証跡を有効化し、S3バケットにログを保存した上で、必要なリソースアクセス権限のみを付与したIAMロールを作成して監査人アカウントにアクセス権限を委譲すること
- 監査人に直接IAMユーザーを付与するのではなく、一時的なアクセス権限の委譲にはIAMロールを使用するのがベストプラクティス
1.2 AWS Organizations とアクセス管理
重要ポイント:
- AWS Organizationsの機能と設定
- サービスコントロールポリシー(SCP)とIAMポリシーの関係
- アクセス許可の境界(Permission Boundaries)の活用
試験ポイント:
- AWS Organizationsでは「すべての機能」を選択することで、CloudTrailの「組織の証跡」を有効にし、全アカウントを一元的に監視可能
- SCPとIAMポリシーの両方が許可している場合のみ、ユーザーはリソースにアクセス可能(両方が「明示的に許可」かつ「明示的に拒否されていない」場合)
- アクセス許可の境界は、IAMエンティティに付与できるアクセス許可の最大範囲を制限する機能
- AWS Organizationsからメンバーアカウントを削除する際は、そのアカウントがスタンドアロンアカウントとして機能するために必要な情報(支払い方法など)が設定されている必要がある
1.3 暗号化とデータ保護
重要ポイント:
- Amazon Redshiftのデータ暗号化オプション
- CloudTrailログの暗号化
- S3バケットのアクセス制御と参照元(Referer)による制限
試験ポイント:
- Amazon Redshiftでは、AWS KMSまたはハードウェアセキュリティモジュール(HSM)を用いて暗号化キーを管理可能
- CloudTrailログファイルは初期設定でサーバーサイド暗号化(SSE)が適用されており、特別な操作なしで自動的に暗号化される
- S3バケットポリシーでは、aws:Refererキーを使用して特定のウェブサイトからのみアクセスを許可するように制限可能
1.4 セキュリティ対策
重要ポイント:
- サイバー攻撃(SQLインジェクション、XSS、DDoS)への対策
- VPC内のアウトバウンドアクセス制御
- EC2インスタンスへのタグベースのアクセス制御
試験ポイント:
- SQLインジェクション、XSS、DDoS攻撃に対しては、AWS Shield AdvancedとAWS WAFを組み合わせた防御が最適
- VPC内のEC2インスタンスが特定のURLにのみアクセスできるようにするには、プロキシサーバーをVPC内に設置し、URLベースルールによるアウトバウンドアクセス制御を実施
- 本番環境と開発環境のEC2インスタンスを区別し、アクセス制御するには、タグを設定してIAMポリシーで権限を割り振る方法が最適
1.5 認証と認可
重要ポイント:
- AWS Security Token Service(STS)の活用
- ウェブIDフェデレーション
- AWS Nitro Enclavesの活用
試験ポイント:
- STSによる一時認証方式として、ウェブIDフェデレーションが利用可能
- CloudFrontとオリジン(EC2インスタンス)間のHTTPS通信を設定するには、AWS Nitro Enclavesを活用してACM証明書を適用可能
- AWS Nitro Enclavesを利用することで、EC2インスタンス上のウェブアプリケーションにACM発行のSSL/TLS証明書を適用可能
2. ネットワークとコンテンツ配信
2.1 VPCとサブネット設計
重要ポイント:
- CIDRブロックの設計と重複の回避
- プライベートサブネットからのインターネットアクセス制御
- セキュリティグループとネットワークACLの適切な設定
試験ポイント:
- VPCとサブネットのCIDRブロックが重複すると、CIDR重複エラーが発生する
- EC2インスタンスからHTTPプロトコルを経由したインターネットへのアクセスを可能にするには、セキュリティグループにポート80経由でCIDR 0.0.0.0/0に通信することを許可するアウトバウンドルールを追加する必要がある
- CloudFormationでEC2インスタンスのセキュリティグループを設定する際、特定IPからのSSH接続を許可するには、ポート22に対するアクセスを設定し、IPアドレスを/32サブネットマスクで指定する
2.2 ロードバランシングとトラフィック管理
重要ポイント:
- ALBとNLBの特性と使い分け
- ALBのリスナー設定とHTTPS対応
- CloudFrontディストリビューションの設定と最適化
試験ポイント:
- 静的IPアドレスが必要な場合は、ALBではなくNLBを利用する必要がある
- 既存のHTTPリスナーを持つALBにHTTPSリスナーを追加する場合、HTTPSポート443のリスナーを新たに追加し、HTTPリスナーをHTTPSへリダイレクトするように修正する
- CloudFrontディストリビューションからのみALBへのアクセスを制限するには、CloudFrontにカスタムヘッダーを付けてアクセスを制限し、ALBのセキュリティグループにCloudFrontのマネージドプレフィックスを設定する
2.3 CloudFrontの設定と最適化
重要ポイント:
- CloudFrontのキャッシュ設定とTTL調整
- CloudFrontのエラー対応
- CloudFrontとオリジン間の通信セキュリティ
試験ポイント:
- CloudFrontディストリビューションのTTLを調整するには、オリジンからの応答に応じて、Cache-Control:max-ageディレクティブをオリジン上のオブジェクトに追加する
- CloudFrontで「The request could not be satisfied. Bad Request.」エラーが発生する場合、POSTリクエストを実行したことによるエラーの可能性があり、CloudFrontはデフォルトではGETリクエストを必要とする
- CloudFrontのキャッシュヒット率を向上させるには、オリジンが一意のオブジェクトを返すクエリ文字列パラメータのみを転送するように設定し、Cache-Control max-ageに対して最も長い実用的な値を指定する
2.4 ネットワークセキュリティ
重要ポイント:
- サイバー攻撃からのネットワーク保護
- DNS Firewallの活用
- VPCフローログの設定と分析
試験ポイント:
- 特定のドメインやIPアドレスからの不正なリクエストを防ぐには、ネットワークACLを作成して特定のIPアドレスをブロックする拒否設定を追加し、DNSファイアウォールのドメインリストに基づいた拒否設定を行う
- VPCのネットワークインターフェイスにおける発信および着信のIPトラフィックに関するデータを収集するには、VPCフローログを設定する
- VPCフローログをCloudWatch Logsに公開するには、適切な権限を持つIAMロールをVPCフローログに設定する必要がある
3. デプロイ、プロビジョニング、およびオートメーション
3.1 CloudFormation
重要ポイント:
- テンプレートの構造と設計
- マッピング機能の活用
- スタックインスタンスのステータスとエラー対応
試験ポイント:
- CloudFormationテンプレートのマッピング機能を使用すると、リージョンに応じて別のAMIを設定可能
- CloudFormationスタックインスタンスのステータスが「OUTDATED」となる主な原因は、テンプレートで指定されているリソースを作成するターゲットアカウントのアクセス権限が不十分である場合や、CloudFormationテンプレートが作成するS3バケット名がグローバルに一意でない場合
- CloudFormationテンプレートでEC2インスタンスのセキュリティグループを設定する際、HTTP通信を無制限に許可するには、ポート80に対するアクセスを設定し、IPアドレス範囲を0.0.0.0/0に設定する
3.2 AWS Organizations
重要ポイント:
- AWS Organizationsの機能と設定
- 組織単位(OU)の管理
- メンバーアカウントの削除と管理
試験ポイント:
- AWS Organizationsには「すべての機能」と「一括請求機能」の2つの機能セットがあり、「すべての機能」を選択するとSCPなどの高度なアカウント管理機能を利用可能
- AWS OrganizationsのOU内でメンバーアカウントを削除しようとして「アクセスが拒否されました」というエラーが表示される場合、そのアカウントがスタンドアロンアカウントとして機能するために必要な情報(支払い方法など)が不足している可能性がある
- AWS Organizationsを利用して複数のアカウントを統合的に管理する場合、サービスコントロールポリシー(SCP)をOUにアタッチして各メンバーアカウントが利用するAWSサービスの拒否・許可設定を実施できる
3.3 インスタンスとストレージの管理
重要ポイント:
- EC2インスタンスストアの特性と制限
- AMIの管理とリージョン間コピー
- EBSボリュームの自動バックアップ
試験ポイント:
- インスタンスストアはEBSとは異なり、スナップショットを取得する機能を持たないため、バックアップするには新たにEBSボリュームを作成し、データをコピーする必要がある
- AMIを新しいリージョンにコピーしてインスタンスを作成した後、元のリージョンでAMIに変更を加えても、コピー先のAMIには反映されない
- EBSの自動バックアップを実現するには、Amazon Data Lifecycle Manager(DLM)によってバックアップ取得スケジュールを設定する
3.4 移行とハイブリッド環境
重要ポイント:
- オンプレミス環境からAWSへの移行方法
- AWS Storage Gatewayの設定
- キーペアの管理とリージョン間での再利用
試験ポイント:
- VMwareを用いて構築された多数の仮想サーバーをAmazon EC2に移行するには、AWS Application Migration Serviceを活用し、VMware環境にAWS MGNエージェントをインストールする
- AWS Storage GatewayのiSCSIイニシエータを使用する際、プレイバック攻撃を防ぐにはチャレンジハンドシェイク認証プロトコル(CHAP)を使用して接続を認証する
- 北米リージョンで使用している既存のキーペアを他のリージョンでも再利用するには、AWSマネジメントコンソールからインポートキーペア機能を利用して、PEMキーを別のリージョンに移行する
3.5 プレイスメントグループとインスタンス配置
重要ポイント:
- プレイスメントグループのタイプと使用シナリオ
- 分散処理とデータ複製のためのインスタンス構成
- 高性能コンピューティングの設定
試験ポイント:
- Hadoopを活用した大規模な分散処理およびデータの複製を行う場合、パーティションプレイスメントグループを設定した上でH1インスタンス群を起動するのが最適
- パーティションプレイスメントグループは、HDFS、HBase、Cassandraなどの大規模な分散および複製ワークロードを異なるラックに展開するために利用される
- H1インスタンスはビッグデータ解析に特化して設計されており、ローカル磁気ストレージ1テラバイトあたりのvCPUとメモリの数が増加し、ネットワーク帯域幅も拡大されている
4. モニタリング、ロギング、および修復
4.1 CloudWatch
重要ポイント:
- CloudWatchの基本モニタリングと詳細モニタリング
- CloudWatchエージェントの設定と活用
- CloudWatch Logsの設定とログ分析
試験ポイント:
- CloudWatchの基本モニタリングはデータを5分間隔で収集し、詳細モニタリングは1分間隔で収集する
- EC2インスタンスとオンプレミスインスタンスのログを監視するには、CloudWatchエージェントをEC2インスタンスにインストールし、ロググループにログデータを自動取得する設定を行う
- ログ情報を分析・可視化するには、CloudWatch Logs Insightsを利用する
4.2 アプリケーションモニタリングとトラブルシューティング
重要ポイント:
- AWS X-Rayの活用
- CloudWatch RUMの機能
- CloudWatch ServiceLensとSynthetics
試験ポイント:
- AWS X-Rayを利用することで、アプリケーションの問題を検出し、パフォーマンスの改善方法を把握できる
- Amazon CloudWatch RUMは、デバイス間でアプリケーションのパフォーマンスをほぼリアルタイムで確認し、クライアントサイドのパフォーマンスを監視する機能を提供
- Amazon CloudWatch Syntheticsは、REST API、URL、ウェブサイトコンテンツを24時間365日監視し、アプリケーションエンドポイントが期待通りに動作しない場合にアラートを発信
4.3 自動修復と通知
重要ポイント:
- CloudWatchアラームとアクション設定
- EventBridgeルールの活用
- GuardDutyとの連携
試験ポイント:
- EC2インスタンスを自動的に再起動するには、CloudWatchアラームを設定し、アプリケーションエラーに関連するキーワードをCloudWatchログから抽出してカスタムメトリクスとして設定する
- AWSマネジメントコンソールのルートユーザーのサインインイベントを検出してメール通知を受け取るには、Amazon EventBridgeルールを作成し、SNSトピックを関連付ける
- GuardDutyの脅威検出後の通知を設定するには、GuardDutyをAmazon EventBridgeルールに設定する
4.4 ログ管理と分析
重要ポイント:
- CloudTrailの設定と管理
- VPCフローログの活用
- ELBのログ設定
試験ポイント:
- 複数のリージョンにわたるAPIアクティビティを監視するには、1つのCloudTrailを全てのリージョンに適用し、そのCloudTrailから集めたログを1つのCloudWatch logsにログ情報を集約する
- ELBとEC2インスタンスの稼働状況を監視するには、ELBのログを有効化してCloudWatchのロググループに送信し、EC2にCloudWatch Agentによるログ取得を設定する
- ALBのアクセスログを有効にすることで、クライアントのIPアドレスとリクエストパスを確認できる
5. 信頼性と事業の継続性
5.1 高可用性設計
重要ポイント:
- Well-Architected Frameworkにおける信頼性の原則
- 水平スケーリングと障害の影響最小化
- マルチAZ配置とRoute53フェールオーバー
試験ポイント:
- リソースを水平方向にスケーリングするために小さなリソース単位に分割することで、障害の影響を最小限に抑えられる
- EC2インスタンスにAutoScalingを設定してELBグループにアタッチし、Route53を利用したフェールオーバー構成を取ることで、一時的なネットワーク問題などによるサービス中断のリスクを軽減できる
- 全てのEC2インスタンス間でトラフィックを均等に分配するには、ALBを作成し、ポート443を使用するように構成されたリスナーを追加し、EC2インスタンスをターゲットグループに登録する
5.2 バックアップと復旧
重要ポイント:
- RDSの自動バックアップとRPO達成
- EBSボリュームのRAID構成
- S3のバージョニングとMFA削除
試験ポイント:
- RPO10分を達成するには、RDSの自動バックアップを有効にし、データベースのスナップショットをS3バケットに日次で取得し、トランザクションログをデフォルトで取得する
- EBSボリュームの故障時にRTO1分未満を達成するには、EC2インスタンスにEBSを追加でアタッチしてRAID 1構成を実施する
- S3バケットでの誤削除を防ぐには、バージョニングを有効化し、多要素認証(MFA)による削除を実施する
5.3 データベースの高可用性
重要ポイント:
- MySQLデータベースの移行と可用性向上
- インスタンスストアからEBSへの移行
- RDSの自動バックアップ
試験ポイント:
- インスタンスストア上のMySQLデータベースの可用性や耐久性を向上させるには、新しいEBSボリュームを作成してデータをコピーするか、mysqldumpを利用してAmazon RDSへ移行する
- RDSのDBインスタンスが自動バックアップを取得できない原因として、DBインスタンスに関連づいたS3バケットにおけるバックアップ保持数が上限に達している可能性がある
- RDSの自動バックアップは、指定されたバックアップウィンドウ内で毎日実施され、トランザクションログは自動的に5分ごとにS3に保存される
6. コストとパフォーマンスの最適化
6.1 EC2インスタンスとEBSの最適化
重要ポイント:
- EC2インスタンスタイプの選択
- EBSボリュームの使用状況分析
- Auto Scalingの配分戦略
試験ポイント:
- 機械学習モデルを実装するためのGPUを利用可能なインスタンスタイプは、高速コンピューティングインスタンス
- EBSボリュームの利用状況を最も効率的に分析するには、AWS Compute Optimizerを利用してEBSボリュームの空き容量をチェックし、ボリュームの削除やサイズ変更を実施する
- 起動インスタンス数の可用性が最大になるプールから構成済みフリートを起動するには、キャパシティ最適化戦略を使用する
6.2 S3の最適化
重要ポイント:
- S3バケットへのアップロード速度向上
- S3オブジェクトの分散とパフォーマンス改善
- S3ストレージクラスの選択
試験ポイント:
- S3バケットへのアップロード速度を向上させるには、S3 Transfer Accelerationを有効化してファイルアップロード時に高速化エンドポイントを使用する
- S3バケットにおけるHTTP 500エラーを解決するには、オブジェクトデータに複数のプレフィックスを設定してオブジェクトを分散する
- アクセス頻度の低いデータを特定してコスト効率の良いストレージクラスに移行するには、Amazon S3ストレージクラス分析を利用する
6.3 コスト管理
重要ポイント:
- AWS Billing and Cost Managementダッシュボード
- AWS Compute Optimizerの活用
- リザーブドインスタンスとスポットインスタンス
試験ポイント:
- AWS Billing and Cost Managementダッシュボードでは、利用料金の概要や今月の初めから今日までで最も利用料の多いサービスなどを確認可能
- AWS Compute Optimizerを活用することで、EBSボリュームの使用状況を詳細に分析し、未使用のディスクを特定することが可能
- EC2フリートまたはスポットフリートがインスタンスを起動する場合、キャパシティ最適化戦略を使用することで、起動するインスタンス数に対する可用性が最も高いプールから構成されたフリートを起動可能
まとめ
AWS認定試験では、上記の各ドメインにおける知識と実践的な理解が問われます。特に以下の点に注意して学習を進めることをお勧めします:
- セキュリティとコンプライアンス – AWS Organizationsの活用、IAMポリシーとSCPの関係、暗号化オプションの理解
- ネットワークとコンテンツ配信 – VPC設計、CloudFrontの最適化、ロードバランサーの適切な選択と設定
- デプロイとオートメーション – CloudFormationテンプレートの理解、AWS Application Migration Serviceの活用、プレイスメントグループの適切な選択
- モニタリングとロギング – CloudWatchの詳細設定、X-RayやRUMなどのアプリケーションモニタリングツールの活用
- 信頼性と事業継続性 – バックアップ戦略、RAID構成、RPOとRTOの達成方法
- コスト最適化 – インスタンスタイプの選択、ストレージの最適化、AWS Compute Optimizerの活用
実際の試験では、複数のサービスを組み合わせた実践的なシナリオが出題されることが多いため、各サービスの連携方法や、特定の問題に対する最適なソリューションの選択方法を理解することが重要です。また、Well-Architected Frameworkの原則を理解し、それに基づいた設計ができるようになることも求められます。