AWS Certified Solutions Architect - Associate (SAA-C03)試験問題サンプル
- ある企業は、複数のアベイラビリティーゾーンにまたがる VPC 内で、パブリック側の 3 層ウェブアプリケーション(Vue.js、PHP/Laravel、AWS RDSなどの構成)を実行しています。プライベートサブネットで実行されているアプリケーション層のAmazon EC2 インスタンスでは、インターネットからソフトウェアパッチをダウンロードする必要があります(OSの更新パッチなど)。ただし、EC2 インスタンスにインターネットから直接アクセスすることはできません。
EC2 インスタンスが必要なパッチをダウンロードできるようにするために実行すべきアクションはどれですか。
(2 つ選択)
A) パブリックサブネットで NAT ゲートウェイを構成する。
B) インターネットトラフィック用の NAT ゲートウェイへのルートがあるカスタムルートテーブルを定義
し、アプリケーション層のプライベートサブネットに関連付ける。
C) Elastic IP アドレスを EC2 インスタンスに割り当てる。
D) インターネットトラフィック用のインターネットゲートウェイへのルートがあるカスタムルートテーブ
ルを定義し、アプリケーション層のプライベートサブネットに関連付ける。
E) プライベートサブネットで NAT インスタンスを設定する。
答え
A,B
NATゲートウェイはアウトバンドのみ許可されています。
- あるソリューションアーキテクトは、会社が 2 週間一時休業する間に実行する必要のない Amazon EC2 インスタンスのコストを節約するため、ソリューションを設計したいと考えています。EC2 インスタンスで実行されているアプリケーションは、インスタンスが動作を再開するときに必要なデータをインスタンスメモリに格納します。
EC2 インスタンスをシャットダウンして再開するために、ソリューションアーキテクトが推奨すべきアプローチはどれですか。
A) インスタンスストアボリュームにデータを格納するようにアプリケーションを変更する。ボリュームを
再起動中に、再接続する。
B) EC2 インスタンスを停止する前に、インスタンスのスナップショットを作成する。インスタンスの再起
動後に、スナップショットを復元する。
C) 休止状態が有効になっている EC2 インスタンスでアプリケーションを実行する。会社が 2 週間の一時
休業に入る前に、インスタンスを休止状態にする。
D) EC2 インスタンスを停止する前に、各インスタンスのアベイラビリティーゾーンをメモしておく。2 週
間の一時休業が終わったら、同じアベイラビリティーゾーンでインスタンスを再起動する。
答え
C
A) インスタンスストアは揮発性であり、インスタンスの停止時にデータが失われます。 B) スナップショットはディスクの状態は保存しますが、メモリの内容は保存しません。 D) 単に同じアベイラビリティーゾーンで再起動しても、メモリ内のデータは失われます。
- ある企業は、VPC において、Amazon EC2 インスタンスでモニタリングアプリケーションを実行する予定です。EC2 インスタンスへの接続は、そのプライベート IPv4 アドレスを使用して行われます。ソリューションアーキテクトは、アプリケーションに障害が発生して到達不能になった場合に、トラフィックをスタンバイ EC2インスタンスに迅速に誘導できるソリューションを設計する必要があります。
これらの要件を満たすアプローチはどれですか。
A) プライベート IP アドレスのリスナーで構成された Application Load Balancer をデプロイし、ロードバランサーにプライマリ EC2 インスタンスを登録する。障害発生時に、インスタンスを登録解除して、スタンバイ EC2 インスタンスを登録する。
B) カスタム DHCP オプションセットを構成する。プライマリ EC2 インスタンスで障害が発生したときに、同じプライベート IP アドレスをスタンバイ EC2 インスタンスに割り当てるように DHCP を設定する。
C) プライベート IP アドレスで設定された EC2 インスタンスに、セカンダリ Elastic Network Interfaceを添付する。プライマリ EC2 インスタンスが到達不能になった場合は、ネットワークインターフェイスをスタンバイ EC2 インスタンスに移動する。
D) Elastic IP アドレスをプライマリ EC2 インスタンスのネットワークインターフェイスに関連付ける。
障害発生時に Elastic IP とプライマリインスタンスの関連付けを解除し、スタンバイ EC2 インスタン
スに関連付ける。
答え
C
A)登録解除を手動で行う必要があり、迅速な誘導という点で不適切
B)同じプライベート IP アドレスをスタンバイ EC2 インスタンスに割り当てることができないため不適切→DHCPによるIPアドレスの割り当ては、一意である必要があるため
→IPアドレスはネットワーク上の住所で重複できない(IPアドレス競合といい、ネットワークエラーの1つ)
D) Elastic IP アドレスをプライベートIPアドレスに関連付けることはできないため不適切
- ある分析会社は、ユーザーにウェブ解析サービスを提供する予定です。このサービスでは、ユーザーのウェブページに、同社の Amazon S3 バケットに対して認証済み GET リクエストを行う JavaScript スクリプトが含まれている必要があります。
スクリプトを正常に実行するため、ソリューションアーキテクトが行うべきことは何ですか。
A) S3 バケットでクロスオリジンリソース共有 (CORS) を有効にする。
B) S3 バケットで S3 バージョニングを有効にする。
C) ユーザーにスクリプトの署名付き URL を提供する。
D) パブリック実行権限を許可するよう、S3 バケットポリシーを設定する。
答え
A
B)バージョニングは認証済み GET リクエストとは関係しないため不適切
C)異なるドメインから JavaScript を使って S3 リソースにアクセスする場合署名に関係なくCORSエラーが出る
D)認証済みGETリクエストを行うためには、バケットポリシーをパブリックにすることは必要ありません。むしろセキュリティリスクがあります。
- ある企業のセキュリティチームは、クラウドに保存されているすべてのデータを、オンプレミスに保存された暗号化キーを使用して、保管時は常に暗号化する必要があります。
これらの要件を満たす暗号化オプションはどれですか。 (2 つ選択)
A) Amazon S3 で管理された暗号キー (SSE-S3) でサーバー側の暗号化を使用する。
B) AWS KMS で管理された暗号化キー (SSE-KMS) でサーバー側の暗号化を使用する。
C) 顧客提供の暗号化キー (SSE-C) でサーバー側の暗号化を使用する。
D) クライアント側の暗号化を使用して、保存時の暗号化を行う。
E) Amazon S3 イベントによって呼び出される AWS Lambda 関数を使用し、顧客のキーを使用してデータを暗号化する。
答え
C,D
A)オンプレミスに保存された暗号化キーを使用してとあるので不適
B)オンプレミスに保存された暗号化キーを使用してとあるので不適
E)可能ではあるが、SSE-Cを使えば個別に実装する必要はないので不適
- ある企業は、データ処理ワークロードを実行するために、Amazon EC2 リザーブドインスタンスを使用しています。毎夜のジョブは通常、実行に 7 時間かかり、10 時間以内に終了する必要があります。同社は、毎月末に需要が一時的に増加するため、現在のリソースの容量では、ジョブが制限時間以内に終わらないと予想しています。いったん開始された処理ジョブは完了するまで中断できません。同社は、できる限りコスト効率よくリソース容量を提供できるソリューションを実装したいと考えています。
これを達成するために、ソリューションアーキテクトは何をすべきでしょうか。
A) 需要が高まる期間中にオンデマンドインスタンスをデプロイする。
B) 追加のインスタンス用に 2 つ目の EC2 予約を作成する。
C) 需要が高まる期間中にスポットインスタンスをデプロイする。
D) ワークロードの増加をサポートするために、EC2 予約の EC2 インスタンスのサイズを増やす。
答え
A
B)常に使用するインスタンスではないので不適
C)いったん開始された処理ジョブは完了するまで中断できませんとあるので不適
D)常に使用するインスタンスではないので不適
- ある企業は、毎週生放送されるテレビ番組のオンライン投票システムを運用しています。放送中、AutoScaling グループで実行される Amazon EC2 インスタンスのフロントエンドフリートに、ユーザーから数十万という票が送られてきます。EC2 インスタンスは Amazon RDS データベースに票を書き込みます。しかし、データベースは EC2 インスタンスからのリクエストに迅速に対応することができません。ソリューションアーキテクトは、最も効率的な方法で、ダウンタイムなしに票を処理するソリューションを設計する必要があります。
これらの要件を満たすのはどのソリューションですか。
A) フロントエンドアプリケーションを AWS Lambda に移行する。Amazon API Gateway を使用して、ユーザーリクエストを Lambda 関数にルートする。
B) データベースをマルチ AZ 配置に変換することで、データベースを水平方向にスケールする。プライマリとセカンダリの両方の DB インスタンスに書き込むよう、フロントエンドアプリケーションを設定す
る。
C) Amazon Simple Queue Service (Amazon SQS) キューに票を送信するよう、フロントエンドアプリケーションを設定する。SQS キューを読み取り、投票情報をデータベースに書き込むよう、ワーカーインスタンスをプロビジョニングする。
D) Amazon EventBridge (Amazon CloudWatch Events) を使用してスケジュールされたイベントを作成し、投票期間中、大規模なメモリ最適化インスタンスでデータベースを再プロビジョニングする。投票が終了したら、サイズの小さいインスタンスを使用するよう、データベースを再プロビジョニングする。
答え
C
A) データベースは EC2 インスタンスからのリクエストに迅速に対応することができませんとあり、フロントエンドアプリケーションを変更する必要はないため不適
B)データベースをマルチ AZ 配置に変換してもDBの処理性能は変わらないため不適
D)ダウンタイムなしに票を処理するソリューションとあるが、再プロビジョニングを行うとDBの特性上ダウンタイムが発生するため不適
- ある企業には、パブリックサブネットとプライベートサブネットで実行される 2 層アプリケーションアーキテクチャがあります。ウェブアプリケーションを実行している Amazon EC2 インスタンスはパブリックサブネットにあり、データベースの EC2 インスタンスはプライベートサブネットで実行されています。ウェブアプリケーションインスタンスとデータベースは単一のアベイラビリティーゾーン (AZ) で実行されています。
このアーキテクチャで高可用性を実現するために、ソリューションアーキテクトが取るべきステップの組み合わせはどれですか。 (2 つ選択)
A) 新しいパブリックサブネットとプライベートサブネットを同一の AZ に作成する。
B) 複数の AZ にまたがる Amazon EC2 Auto Scaling グループと Application Load Balancer をウェブアプリケーションインスタンス用に作成する。
C) 既存のウェブアプリケーションインスタンスを Application Load Balancer の背後にある Auto
Scaling グループに追加する。
D) 新しいパブリックサブネットとプライベートサブネットを新しい AZ に作成する。新しい AZ にあるパブリックサブネットに EC2 インスタンスを使用してデータベースを作成する。古いデータベースの内容を新しいデータベースに移行する。
E) 新しいパブリックサブネットとプライベートサブネットを同一の VPC 内の、それぞれ新しい AZ に作成する。Amazon RDS マルチ AZ DB インスタンスをプライベートサブネットに作成する。古いデータベースの内容を新しい DB インスタンスに移行する。
答え
B,E
A)同一のAZに作成しても、物理的に切り離されたサーバーではないため、可用性は向上しない
C)インスタンスが単一障害点になるため、可用性は低い
D)パブリックなEC2内にDBを構築することで可用性は向上せず、セキュリティリスクが高いため不適
- ある Web サイトでは、毎日正午に大量のトラフィックを受信するカスタムウェブアプリケーションが実行されています。ユーザーは毎日新しい写真やコンテンツをアップロードしていますが、タイムアウトについて苦情を寄せています。このアーキテクチャでは Amazon EC2 Auto Scaling グループが使用され、起動時にアプリケーションが起動してからユーザーのリクエストに応答するまでに 1 分かかります。
変化するトラフィックに的確に対応するために、ソリューションアーキテクトはアーキテクチャをどのように再設計すべきでしょうか。
A) Network Load Balancer をスロースタートに設定する。
B) Amazon ElastiCache for Redis を設定し、EC2 インスタンスからの直接リクエストをオフロードする。
C) EC2 インスタンスのウォームアップ条件で Auto Scaling ステップスケーリングポリシーを設定する。
D) Application Load Balancer をオリジンとして使用するよう、Amazon CloudFront を設定する。
答え
C
A)スロースタートは新しいターゲットサーバーへのリクエスト比率を徐々に上げる設定
正午のピークにタイムアウトが起きる原因は、ロードバランサーではなく、サーバーが起動直後にリクエストに応答できないことのため不適
B)動的コンテンツ含め、読み取りトラフィックの負荷を軽減できますが、起動の遅さによる問題は解決できないため不適
D)静的コンテンツのみの読み取りトラフィックの負荷を軽減できますが、起動の遅さによる問題は解決できないため不適
- AWS で実行されているあるアプリケーションは、そのデータベースに Amazon Aurora マルチ AZ DB クラスターデプロイメントを使用します。あるソリューションアーキテクトが、パフォーマンスメトリクスを評価したところ、データベースの読み取りによって I/O が高くなり、データベースに対する書き込み要求のレイテンシーが増大していることを発見しました。
ソリューションアーキテクトは、読み取り要求と書き込み要求を分けるために何をすべきですか。
A) Aurora データベースでリードスルーキャッシュを有効にする。
B) マルチ AZ スタンバイインスタンスから読み取るよう、アプリケーションを更新する。
C) Aurora レプリカを作成し、適切なエンドポイントを使用するようにアプリケーションを変更する。
D) 2 つ目の Aurora データベースを作成し、リードレプリカとしてプライマリデータベースにリンクす
る。
答え
C
A)リードスルーキャッシュはAuroraではないため不適
B)フェイルオーバー時の冗長性を提供するためのもので、メインの読み取り要求には使用されないため不適
D)2つのデータベース運用はコストが高く、1つのデータベースでも組み込みのレプリカが利用可能なため不適