- ある企業は、AWSを 3 アカウントで運用しています。現在、各部署で AWS への請求処理を別々に行っており、会社全体としてコスト管理に問題を抱えています。この問題を解決するため、AWS Organizations を利用し、既存の 3 AWS アカウントに一括請求の設定を検討しています。AWS Organizations を利用した場合のコストメリットを選択してください。
各アカウントで利用している S3 ストレージの請求をまとめることで、S3 のコストを削減することが可能
2年間の無料利用枠が利用可能
請求管理の一元化が可能であるのみで、その他のメリットは特になし
アカウントごとに、請求の比重を設定することが可能
正解
「各アカウントで利用している S3 ストレージの請求をまとめることで、S3 のコストを削減することが可能」が正解です。一括請求の場合、AWS はすべてのアカウントの使用量を合算し、適用すべきボリューム料金階層を決定するため、お客様への請求全額は可能な限り低いものになります。なお、2年間の無料利用枠は利用不可です。また、アカウントごとに、施灸の比重を設定することもできません。
※参考
AWS Organizations の一括請求 (コンソリデーティッドビリング)
従量制割引- オンプレミスのデータセンタ内のMySQLサーバに接続するWEBアプリケーションをDockerコンテナで実装しています。現在、アプリケーションのデプロイと保守に時間が要しているため、新機能をリリースが遅延しています。本アプリケーションをAWSに移行し、システムの管理と展開を容易にするために役立つサービスを利用したいと考えています。
これらの要件を満たすアーキテクチャを次の中から2つ選択してください。
WEBアプリケーションに VPC を使用しない Lambda カスタムリソースと、データベースに Amazon RDS for MySQL を使用する AWS CloudFormation を採用する。
AWS Elastic Beanstalk Docker WEBアプリケーションまたはデータベース用のマルチコンテナを採する。
WEBアプリケーションに Amazon ECS、データベースに Amazon RDS for MySQL を採用する。
WEBアプリケーション用の VPC と データベース用の Amazon RDS for MySQL で実行されている Lambda カスタムリソースを含む AWS CloudFormation を採用する。
WEBアプリケーション用の AWS Elastic Beanstalk で動作する単一コンテナの Docker 環境、およびデータベース用の Amazon RDS for MySQL を採用する。
不正解
Amazon Elastic Container Service (Amazon ECS) は、フルマネージド型のコンテナオーケストレーションサービスです。「MYSQL サーバー」および「Docker コンテナー内のウェブアプリケーション」を AWS に移行する必要があり、それぞれ以下を採用します。
・MYSQL サーバー → Amazon RDS for MySQL
・Docker コンテナー内のウェブアプリケーション → Amazon ECS または AWS Elastic Beanstalk で動作する単一コンテナの Docker 環境
補足說明
■Amazon RDS for MySQL
MySQL は、オープンソースのリレーショナルデータベースです。Amazon RDS によって、MySQL のデプロイを簡単にセットアップできるようになります。Amazon RDS を使用すると、コスト効率が良く、サイズ変更が可能なハードウェア容量で、 MySQL サーバーを数分でデプロイできます。
■Amazon ECS
Amazon Elastic Container Service (Amazon ECS) は、クラスターで Docker コンテナを簡単に実行、停止、管理できる非常にスケーラブルで高速なコンテナ管理サービスです。
■AWS Elastic Beanstalk で動作する単一コンテナの Docker 環境
Elastic Beanstalk では、ウェブアプリケーションを Docker コンテナからデプロイできます。 以下の2つのコンテナ種別になります。
■単一コンテナの Docker
単一コンテナは、Docker イメージ (Dockerfile あるいは Dockerrun.aws.json の定義に示される)とソースコードを EC2インスタンスで実行することができます。
■複数の Docker
マルチコンテナ Docker は複数の Docker コンテナをデプロイすることができます。インスタンスはそれぞれ、Dockerrun.aws.json ファイルに設定されるコンテナで実行されます。各インスタンスに複数の Docker コンテナをデプロイする必要がある場合には、マルチコンテナプラットフォームを使用します。- 社内のCI/CD環境の構築を自動でワークロードを設定することを検討しています。一部のワークロードにはElastic Beanstalkを利用する予定ですが、どのワークロードにElastic Beanstalkを適用するべきかを検討しています。
Elastic Beanstalkを利用すべきワークロードを次の中から2つ選択してください。
Amazon RDSを利用したWEBアプリケーションへの適用を検討する。
エンタープライズデータウェアハウスのワークロードへの適用を検討する。
実行時間の長いワーカープロセスへの適用を検討する。
静的WEBサイトの表示への適用を検討する。
深夜に1回実施されるBatch処理への適用を検討する。
正解
Elastic Beanstalk は、Java、.NET、PHP、Node.js、Python、Ruby、Go および Docker を使用して開発されたウェブアプリケーションやサービスを、Apache、Nginx、Passenger、IIS など使い慣れたサーバーでデプロイおよびスケーリングするためのサービスになります。
Elastic Beanstalk は自動的にデプロイメントの詳細 (容量のプロビジョニング、負荷分散、Auto Scaling、アプリケーションのヘルスモニタリングなど) を処理します。Elastic BeanstalkのユースケースとしてはWEBアプリケーションやワーカー環境などの構築によく用いられます。したがって、WEBアプリケーションを展開する際にElastic Beanstalkを利用しますので、「Amazon RDSを利用したWEBアプリケーションへの適用を検討する。」が正解となります。
また、実行時間の長いワーカープロセスをElastic Beanstalkのワーカー環境の作成で展開することができますので、「実行時間の長いワーカープロセスへの適用を検討する。」が正解となります。
「エンタープライズデータウェアハウスのワークロードへの適用を検討する。」は不正解です。エンタープライズデータウェアハウスのワークロードには、Redshiftによる設定や、SQSとの連携などで設定することが最適です。
「静的WEBサイトの表示への適用を検討する。」は不正解です。静的ウェブサイトはS3やEC2インスタンスをシンプルに利用することが最適です。
「深夜に1回実施されるBatch処理への適用を検討する。」は不正解です。深夜に1回実施されるBatch処理は、AWS Batchなどの機能を利用してシンプルに構成できる機能です。Elastic BeansStalkで想定するワーカープロセスは複雑なタスク内容をワーカーアプリケーションとして実装する際に利用します。「実行時間の長いワーカープロセス」などは最適ですが、「深夜に1回実施されるBatch処理」には別の仕組みを利用することが求められます。- AWS Import/Exportサービスで提供されていないものは次のうちどれですか?
Amazon Glacierへのエクスポート
Amazon Glacierへのインポート
Amazon S3へのエクスポート
Amazon S3へのインポート
正解
AWS Import/Export とは、大量のデータを物理ストレージデバイスから AWS に転送するのに使用できるサービスです。
ポータブルストレージドライブを AWS に引き渡すと、AWS Import/Export サービスでAmazon の高速内部ネットワークを使用してお客様のストレージデバイスからデータを直接インポートしたり、エクスポートしたりすることができます。
ただし、AWS Import/Export では Glacier ストレージクラスのデータを直接エクスポートする機能はサポートしていません。これらのオブジェクトをエクスポートするには、一度S3などにオブジェクトを復元しそのデータをエクスポートするような対応をとる必要があります。- EC2インスタンスがソフトウェアの更新のために、外部の特定のURLにアクセスできる必要があります。セキュリティ要件として、外部の特定のURL以外のアウトバウンド通信は明示的に拒否する必要があります。
この要件を満たす最適なソリューションを選択してください。
ネットワークACLによるアクセス制御を実施する。
Route53によるアクセス制御を実施する。
プロキシサーバーによるアクセス制御を実施する。
セキュリティグループによるアクセス制御を実施する。
不正解
プロキシサーバーは、内部のネットワークとインターネットの境界で動作し、両者間のアクセスを代理して行うものです。
「プロキシサーバーによるアクセス制御を実施する。」が正解となります。プロキシサーバーがクライアントからの要求をフィルターし、製品の更新に関連する要求のみを許可して、製品の更新以外のすべての要求をフィルタリングすることができます。このシナリオではVPCのインスタンスにインターネットアクセスが必要であり、製品の更新のみにアクセスを制限する必要があります。また、他のアウトバウンド接続を明示的に拒否することも求められています。そのため、制限なくインターネットにアクセスできないようにするために、EC2インスタンスをパブリックサブネットに配置せずに、プライベートサブネットに配置する必要があります。また、クライアントマシンからの要求をフィルタリングするためのロジックが必要となるため、その制御にはプロキシサーバーを利用します。
「ネットワークACLによるアクセス制御を実施する。」と「セキュリティグループによるアクセス制御を実施する。」不正解です。ネットワークACLおよびセキュリティグループはURLに基づいてリクエストをフィルタリングすることができないため、正しくありません。
「Route53によるアクセス制御を実施する。」は不正解です。URLベースルールによるアウトバウンドアクセス制御を実施するといった機能は、Route53にはありません。- Amazon ECSを利用したマイクロサービス型の分散システムを構築しています。
EC2インスタンスにより処理が実施された結果を別のEC2インスタンスに連携する処理を実装することが必要です。
この要件を満たすマイクロサービス間連携の仕組みを選択してください。
最初の処理結果が完了するとSNSがイベント通知して、EC2インスタンスが処理を継続する。
最初の処理結果をEC2インスタンスが直接受け取って処理を継続する。
最初の処理結果をSQSキューが受け取って、ポーリング処理によりEC2インスタンスが処理を継続する。
最初の処理結果がLambdaイベントによってEC2インスタンスに通知される。
正解
マイクロサービスアーキテクチャでは、アプリケーションは独立した複数のコンポーネントとして構築されます。各コンポーネントは、1 つのサービスとして個別にアプリケーションプロセスを実行します。
このシナリオでは、EC2インスタンス間でコンポーネントが分割されたマイクロサービス間で処理が引き渡される分散アーキテクチャの実装方法が問われています。このようなマイクロサービス化されたコンポーネント間の処理を連携するにはSQSを利用したポーリング処理が最適となります。Amazon Simple Queue Service (SQS) は、完全マネージド型のメッセージキューイングサービスで、マイクロサービス、分散システム、およびサーバーレスアプリケーションの切り離しとスケーリングが可能です。SQS を使用すると、あらゆる量のソフトウェアコンポーネント間でメッセージを送信、保存、受信できます。したがって、「最初の処理結果をSQSキューが受け取って、ポーリング処理によりEC2インスタンスが処理を継続する。」が正解となります。
「最初の処理結果をEC2インスタンスが直接受け取って処理を継続する。」は不正解です。EC2インスタンスから直接にEC2インスタンスへと連携させると密結合なアーキテクチャ構成となるため、これは推奨されていない方式です。
「最初の処理結果が完了するとSNSがイベント通知して、EC2インスタンスが処理を継続する。」は不正解です。SNSもメッセージング通知によって、前の処理イベントをトリガーとしてイベント通知処理による連携を実施することができます。しかしながら、コンポーネント処理間の連携を確実に実行するには並列処理による負荷分散が可能なSQSが最適です。SNSはイベント通知を起点としたトリガーとして利用し、実処理はSQSに連携してポーリングするというのが標準的なAWSでのアーキテクチャ構成となります。
「最初の処理結果がLambdaイベントによってEC2インスタンスに通知される。」は不正解です。Lambdaイベントによって通知するといった処理はありません。- レスポンスタイムに対する要求が高く、EC2インスタンス間のネットワーク遅延を最小限に抑えたシステムを構築するために、最適なソリューションは次のうちどれですか?
ELBとAutoScalingを有効化し、トラフィックを分散する
複数のAZに跨るプレイスメントグループを作成し、EC2インスタンスをプレイスメントグループ内に配置する
単一のAZ内にプレイスメントグループを作成し、EC2インスタンスをプレイスメントグループ内に配置する
CloudFrontを利用して、EC2のコンテンツをエッジロケーションにキャッシュする
不正解
プレイスメントグループは、単一のアベイラビリティーゾーン内のインスタンスを論理的にグループ化したものです。プレイスメントグループを設定すると、グループで設定されたインスタンス間のネットワーク遅延を最小限に抑えることができます。設定は同じリージョン内のVPC にまたがって設定することができます。
プレイスメントグループには、「クラスター」「スプレッド」「パーティション」の3つの種類があります。
ネットワーク遅延の最小化、ネットワークスループットの最大化、またはその両方から利点が得られるアプリケーションや、ネットワークトラフィックの大部分がグループのインスタンス間で発生するような場合、クラスタープレイスメントグループが推奨されます。- あなたはコロナによる売り上げ減を改善する為に、オンラインショッピングアプリ構築プロジェクトに参画しています。
現在は設計段階です。顧客情報の流出は企業価値を損なう事に繋がるため、セキュリティが最重要の要件です。また、急なアクセスに耐えうる設計も考慮する必要があります。
アプリケーション層の設計は完了しており、以下のサービスを作成する事が決定しています。
・ELB Application Load Balancerを利用して負荷分散を行う。
・EC2インスタンスを複数のアベイラビリティーゾーンにまたがる設計にする。
・Auto Scalingを有効にする。
続いてデータのセキュリティを担保する為に、データベースクラスターのネットワーク設計をする事になりました。
要件は以下の通りです。
・アプリケーション層から読み取りと書き込みを行える必要がある。
・インターネットからデータベースにアクセスできないようにする。
・ただし、ソフトウェア更新プログラムに関してはインターネットから取得できる必要がある。
上記の要件を満たすネットワーク設計は、次の内どれですか。
アプリケーション層とデータベースクラスターの両方をパブリックサブネット内に配置する。
アプリケーション層と NAT ゲートウェイをパブリックサブネット内に配置し、データベースクラスターをプライベートサブネット内に配置する。
アプリケーション層をパブリックサブネット内に配置し、データベースクラスターとNAT ゲートウェイをプライベートサブネット内に配置する。
アプリケーション層をパブリックサブネット内に配置し、データベースクラスターをプライベートサブネット内に配置する。
正解
問題文を読む限り、インターネットからデータベースにアクセスできないようにする必要があると同時に、データベースクラスターはインターネットからソフトウェア更新プログラムを取得できる必要がある事が分かります。
矛盾した要件に思えますが、前提としてデータベースクラスターをプライベートサブネット内に配置する必要があります。
ソフトウェア更新プログラムを受信するためのインターネット接続を行うために、別にパブリックサブネットを作成し、パブリックサブネット内に設置したNATゲートウェイを経由してインターネットに接続するのが一般的です。
※参考
パブリックサブネットとプライベートサブネットを持つ VPC (NAT)- 次のインスタンスタイプのうち、処理途中で中断可能な計算処理を大規模かつ並列で実行する場合に使用するものとして最も費用対効果が高く、適切なものは次のうちどれですか?
オンデマンドインスタンス
どれにも該当しない
リザーブドインスタンス
スポットインスタンス
正解
Amazon EC2 スポットインスタンスの仕組みは、AWS クラウド内で使用されていない EC2 のリソースを使用することで、オンデマンドインスタンスと同じ性能を持ちながら料金は最大 90% の割引価格で利用することができます。
そのため、大規模な計算を並列で行うような場合にスポットインスタンスを利用すれば、AWS の巨大なサーバリソースを活用しコストを大幅に削減しながら大規模な処理を実行することができます。- ELBを使用して、EC2インスタンスでホストするTCPプロトコルに依存するアプリケーションの負荷分散をする場合、次のどのロードバランサーを使用する必要がありますか?
プライマリロードバランサ
セカンダリロードバランサ
クラシックロードバランサ
アプリケーションロードバランサ
正解
クラシックロードバランサは、複数のAmazon EC2インスタンスにおける基本的な負荷分散を行うのに最適なロードバランサです。L4レイヤーで負荷分散するため、HTTPやHTTPS以外のTCPプロトコル上で動作するプロトコルにも対応することができます。ただし、 クラシックロードバランサは現在は使用を推奨されていません。
アプリケーションロードバランサは、HTTP / HTTPS トラフィックの負荷分散に最適なロードバランサです。Webサイトのロードバランサとして使用する場合はこのロードバランサが推奨されます。L7レイヤーで負荷分散します。高度なルーティング機能、マイクロサービス、およびコンテナベースのアーキテクチャが必要なアプリケーションに最適です。- SNS(Simple Notification Service)を利用する際に、利用することのできるエンドポイントは次のうちどれですか?
AWS LambdaとEメールをエンドポイントとして利用できる
EメールとXMLをエンドポイントとして利用できる
HTTP/HTTPS、AWS Lambda、Eメールをエンドポイントとして利用できる
全てをエンドポイントとして利用できる
不正解
SNSのエンドポイントとは、SNSから送信されるメッセージの受信方法のことを指しています。エンドポイントには、HTTP/HTTPS、AWS Lambda、Eメール、SQS、SMS、モバイルプッシュ通知を利用することができます。
XMLは利用することができません。- バックエンドのサービスへのAPI呼び出しを行い、ユーザーのセッション状態データをデータベースに保存して、世界中のユーザーがアップロードした画像を受け入れるサーバーレスアプリケーションを設計しています。
レイテンシを最小限に抑えながら、費用対効果の高いソリューションを提供するサービスの組み合わせはどれですか?
Amazon CloudFront、API Gateway、Amazon S3、AWS Lambda、Amazon RDS
Amazon CloudFront、API Gateway、Amazon S3、AWS Lambda、DynamoDB
Amazon S3、API Gateway、AWS Lambda、Amazon RDS
API Gateway、Amazon S3、AWS Lambda、DynamoDB
正解
・Amazon CloudFrontは世界中にあるエッジロケーションにコンテンツをキャッシュすることで、ユーザーが最も近いエッジロケーションからコンテンツにアクセスすることができます。これにより、少ないレイテンシ(遅延)でコンテンツをアップロードすることができます。DynamoDBにはセッション状態のデータを保存することができます。
・API Gatewayではユーザーがコンテンツをアップロードするためのアクセスとなる入り口を提供しません。この入り口を提供するためにはCloudFrontを組み合わせて利用する必要があり、CloudFrontが含まれない選択肢は誤りです。
・Amazon RDSはサーバーレスのサービスではないため誤りです。
・Amazon S3でも要件にあったアプリケーションを構成できますが、以下の観点で誤りです。
(1)異なるリージョンに多数のバケットを用意する必要があり、ユーザーが最も近いリージョンのバケットにアクセスできるよう誘導する設定をしなければ、世界中のユーザーに低遅延のアクセスを提供することができません。
(2)バケット間でデータを複製する必要がありそのデータ量に応じた費用が必要となるため費用対効果が高くありません。- EC2インスタンスで動作しているアプリケーションで問題が多く発生している。監視強化を図るため、まずはEC2インスタンス上のゲストOS内にあるログを収集し監視を始めたい。AWS で最適なサービスを選択してください。
Amazon CloudWatch Logs を利用する
AWS Trusted Advisor を利用する
AWS CloudTrail を利用する
AWS Config を利用する
正解
「Amazon CloudWatch Logs を利用する」が正解です。CloudWatch Logs により、使用中のすべてのシステム、アプリケーション、AWS サービスからのログを、スケーラビリティに優れた 1 つのサービスで一元管理することができます。ログの収集や監視の観点で最も適しています。エージェントをインストールすることで、EC2インスタンス内のログを収集・通知も実施可能です。「AWS Config」は AWS のサービスのリソース設定を管理するもので、「AWS CloudTrail」は監査目的で各アカウントの操作状況を記録するサービスです。「Trusted advisor」も環境を分析し、推奨設定を提示してくれるサービスで、今回の要件には適しません。
※参考
Amazon CloudWatch Logs とは- Amazon Glacierはどのようなデータの保管を目的としたサービスですか?
アクティブなデータストレージ と データのアーカイブ
アクティブなデータストレージ と アクセス頻度の低いデータ
データのアーカイブ と アクセス頻度の低いデータ
キャッシュされたセッションデータ と アクセス頻度の低いデータ
正解
Amazon Gracierは、アクセス頻度の低いデータのアーカイブと長期バックアップのための安全で耐久性が高く低コストなストレージです。
S3と比較してデータ保管にかかるコストを大幅に抑えることができますが、データの取り出しの際には費用がかかります。
取り出しオプションは以下のものがあります。
迅速 — 迅速取り出しではデータが必要になった場合、すばやくアクセスできます。通常 1~5 分以内で使用可能になります。
標準 — 標準取り出しでは、数時間以内にすべてのデータにアクセスできます。通常、標準取り出しは 3~5 時間で完了します。(デフォルト設定)
大容量 — 大容量取り出しは、S3 Glacier の最も安価な取り出しオプションであり、これを使用して大量のデータ (ペタバイトのデータを含む) を 1 日以内に低コストで取得できます。通常、大容量取り出しは 5~12 時間で完了します。- ある企業はAWS上で業務システムを構築・利用していますが、セキュリティ規定が更新されたため、データの保存中および転送中のデータを保護する必要があります。
AWSにおける適切なデータ保護の方法を選択してください。(2つ選択してください。)
セキュリティグループによるデータベースへのアクセス制御を実施する。方法
ELBとのデータ通信においてSSL/HTTPSを利用する方法
IAMによるストレージやDBへのアクセス制御を実施する。方法
ストレージやデータベースの暗号化を実施する方法
正解
「ELBとのデータ通信においてSSL/HTTPSを利用する方法」と「ストレージやデータベースの暗号化を実施する方法」が正解となります。
SSL / TLSプロトコルを使用するロードバランサーを利用することで、クライアント・サーバー間のトラフィック暗号化が可能になります。
また、AWSではストレージやデータベースに対してシンプルな暗号化ソリューションを提供しており、ストレージ内の保存データ・S3への転送データなどにデータ保護が可能になります。
他の選択肢は誤りです。
IAMによるストレージやDBへのアクセス制御とセキュリティグループによるデータベースへのアクセス制御は、データ保護には無関係です。
AWSの暗号化サービスとしては
S3内の保存データに対する暗号化機能もサポートされており、コンソールでの操作で簡易に実現できます。
- あらゆる規模のストリーミングデータを、コスト効率よく、リアルタイムに収集・処理・分析するためのサービスは次のうちどれですか?
SQS
Kinesis
SES
CloudFront
正解
Amazon Kinesisを利用すると、あらゆる規模のストリーミングデータをコスト効率よくリアルタイムに収集・処理・分析することができるサービスです。
Kinesisのストリームは複数のシャードで構成されます。シャードとは、ストリーム内の一意に識別されたデータレコードの連続した固まりです。ストリームのデータ容量はシャードの数を指定することで決まるため、この値を変更することでデータ容量を簡単に拡張することができます。- 複数の EC2 インスタンスを計算機として利用し、データの処理と複雑な計算を高速で実行する(HPC)環境を検討しています。EC2 インスタンスは相互に高頻度で通信できる必要があり、また低レイテンシーかつ高いスループットのネットワークパフォーマンスが必要となります。これらの要件を満たすため、最適な EC2 インスタンスの構成を選択してください。
クラスタープレイスメントグループをアベイラビリティゾーン内に構成し、当該グループで EC2 インスタンスを動作させる
VPCをピアリングした、2つのリージョンに Auto Scaling グループを配置し、EC2インスタンスを動作させる
スプレッドプレイスメントグループをアベイラビリティゾーン内に構成し、当該グループで EC2 インスタンスを動作させる
Auto Scaling グループを複数のアベイラビリティゾーンにまたがる形で配置し、EC2 インスタンスを動作させる
正解
「クラスタープレイスメントグループをアベイラビリティゾーン内に構成し、当該グループで EC2 インスタンスを動作させる」が正解です。通常 EC2 インスタンスのハードウェアへの配置は、AWS 側で可能な限り分散させらます。一方で、ユーザ側のニーズに応じて、物理配置をコントロールする機能が用意されています。それをプレイスメントグループと呼び、問題の、HPCのような低レイテンシーかつ高いスループットの要件を満たすためにはクラスタープレイスメントグループを利用します。他にもパーティションプレイスメントグループ、スプレッドプレイスメントグループといったグループが利用可能です。
※参考
プレイスメントグループ- 毎月、数千種類の月次報告書を生成しています。ファイル容量は1GB程度になります。これらの報告書のうち約10%は最初の3日間に1回アクセスされますが、30日後にはほとんどアクセスされません。ただし、コンプライアンス上の理由から月次報告書は保持し続ける必要があります。
これらの要件を満たす費用対効果の高いアーキテクチャを選択してください。
Amazon S3 標準 低頻度アクセスのストレージクラスに月次報告書をアップロードします。バケット上にライフサイクル設定を設定して、30 日後に月次報告書を Amazon S3 Glacier に移行します。
Amazon S3 Glacier に月次報告書をアップロードします。月次報告書が必要なタイミングで、Amazon S3 標準のストレージクラスにコピーしてアクセスします。
Amazon S3 標準 低頻度アクセスのストレージクラスに月次報告書をアップロードします。月次報告書が必要なタイミングで、Amazon S3 標準のストレージクラスにコピーしてアクセスします。
Amazon S3 標準のストレージクラスに月次報告書をアップロードします。バケット上にライフサイクル設定を設定して、30 日後に月次報告書を Amazon S3 Glacier に移行します。
正解
Amazon S3 標準報告書の約 10 %は最初の 3日間に 1 回アクセスされるため、必要に応じてすぐにアクセスできる必要があります。Amazon S3 Glacier はアクセスまできるまで時間がかかるため一時保管として適しません。また、Amazon S3 標準 低頻度アクセスのストレージクラスはすぐにアクセスできますが、取り出し料金が GB あたり発生します。30 日の保管期間があるため S3 標準 よりもS3 標準 低頻度の方がコスト面で有利です。
30 日後、月次報告書はアクセスされなくなるが、保存する必要があると記載があるため、長期保存でコストが優れる Amazon S3 Glacier にデータをバケット上のライフサイクル設定を行うことが適切です。
■Amazon S3 標準の代表的な種類は以下の通りです。
Amazon S3 標準は、頻繁にアクセスするデータのためのオブジェクトストレージを提供します。S3 標準は、低レイテンシーと高スループットを提供するため、標準は、クラウドアプリケーション、動的なウェブサイト、コンテンツ配信、モバイルやゲームのアプリケーション、ビッグデータ分析などのさまざまなユースケースに最適です。S3 ライフサイクル管理は、オブジェクトを最も適切なストレージクラスに自動的に移行させるための設定可能なポリシーを提供しています。
Amazon S3 標準 :低頻度アクセス(S3 標準 : IA)は、低頻度でアクセスされるものの、必要なときにすぐにアクセスできることが必要なデータのための Amazon S3 ストレージクラスです。S3 標準 – IA は、 S3 標準と同じ高い耐久性、高スループット、低レイテンシーを低価格のストレージ料金(GB 単位)および取り出し料金(GB 単位)で提供します。S3 標準 – IA ストレージクラスはオブジェクトレベルで設定され、S3 標準として同じバケットに存在できるため、S3 ライフサイクルポリシーを使用して、ストレージクラス間のオブジェクトの移行を自動的に行えます。
Amazon S3 1 ゾーン – 低頻度アクセス (1 ゾーン : IA)は、低頻度でアクセスされるものの、必要なときにすぐにアクセスできることが必要なデータのための Amazon S3 ストレージクラス です。データを少なくとも 3 つのアベイラビリティーゾーン (AZ) に保存する他の Amazon オブジェクトストレージクラスとは異なり、S3 1 ゾーン – IA はひとつのAZ にデータを保存します。このため、S3 1 ゾーン – IA は S3 標準 – IA での保存に比べてコストが 20% 低くなっています。S3 1 ゾーン – IA はアクセスが頻繁ではないデータに、S3 標準または S3 標準 – IA ストレージのようなアベイラビリティーを必要としない場合に低コストのオプションとして最適です。例えば、オンプレミスデータのバックアップ先や別のAWSリージョンのS3バックアップ(クロスリージョンレプリケーション)として利用する場合に最適です。S3 1 ゾーン : IA はひとつの AWS アベイラビリティーゾーンに保存しますので、このストレージクラスに保存されたデータはアベイラビリティーゾーン障害が発生するとデータが消失する可能性があります。- メッセージキューイングサービスであるAmazon SQSでは、標準キューとFIFOキューという二つのキュータイプを提供しています。
メッセージの順序付けについて、標準キューの説明として正しいものは次のうちどれですか?
標準キューはメッセージの順序付けが保証されている
順序に厳密な順序づけのロジックが組み込まれている
標準キューはメッセージの順序付けが保証されていない
順序に厳密な順序づけのロジックが組み込まれているが、ランダマイズの性質があるため機能しない場合もある
正解
標準キューから送られるメッセージはFIFO(First In, First Out)キューと異なり、順序を保証しません。ですが、厳密ではない FIFO機能が備わっているため、負荷が低い状況の場合はキューにデータが詰められた順番通りにメッセージが配信されます。標準キューの方がFIFOキューよりも優れていない様に感じますが、その分ほぼ無制限のトランザクションをサポートしています。順序がそれほど大事ではないが、大量のリクエストが送られることが予想される場合は標準キューを利用しましょう。
※参考
Amazon SQS の特徴- AWSで稼働しているシステムのリソースに対する災害復旧計画の立案を検討しています。必要に応じて、他のリージョンで同じインフラストラクチャを起動できるように考えており、コストを最小限に抑えたいと考えています。
この要件を満たすアーキテクチャを選択してください。
別のリージョンにパイロットライト(停止した状態のサーバーを別のリージョンに用意)なインフラストラクチャーを準備しておく。
同じインフラストラクチャーを別のリージョンに構築する。
Opsworksにより、既存システム構成を準備しておく。
CloudFormationにより、既存システム構成を準備しておく。
正解
AWS CloudFormation は Amazon Web Services リソースのモデル化およびセットアップに役立つサービスです。
「CloudFormationにより、既存システム構成を準備しておく。」が正解となります。CloudFormationによる既存システム構成を準備しておくことで容易に同じインフラ環境を準備することができ、コストがかかりません。よって、最低コストという要件であれば、これを選択します。適切なAMIなどの指定によって、EC2インスタンスやEBSデータの内容も継承しつつ、インフラを復元することができます。
「Opsworksにより、既存システム構成を準備しておく。」は不正解です。OpsWorksは独自の設定管理システムを運用したり、そのインフラストラクチャを管理する際に利用される、複雑な設定や自動管理をするために用いられるサービスになります。
「同じインフラストラクチャーを別のリージョンに構築する。」と「別のリージョンにパイロットライト(停止した状態のサーバーを別のリージョンに用意)なインフラストラクチャーを準備しておく。」は不正解です。同じインフラストラクチャーを別のリージョンに構築することや、別のリージョンにパイロットライトなインフラストラクチャーを準備しておくことでもBCP対応は可能です。しかしながら、インフラを維持するコストが発生してしまいます。- さまざまなデータ源からデータを収集・統合・蓄積し、分析するためのデータウェアハウスを提供するAWSサービスは次のうちどれですか?
AWS Snowball
Amazon Kinesis
Amazon DynamoDB
Amazon RedShift
正解
Amazon RedshiftはAWSが提供するデータウェアハウスサービスです。
データウェアハウス(DWH)というのは、さまざまなデータ源からデータを収集・統合・蓄積し、分析のため保管しておくシステムです。一般的なRDBMSとは違って、継続的な書き込みや更新よりも一括でデータを書き込み分析のため大容量データを読み出すという処理に最適化されています。
Redshiftを使うと、保存されている大規模なデータに対して分析クエリを実行できます。Amazon S3 に保存されているデータに対しても分析クエリを直接実行することができます。また、一般的に広く利用されているSQLにも対応しているため、他データベースやソフトウェアとの連携がしやすいという利点があります。- インスタンスやイメージなどの Amazon EC2 リソースを管理しやすくするために、独自のメタデータをタグとして各リソースに割り当てることができます。
タグを使用すると、AWS リソースを目的別に分類するといった管理ができる様になります。
次のうち、EC2インスタンスに付与できるタグの上限はどれですか?
50
70
100
30
正解
Amazon EC2リソースにつける事の出来るタグには、以下のような基本制限があります。
・キーは最大128 文字まで。
・値は最大256 文字まで。
また、大文字と小文字は区別されます。1リソースあたりにつけることが出来るタグの最大数は 50個までです。
注意点として、aws:というプレフィックス文字が予約語として登録されているため、ユーザーはaws~というプレフィックスを使うことが出来ません。
※AWS が生成したタグ の名前と値には自動的に aws: というプレフィックスが付けられます。
1つのリソースに対して、同名のキーを利用する事は出来ません。同名のキーを同じリソースに対して使用すると失敗します。
また、タグをつけて管理する場合、タグをつけた時点からデータ収集が行われます。つまり、過去にさかのぼった集計が自動で行われる訳ではありません。
そのため、Amazon EC2リソースを作成する前に、あらかじめどの様なタグを設定するか検討しておくと良いでしょう。
※参考
ユーザー定義タグの制限- シングルサインオンを実現するために、IAMと認証基盤(LDAP)を連携する場合に利用する技術として正しいものは次のうちどれですか。
IAMロール
アクセスキーとシークレットキー
SAML 2.0
OpenAM
正解
SAML 2.0は認証連携によるSSO(シングルサインオン)を簡単に実現するためのプロトコルになります。- WEBアプリケーションをEC2インスタンスで構築しています。このWEBアプリケーションは、200GB規模のリレーショナルデータベース(RDS)を利用したデータ処理を行なっています。特定の時間帯にピーク時間があるものの、性能処理は要求されていません。
このWEBアプリケーションのEC2インスタンスにおける構成として、最もコスト効率が良いストレージタイプを選択してください。
汎用SSD
スループット最適化HDD
EFS
コールドHDD
EBSプロビジョンドIOPS SSD
正解
汎用SSDは、コストと性能バランスが良く、開発環境やテスト環境など、幅広い用途での利用に適しています。
「汎用SSD」が正解となります。汎用SSDは幅広いトランザクションワークロードに対応できる価格とパフォーマンスのバランスが取れたSSDです。200GBのRDSを利用している小規模なシステムであることが分かります。ピーク時間が4時間ほど集中しているものの高速アクセスは必要ないと考えると汎用SSDで対応可能と判断できます。
「スループット最適化HDD」は不正解です。スループット最適化HDDは高いスループットを必要とするアクセス頻度の高いワークロード向けの低コストの HDD ボリュームであり、こちらもスループットで高い性能が期待しつつ、プロビジョンドIOPS SSDよりも低コストで実現することができます。コスト最適を求める場合に選択します。今回の要件ではスループット性能は特に求められていないため不適切です。
「EFS」は不正解です。Amazon EFS は、レイテンシーの影響を受けやすい単一スレッドのワークロードに可能な限り高いスループットを必要とする、高度に並列化されたスケールアウト型ワークロードの多様なユースケースをサポートするのに利用します。今回の要件では最適なEBSボリュームを選択する必要があります。
「EBSプロビジョンドIOPS SSD」は不正解です。プロビジョンドIOPSはレイテンシーの影響が大きいトランザクションワークロード向けに設計された極めてパフォーマンスの高い SSD ボリュームです。コストが高いですが最も高い性能が期待できます。今回の要件ではI/O性能やスループット性能は特に求められていないため不適切です。
「コールドHDD」は不正解です。EBSのコールドHDDはアクセス頻度の低いワークロード向けに設計された極めて低コストの HDD ボリュームです。今回の要件ではアクセス頻度が低いボリューム利用は求められていません。- AWS 上で SQS というサービスを使ったアプリケーションを検討しています。SQS の利用シーンとして最適なものを選択してください。
Web アプリケーションにてユーザのセッション情報を保存する場合
利用者からアップロードされた動画ファイルを複数の EC2 インスタンスを使って非同期なジョブとして処理する場合
データベースインフラとして、アプリケーション上でデータを同期保存する場合
ストリーミングデータをリアルタイム処理する場合
正解
「利用者からアップロードされた動画ファイルを複数の EC2 インスタンスを使って非同期なジョブとして処理する場合」が正解です。Amazon SQS は完全マネージド型のメッセージキューイングサービスです。メッセージキューは、1 つのシステムのさまざまな部分で、通信やオペレーション処理を非同期で実行できるようにします。メッセージキューを使うことで、重い処理の分割、バッファーまたはバッチ処理、およびスパイクの多いワークロードを円滑にすることができます。
※参考
メッセージキュー
Amazon Simple Queue Service- インターネット公開サブネットにEC2インスタンス(踏み台サーバ)、内部サブネットにRDS(MySQL)が設置されています。
EC2インスタンスとRDS(MySQL)は同じAZに設置されており、EC2インスタンス経由でRDS(MySQL)にアクセスすることが可能です。
単一のAZ障害が発生した際にもRDSが利用可能な対策を次の中から2つ選択してください。
別のAZにNATゲートウェイを設置し、NATゲートウェイ経由でRDSにアクセスする。
データベースのバックアップデータを別AZのRDSにリストアし、RDSの複数AZ構成を実現する。
別AZにEC2(踏み台サーバー)を構築し、RDSへのアクセスを可能にする。
RDSのマルチAZ配置(DBインスタンスのスタンバイを別のAZに配置する)機能を有効化する。
Route 53を利用して、RDSフェールオーバー構成を実現する。
正解
Amazon RDS はマネージド型リレーショナルデータベースです。RDSのマルチAZ配置(DBインスタンスのスタンバイを別のAZに配置する)機能を有効化する。が正解となります。Amazon RDS は、マルチ AZ 配置を使用して DB インスタンスの高可用性およびフェイルオーバーサポートを提供します。RDS コンソールを使用すると、DB インスタンスを作成する際にマルチ AZ を有効化するだけでマルチ AZ 配置を作成できます。コンソールを使用し、DB インスタンスを変更してマルチ AZ オプションを指定することで、既存の DB インスタンスをマルチ AZ 配置に変換できます。AWS CLI または Amazon RDS API を使用してマルチ AZ 配置を指定することもできます。
別AZにEC2(踏み台サーバー)を構築し、RDSへのアクセスを可能にする。が正解となります。パブリックサブネットにある踏み台サーバーをマルチAZ構成にして、RDSへのアクセスできる構成を冗長化します。これによって、AZ障害によって踏み台サーバー自体が停止した時にも対応できるようにします。
他選択肢について、
Route53を利用したフェールオーバー構成によって、マルチリージョンな構成が可能となりますが、AZ障害への対応にはマルチAZ構成で十分です。
RDSのマルチAZ構成はバックアップからRDSを複製する必要はありません。マルチAZを有効化するだけで実現可能です。
NATゲートウェイによるアドレス変換はRDSに対しては必要ありません。- セキュリティグループを使ってルールを変更したい。セキュリティグループのルール内容を変更する場合、EC2インスタンスにその変更内容が反映されるタイミングとして正しいものを選択してください。
新たにセキュリティグループに追加したEC2インスタンスには反映されるが、既存のEC2インスタンスには反映されない
数分経過後に反映される
EC2インスタンスを再起動した後に反映される
即時反映される
正解
「即時反映される」が正解です。ルールを追加または削除すると、セキュリティグループに関連付けられたすべてのインスタンスにこの操作が自動的に適用されます。
※ 参考
セキュリティグループのルール- AWS CloudFront でオリジンサーバとして設定できるものは次のうちどれですか?
Amazon S3
パブリックなWebサーバー
プライベートなWebサーバー
選択肢の全て
不正解
CloudFrontのオリジンサーバは、以下の3種類に分類することができます。
オリジンサーバとは、コンテンツを配信する元となっているサーバのことです。
①S3オリジン(バケット)
②S3オリジン(静的ホスティング)
③カスタムオリジン(カスタムオリジンとは一般的なWebサーバでありパブリックとプライベートの両方を扱うことができます。)- 単一のAZに複数のEC2インスタンスを設置し、ELBとAutoScalingを設定したWEBアプリケーションを運用しています。以前、この単一のAZの障害が発生し、サービスが停止するトラブルが発生しました。
本WEBアプリケーションの可用性を確保する方法を次の中から2つ選択してください。
AutoScalingの起動設定を複数のAZを跨いで構成する。
AutoScalingのスケーリンググループを複数のAZを跨いで構成する。
EC2インスタンスを別AZに起動して、ELBターゲットをAZを跨いで設定する。
EC2インスタンスを別AZに起動して、Route53によりフェールオーバールーティングを設定する。
EC2インスタンスを別AZに起動して、ELBのスティッキーセッションを有効化する。
不正解
マルチAZ構成とは複数のAZを使用するシステム構成になります。
このシナリオでは、1つのAZにEC2インスタンスが設置されているため、AZ障害が発生した際にアプリケーション全体が停止してしまうリスクがあります。したがって、マルチAZ構成を実現するための最適な構成を選択することが必要です。
「EC2インスタンスを別AZに起動して、ELBターゲットをAZを跨いで設定する。」が正解となります。EC2インスタンスを別AZに起動して、ELBターゲットをAZを跨いで設定することで、ELBがAZを跨いでEC2インスタンス間でトラフィックを制御してくれます。これによって、1つのAZが停止した場合は、残ったAZでEC2インスタンスの処理を継続させることができます。
「AutoScalingのスケーリンググループを複数のAZを跨いで構成する。」が正解となります。AutoScalingのスケーリンググループをAZ間を跨いで構成することで、1つのAZでのEC2インスタンスが停止したとした場合に、その処理負荷を生き残ったAZに新規インスタンスを起動させることで軽減させることができます。
「AutoScalingの起動設定を複数のAZを跨いで構成する。」は不正解です。AutoScalingの起動設定はAutoScalingで起動するインスタンスタイプなどの設定となります。
「EC2インスタンスを別AZに起動して、Route53によりフェールオーバールーティングを設定する。」は不正解です。Route53によりフェールオーバールーティングを設定することは可能ですが、これは2つのEC2インスタンス間でのフェールオーバー構成を実施することしかできません。今回はELBで複数インスタンス間でのトラフィック分散を実現することが最適な構成となります。
「EC2インスタンスを別AZに起動して、ELBのスティッキーセッションを有効化する。」は不正解です。ELBのスティッキーセッションを有効化すると、同じユーザーのセッションは特定のEC2インスタンスでの処理を継続することができますが、問題の回答とは異なります。- CloudFormationのテンプレートを定義する際に必須となる項目は次のうちどれがですか?
パラメータ
メタデータ
バージョン
リソース
正解
CloudFormationのテンプレートは、CloudFormationでAWSリソースを作成するための設計図のようなものです。テンプレートはJSON または YAML 形式で記述されています。
Cloudformationテンプレートの中で必ず記述する必要のある項目は Resource オブジェクトです。Resourceオブジェクトは、その名の通りAWS上の操作対象リソースを表す項目です。CloudFormationのテンプレート内で少なくとも 1 つのリソースを記述する必要があります。- SNS(Simple Notification Service)を利用する際に、利用することのできるエンドポイントは次のうちどれですか?
全てをエンドポイントとして利用できる
HTTP/HTTPS、AWS Lambda、Eメールをエンドポイントとして利用できる
AWS LambdaとEメールをエンドポイントとして利用できる
EメールとXMLをエンドポイントとして利用できる
不正解
SNSのエンドポイントとは、SNSから送信されるメッセージの受信方法のことを指しています。エンドポイントには、HTTP/HTTPS、AWS Lambda、Eメール、SQS、SMS、モバイルプッシュ通知を利用することができます。
XMLは利用することができません。- WEBサーバはEC2インスタンス、ELBとAutoScallingグループを用いた構成で実装しています。静的コンテンツはAmazonS3バケットに保存し、CloudFrontによる配信を行っています。
現在のWebページの平均読み込み時間をさらに短縮するための対策を次の中から2つ選択してください。
Route53を追加して、マルチバリュー(1つのFQDNに対して複数のIPアドレスを回答)のルーティングによる負荷分散を実施し、データベースの負荷を軽減する対策。
世界中に分散されたエッジロケーションのネットワークであるCloudFrontを使用し、静的コンテンツをキャッシュする対策。
データベースへの読み込み負荷を分散させるために、RDS DBインスタンスにリードレプリカを追加する対策。
RDSのマルチAZ構成にすることで、データベースの負荷を軽減する対策。
ユーザセッション情報と頻繁に発行されるDBクエリを保存するためにElastiCacheを使用し、データベースの負荷を軽減する対策。
不正解
ElastiCacheはデータをノードのメモリに保存するので非常に高速でデータの出し入れすることができます。
回答では、RDSの読み取り処理を向上させる手段を選択します。RDSのインスタンスタイプ自体を高性能なもの変更する、またはRDSのリードレプリカを増加させることで読み取り負荷を分散化させる、といったRDS側の対応があります。RDS側の対応以外では、Amazon ElastiCacheやCloudFrontを使用して読み取り容量を増やすことにより、アプリケーションのページ読み込み時間を改善できます。 正解は、以下の2つになります。
・「ユーザセッション情報と頻繁に発行されるDBクエリを保存するためにElastiCacheを使用し、データベースの負荷を軽減する。」
・「データベースへの読み込み負荷を分散させるために、RDS DBインスタンスにリードレプリカを追加する。」
なお、「RDSのマルチAZ構成にすることで、データベースの負荷を軽減する。」は不正解です。RDSのマルチAZ構成により可用性が高めることができますが、パフォーマンスは改善しません。
「Route53を追加して、マルチバリューのルーティングによる負荷分散を実施し、データベースの負荷を軽減する。」は、Route53の複数値回答ルーティングは各リソースが正常かどうかも確認するため、Route 53 は正常なリソースの値のみを返します。これはロードバランサーに置き換わるものではありませんが、正常であることが確認できる複数の IP アドレスを返す機能により、DNS を使用してアベイラビリティーとロードバランシングを向上させることができます。しかしながら、データ処理の性能向上には利用できません。
「世界中に分散されたエッジロケーションのネットワークであるCloudFrontを使用し、静的コンテンツをキャッシュする。」は、既に元の構成ではCloudFrontを利用しており、この構成を利用しても改善になりません。- AWS で構築しているシステムを統括的に監視したいと考えています。EC2 や S3 などの AWSリソースの監視を行うために最適なサービスを選択してください。
Amazon Simple Notification Service を利用する
Amazon S3 を利用する
Amazon CloudFront を利用する
Amazon CloudWatch を利用する
正解
「Amazon CloudWatch を利用する」が正解です。CloudWatch は、ログ、メトリクス、およびイベントという形式でモニタリングデータと運用データを収集し、AWS とオンプレミスのサーバーで実行される AWS のリソース、アプリケーション、およびサービスの統合されたビューをユーザーに提供します。その他の選択肢は、監視を提供するようなサービスではありません。
・Amazon SNS (Simple Notification Service) → プリケーション対アプリケーション(A2A)間と、アプリケーション対個人(A2P)間の両方の通信に使用できる、フルマネージド型メッセージングサービス
・Amazon CloudFront → 静的及び動的な Web コンテンツの配信を高速化するサービス
・Amazon S3 → スケーラビリティ、データ可用性、セキュリティ、およびパフォーマンスを提供するオブジェクトストレージサービス
※参考
Amazon CloudWatch- AWSではパフォーマンスとコストを容易に最適化するためのサービスとして、AWS Auto Scalingという機能を提供しています。
Auto Scalingについて、誤っている説明は次のうちどれですか?
複数のAZを跨いでスケールアウト(増加)することができる
スケールインする際は、AZのEC2インスタンス数が同じ場合は、もっとも起動時間が短いインスタンスを停止する。
スケールアウトするEC2インスタンスの上限数を設定できる
スケールイン(縮小)する際は、EC2インスタンスが最も多く起動しているアベイラビリティーゾーンのインスタンスから停止する
不正解
AWS Auto Scaling を使用すると、複数のサービスにまたがる複数のリソースのためのアプリケーションスケーリングを数分で簡単に設定できます。
Auto ScalingでスケールアウトしたEC2インスタンスをスケールインする場合、デフォルトでは以下の順番で実行されます。
・インスタンス数(最も多いAZから優先)
・上記同条件の場合、起動設定が古いインスタンスがあるAZを優先
・起動設定が古いインスタンスが複数ある場合は、次の課金発生までの時間が最も短いインスタンスを優先
・次の課金発生までの時間が同じインスタンスが複数ある場合はランダム- Web アプリケーションにて、あるWeb ページへのアクセス頻度が非常に高い。AWS のサービスにて、このようなアクセス頻度の高い Web ページをキャッシュし、かつユーザに近いロケーションでコンテンツを提供してくれるサービスを選択してください。
ELB を利用する
EC2 を利用する
SQS を利用する
CloudFront を利用する
正解
「CloudFront」が正解です。Cloud Front は、静的及び動的な Web コンテンツの配信を高速化するサービスです。エッジロケーションは、世界各地にあるAWSのデータセンターで、CloudFront はユーザが最も低レイテンシーとなるエッジロケーションからコンテンツを提供かつキャッシュしてくれるサービスとなります。また CloudFront は CDN(Content Delivery Network)の位置づけとなっています。
※参考
Amazon CloudFront とは何ですか?
【図解】CDNとは?仕組みと技術の基礎知識- ほとんどのユーザーが、特定のユーザーグループに属しながら自分のパスワードを変更する機能を制限する最良の方法は何ですか?正しい組み合わせ選択してください。
ユーザーが自分のパスワードを変更できないようにIAMパスワードポリシーの設定を変更します。ユーザーが自分のパスワードを変更し、特定のユーザーグループにアタッチできるIAMポリシーを作成します
ユーザーが自分のパスワードを変更し、特定のユーザーグループにアタッチできるIAMポリシーを作成します。ユーザーが自分のパスワードを変更し、特定のユーザーグループにアタッチする権限を付与するIAMロールを作成します。
ユーザーが自分のパスワードを変更し、特定のユーザーグループにアタッチする権限を付与するIAMロールを作成します。ユーザーが自分のパスワードを変更し、個々のユーザーアカウントにアタッチできるようにするIAMポリシーを作成します。
ユーザーが自分のパスワードを変更し、個々のユーザーアカウントにアタッチできるようにするIAMポリシーを作成します。AWS Security Token Serviceにより、すべてのユーザーが自分のパスワードを変更する機能を無効にするよう設定します。
正解
・パスワードの長さや複雑さなどを強制するためのパスワードポリシーを定義できます(すべてのユーザーに適用)。
・パスワードを変更する機能を制限するIAMポリシーをユーザーを含むグループにアタッチする必要があります。
・IAMロールを使用してこの機能を実行することはできません。
・AWS STSは一時的なAWSリソースへのアクセスの都度、動的に一時的な認証情報を発行するサービスです。IAMユーザーのパスワードポリシーの制御には使用されません。- あなたはオンプレからAWSへの移行を検討しています。AWS以外で作成した仮想マシンイメージを、AWS環境へインポートする際に利用できるサービスは次のうちどれですか?
AWS Import/Export
VM Import/Export
AWS Snowball
AWS Storage Gateway
不正解
VM Import/Export を使用すると簡単に、仮想マシンイメージを既存の環境から Amazon EC2 インスタンスにインポートしたり、オンプレミス環境にエクスポートしたりすることできます。この機能によって、元々持っていた仮想マシンを AWSに持ち込み、Amazon EC2 のインスタンスとしてすぐに使用できる状態とすることができます。これにより、IT セキュリティ・構成管理・コンプライアンス等、効率的に要件に合わせて仮想マシンを作成できます。
AWS Storage Gateway は、オンプレミスから実質無制限のクラウドストレージへのアクセスを提供するハイブリッドクラウドストレージサービスです。Storage Gateway を使用して、ストレージ管理を簡素化し主要なハイブリットクラウドストレージの仕組みを素早く構成することができるためコストを削減できます。
Snowball はセキュリティに考慮して設計されたデバイスを使用するペタバイト規模のデータ転送ソリューションで、AWS クラウド内外に大容量データを転送できます。- AWSで世界中のユーザーにコンテンツを提供するアプリケーションをホスティングしています。このアプリケーションはプライベートサブネット上にある EC2 インスタンスにデプロイされており、前段に ALB を利用しています。一方で、著作権制限に変更があったため、特定の国からのアクセスに制限を設ける必要があります。これを満たすための最適なアクションを選択してください。
CloudFront を使ってコンテンツを提供するように設定を変更し、制限を設ける国からのアクセスを拒否する
EC2インスタンスに関連付けられたセキュリティグループの設定を変更し、制限を設ける国からのインバウンドトラフィックを拒否する
ALBのリスナールールに、制限を設ける国からのアクセスに対してアクセス拒否(403)のレスポンスを返すルールを追加する
ALBに関連付けられたセキュリティグループの設定を変更し、制限を設ける国からのインバウンドトラフィックを拒否する
不正解
「CloudFront を使ってコンテンツを提供するように設定を変更し、制限を設ける国からのアクセスを拒否する」が正解です。CloudFront では、GeoIP データベースを使い、地理的ディストリビューションの制限 機能を使うことができます、この機能を利用することで、ある国(地域)からのアクセスに対して 403 (アクセス拒否) のレスポンスを返すことが可能です。
※参考
コンテンツの地理的ディストリビューションの制限- AWSではWEBブラウザでAWSサービスにアクセスする以外の方法として、
AWS CLIというコマンドラインを利用した方法も提供されています。
AWS CLIを利用するために必要な権限情報は次のうちどれですか?
IAMユーザのログインIDとパスワード
同じアカウント内であれば認証情報は不要
AWS CLIで操作する対象サービスの操作権限を付与されたIAMロール
AWS CLIで操作する対象サービスの公開鍵
不正解
AWS CLIを利用するために必要なものです。
・対象サービスの操作権限が付与されたIAMロール
・もしくはアクセスキーとシークレットアクセスキー
セキュリティの観点からアクセスキーでの認証より、IAMロールでの認証の方が適切と言えます。
※参考
AWS アクセスキーを管理するためのベストプラクティス
また、WEBブラウザでアクセスするページのUIは変わることがあるため、同じオペレーションで継続して管理するためにはAWS CLIを利用した方が良い場合があります。- EC2インスタンスに構築した画像識別ソフトウェアは、大量の画像データを処理しますが、処理時間が膨大にかかっていることが問題になっています。
画像識別ソフトウェアを継続して利用する場合の対策として間違っているアーキテクチャを選択してください。
AutoScalingグループに利用したEC2インスタンスにより処理ができるようにする対策。
EC2インスタンスのインスタンスタイプを変更する対策。
SQSを利用してEC2インスタンスによる並行処理ができるようにする対策。
EC2インスタンスの代わりにLambda関数による処理ができるようにする対策。
正解
AWS Lambda API またはコンソールを使用して、関数を作成することができます。
このシナリオでは、画像処理を実行するEC2インスタンスの処理性能が不足していることがわかります。ここでは、EC2インスタンスのAutoScalingは全体的な処理時間を短縮し、SQSはコマンド/タスクをEC2インスタンスのグループに分散することで、可用性を高めることができます。また、EC2インスタンスのタイプをより性能が高いものに向上させることで、処理性能を上げることも可能です。したがって、これらの要素を取り入れた「SQSを利用してEC2インスタンスによる並行処理ができるようにする。」と「AutoScalingグループに利用したEC2インスタンスにより処理ができるようにする。」とEC2インスタンスのインスタンスタイプを変更する。は正しいオプションとなっています。
「EC2インスタンスの代わりにLambda関数による処理ができるようにする。」は正しくないアーキテクチャ構成となるため正解となります。Lambda関数によって処理をするためには、画像処理ソフトウェアを実行するにはサーバーとしてのEC2インスタンスが必要となるため、正しくありません。仮にAPIであるAmazon Rekognition ImageをLambda関数で呼び出す処理であれば、Lambda関数による処理に変更することで高パフォーマンスな対応が可能となります。しかしながら、本件の要件では画像識別ソフトウェアの利用を継続することのため適さない内容となります。- AWSで可用性の高いシステムを構築するためには、Design for Failureという考え方が重要と言われています。
これは、Well-ArchitectedとしてAWSが提示している物です。
Design for Failureの説明や具体的な対策として、正しいものは次のうちどれですか?
密結合を目指したシステム設計
障害を発生させないようなシステムを設計
障害が発生してもサービスが継続できるようなシステム設計
単一障害点を複数に分散
正解
Design for Failureとは、障害を回避する設計ではなく、障害が発生してもサービスを継続できるように設計しましょう、という考え方になります。
クラウドサービスも完璧ではないため、障害は発生します。AWSでもAWSのデータセンター内部の(ユーザーにとっては回避不可能な)障害が何度か発生しています。
そのため、システムの可用性を向上させることを重要としています。
しかしながら、障害を前提としてたくさんインスタンスをたてるとオンプレミスよりも運用コストが高額となってしまいます。
きちんと利益を計算し、損益分岐点を意識した設計としましょう。- テレビ番組のオンライン投票システムを運営しています。テレビ放映中、数分以内に数十万票が投じられ、AutoScalingされたEC2インスタンスに送信されます。EC2インスタンスは投票結果をRDBMSデータベースに格納します。現在、データベースの負荷が増大し、処理しきれない課題が生じています。
投票結果がタイムリーに処理されることを保証する費用対効果の高い方法を選択してください。
各フロントエンドノードは、投票を Amazon SQS キューに送信する必要があります。ワ ーカーインスタンスをプロビジョニングして、SQS キューを読み取り、メッセージ情報を RBDMS データベースに処理する。
より大きな、メモリ最適化インスタンスで RDBMS データベースを再プロビジョニングし ます。投票が終了したら、バックエンドデータベースを小さいインスタンスで再プロビジョニングする。
各フロントエンドのノードから Amazon DynamoDB に投票を送信します。ワーカーイン スタンスをプロビジョニングして、DynamoDB の投票を RDBMS データベースに処理する。
データベースの負荷が増加するにつれて、メモリ最適化インスタンスを追加して RDBMS データベースを水平にスケーリングします。投票が終了したら、追加のインスタンスをスケールダウンする。
正解
SQS は疎結合を提供し、データベースキューのバッファーとして機能します。また、スパイクは一時的なものであるため、RDBMS を拡張する必要はありません。
■以下は誤りになります。
「各フロントエンドのノードから Amazon DynamoDB に投票を送信します。ワーカーイン スタンスをプロビジョニングして、DynamoDB の投票を RDBMS データベースに処理する。」
「より大きな、メモリ最適化インスタンスで RDBMS データベースを再プロビジョニングし ます。投票が終了したら、バックエンドデータベースを小さいインスタンスで再プロビジョニングする。」→RDBMS は小さなインスタンスで再プロビジョニングできないため間違いです。
「データベースの負荷が増加するにつれて、メモリ最適化インスタンスを追加して RDBMS データベースを水平にスケーリングします。投票が終了したら、追加のインスタンスをスケールダウンする。」→Auto Scaling は すべての RDBMS に適用されないため間違いです。- あなたは社内で利用する基幹業務アプリケーショ ンの設計を依頼されました。
基幹業務において、データの不整合が許されないためリレーショナルデータベースを使用することが確定しています。
また、利用者も多いため、1秒間辺り最大で32,000ほどのI/Oが発生する想定です。
このアプリケーションのパフォーマンス要件を満たす Amazon EBS ボリュームタイプはどれですか。
EBS プロビジョンドIOPS SSD
EBS スループット最適化HDD
EBS 汎用SSD
EBS コールドHDD
正解
まず初めに、最大32,000IOPSという高いスループットを要求されているため、HDDは選択肢から外すことになり、残る選択肢は、プロビジョンドIOPS SSDと汎用SSDです。
汎用SSDの場合、最大16,000IOPSとなっている場合、問題文の要件を満たすには
プロビジョンドIOPSを利用する必要があります。
※参考
Amazon EBS ボリュームの種類- ある企業は数十あるサーバーから送信され続けるログを蓄積し、分析する仕組みが必要です。それぞれのサーバーは5分ごとにログ情報を送信します。
この要件を満たす最適なサービスの組み合わせを選択してください。
Kinesis Data Firehoseを利用してS3にログを蓄積し、Athenaを利用してログ解析を行う組み合わせ
Lambdaを利用してS3にログを蓄積し、Athenaを利用してログ解析を行う組み合わせ
Kinesis Data Firehoseを利用してRDSにログを蓄積し、Athenaを利用してログ解析を行う組み合わせ
Lambdaを利用してDynamoDBにログを蓄積し、Athenaを利用してログ解析を行う組み合わせ
不正解
「Kinesis Data Firehoseを利用してS3にログを蓄積し、Athenaを利用してログ解析を行う組み合わせ」が正解となります。
Amazon Kinesis Data Firehose は、アクセスログなどのストリーミングデータを各種データストアにロードできます。蓄積場所としてはAmazon S3、Amazon Redshift、Amazon Elasticsearch Service、Splunk などがあり、設問の要件では大量ログをコスト効率よく蓄積するためS3を選択することが最適です。
Amazon Athena ではAmazon S3 内のデータを標準 SQL を使用して簡単に分析できます。
「Lambdaを利用してS3にログを蓄積し、Athenaを利用してログ解析を行う組み合わせ」は不正解です。
Lambdaを利用してS3にログを蓄積することも実装次第では可能ですが、専用サービスであるAmazon Kinesis Data Firehoseを利用する方が効率的です。
「Kinesis Data Firehoseを利用してRDSにログを蓄積し、Athenaを利用してログ解析を行う組み合わせ」は不正解です。
RDSよりもS3にログを蓄積する方がコストも安く、最適な構成といえます。
「Lambdaを利用してDynamoDBにログを蓄積し、Athenaを利用してログ解析を行う組み合わせ」は不正解です。
同じくLambdaを利用してDynamoDBにログを蓄積することも実装次第では可能ですが、専用サービスであるAmazon Kinesis Data Firehoseを利用する方が効率的です。
Athenaはデータ読み込み量に応じた従量課金なので、実行する場合は効率の良いクエリを意識するのが良いでしょう。- Cloudwatch Logsでアプリケーションのログを収集しています。アプリケーションの障害判定をLambdaで行うためにCloudwatch LogsのログをLambdaへ連携する場合、最適な機能・サービスは次のうちどれですか?
SNS(Simple Notification Service)
Eメール
SQS(Simple Queue Service)
Cloudwatch Logsのサブスクリプション機能
正解
Cloudwatch Logsのサブスクリプション機能を利用すると、Lamdaへログを連携することができます。
これにより特定のログが発生した場合に、Lambda関数で処理を実行するような構成を実装することができます。- あなたはオンプレからAWSへの移行を検討しています。AWS以外で作成した仮想マシンイメージを、AWS環境へインポートする際に利用できるサービスは次のうちどれですか?
VM Import/Export
AWS Storage Gateway
AWS Import/Export
AWS Snowball
正解
VM Import/Export を使用すると簡単に、仮想マシンイメージを既存の環境から Amazon EC2 インスタンスにインポートしたり、オンプレミス環境にエクスポートしたりすることできます。この機能によって、元々持っていた仮想マシンを AWSに持ち込み、Amazon EC2 のインスタンスとしてすぐに使用できる状態とすることができます。これにより、IT セキュリティ・構成管理・コンプライアンス等、効率的に要件に合わせて仮想マシンを作成できます。
AWS Storage Gateway は、オンプレミスから実質無制限のクラウドストレージへのアクセスを提供するハイブリッドクラウドストレージサービスです。Storage Gateway を使用して、ストレージ管理を簡素化し主要なハイブリットクラウドストレージの仕組みを素早く構成することができるためコストを削減できます。
Snowball はセキュリティに考慮して設計されたデバイスを使用するペタバイト規模のデータ転送ソリューションで、AWS クラウド内外に大容量データを転送できます。- AWSではDNSサービスとしてRoute 53を提供しています。
Amazon Route 53 は、「www.example.com」のような名前を、コンピュータが互いに接続するための数字の IP アドレス (192.0.2.1 など) に変換するサービスです。
次のレコードタイプの中で、ドメイン名からIPアドレスを解決するものはどれですか?
NSレコード
MXレコード
CNAMEレコード
Aレコード
正解
Aレコード:ドメイン名からIPアドレスを解決するのはAレコード
CNAMEレコード:ドメイン名から別のドメイン名を参照するレコード
MXレコード:対象ドメイン宛のメール配送先ホスト名を定義するレコード
NSレコード:DNSで定義されるそのドメインについての情報の種類の一つで、ドメインのゾーン情報を管理するDNSサーバを定義するレコード
※参考
Amazon Route53- Amazon S3 上の「サーバー側の暗号化」の仕様について、正しい説明を選択してください。
Amazon S3 に保管時にファイルを暗号化する。
SSL エンドポイントを使用して安全にファイルをアップロードすることができる。
AWSが暗号化された仮想ディスクを提供している。
クライアント側でデータを暗号化する。
不正解
Amazon S3 は、データセンターのディスクに書き込まれるときにデータをオブジェクトレベルで暗号化し、ユーザがデータにアクセスするときに復号します。リクエストが認証され、ユーザがアクセス許可を持っていれば、オブジェクトが暗号化されているかどうかに関係なく同じ方法でアクセスできます。たとえば、署名付き URL を使用してオブジェクトを表示する場合、オブジェクトが暗号化されているかどうかは関係ありません。また、バケット内のオブジェクトを一覧表示する場合においても、オブジェクトが暗号化されているかどうかに関係なく、すべてのオブジェクトを表示することができます。
■補足説明:
データ保護は、転送時 (Amazon S3 との間でデータを送受信するとき)のデータを保護するものと、保管時 (Amazon S3 データセンター内のディスクに格納されているとき)のデータを保護するものがあります。Secure Sockets Layer (SSL) またはクライアント側の暗号化を使用して、転送時のデータを保護できます。Amazon S3 で保管時のデータを保護するには、以下のようなオプションがあります。
・サーバー側の暗号化を使用する
オブジェクトをデータセンター内のディスクに保存する前に暗号化し, オブジェクトをダウンロードするときに復号するように Amazon S3 にリクエストします。
・クライアント側の暗号化を使用する
クライアント側でデータを暗号化し、暗号化したデータを Amazon S3 にアップロードします。この場合、暗号化プロセス、暗号化キーはユーザ側で管理します。- 企業ウェブサイト(www.yourcompany.com)から、バックエンドサーバ(services.yourcompany.com)で実装されているAPIをJavaSscriptを実装してブラウザで呼び出すと、次のエラーが表示されます。このAPIは、APIGatewayとLambdaで実装されています。
The same origin policy disallows reading the remote resource
このエラーを解消する最適な方法を選択してください。
policy:xss ヘッダーを API リクエストに追加する。
フロントエンドのJavaScriptで CORS を有効にする。
API Gateway で CORS を有効にする。
policy.xss ファイルをウェブサイトに追加する。
不正解
API Gatewayはクライアントからリクエストを受け取ってそれをバックエンドに渡すし、バックエンドからレスポンスを受け取ってクライアントに返すし、プロキシのような働きを行います。
ウェブページはバックエンドサービスのドメインとは別のドメインにあるため、API Gateway で CORS を有効にします。これは、クロスオリジンコールであり、セキュリティのためにブラウザによって制限されています。ドメイン間リクエストを許可するには、API Gateway で CORS を有効にする必要があります。
API のリソースが API 自身のドメイン以外のドメインからリクエストを受信する場合、リソース上の選択されたメソッドのクロスオリジンリソース共有(CORS)を有効にする必要があります。- Z社がAWSで保有する一つの管理(親)アカウントに開発用とテスト用の二つのメンバー(子)アカウントが紐づいており、管理アカウントへの一括請求設定を行っています。新規開発にあたり、開発部門ではリザーブドインスタンスを二つ使用しており、テストチームは3つのインスタンスの使用を計画しています。この時管理アカウントが購入していたリザーブドインスタンスが4つだった場合、テストチームが使用できるインスタンスの組み合わせとして正しいものを選択してください。
1つのリザーブドインスタンスと2つのオンデマンドインスタンス
2つのリザーブドインスタンスと1つのオンデマンドインスタンス
3つのオンデマンドインスタンス
3つのリザーブドインスタンス
正解
AWS Organizationsの一括請求機能により、以下が可能になります。
・特定アカウントが、同じ組織(管理アカウントとメンバーアカウントのグループ)内の他のアカウントによって購入されたリザーブドインスタンスを利用する
・組織内の全アカウントの費用を一括請求とする
設問の組織が保有する4つのリザーブドインスタンスのうち2つは開発チームによって既に使用されているため、テストチームは2つを利用できます。
残りはオンデマンドインスタンスとなるため。2つのリザーブドインスタンスと1つのオンデマンドインスタンスが正解となります。
一括請求機能では割引などのコストメリットもあるため、複数部署でそれぞれアカウントを保有している場合などは検討の価値があるでしょう。- Web 3層のシステムをオンプレミスからAWSに移行することを検討しています。AWSに移行後は、Amazon EBSに保存されたデータを暗号化する必要があります。
アプリケーションを変更せずにこの要件を満たす最適な方法を選択して下さい。
AWS Key Management Service を使用し、暗号化されたデータを Amazon S3 に移動します。
サードパーティのツールを使用して、AWS Key Management Service での Bring Your Own Keys で EBS データボリュームを暗号化します。
サーバー側の暗号化でアプリケーション固有の暗号化 API を使用します。
AWS の管理キーで暗号化された EBS ストレージボリュームを使用します。
不正解
Amazon EBS 暗号化 は、EBS ボリュームのために、独自のキー管理インフラストラクチャの構築、管理、および保護を必要としない、簡単な暗号化ソリューションを提供します。暗号化された EBS ボリュームを作成し、サポートされるインスタンスタイプにアタッチする場合、以下のタイプのデータが暗号化されます。
・ボリューム内の保存データ
・ボリュームとインスタンスの間で移動されるすべてのデータ
・ボリュームから作成されたすべてのスナップショット
・それらのスナップショットから作成されたすべてのボリューム
暗号化オペレーションは EC2 インスタンスをホストするサーバー上で実行され、インスタンスとそれに接続された EBS ストレージ間でのデータの保存と転送中のデータの両方のセキュリティを保証します。
■以下は誤りになります。
「AWS Key Management Service を使用し、暗号化されたデータを Amazon S3 に移動します。」
→Amazon S3 は要件と異なるため間違いです。
「サードパーティのツールを使用して、AWS Key Management Service での Bring Your Own Keys で EBS データボリュームを暗号化します。」
→Bring Your Own Keys(ユーザー独自の鍵を持ち込むこと)はできます。一方で、サードパーティのツールを使用することでアプリケーションに変更が必要になるため間違いです。
「サーバー側の暗号化でアプリケーション固有の暗号化 API を使用します。」
→サーバー側の暗号化は S3 で用いるため間違いです。- 次のうち、EC2インスタンスへのログインをセキュアにするために利用されるものはどれですか?
テンプレート
AMI
キーペア
どれにも該当しない
正解
Amazon EC2 は安全にインスタンスにログインするため、公開鍵(パブリックキー)と秘密鍵(プライベートキー)のキーペアによる接続を提供します。EC2は公開鍵暗号を使用して、ログイン情報の暗号化と復号を行います。公開鍵暗号は公開鍵を使用してデータを暗号化し、受信者は秘密鍵を使用してデータを復号します。この場合、パスワードの代わりに秘密鍵を使用して、安全にEC2インスタンスにアクセスできます。
インスタンスを作成するときに関連付けるキーペアを指定します。このとき、既存のキーペアまたは起動時に作成する新しいキーペアを指定できます。
なお、公開鍵は~/.ssh/authorized_keys内に配置されます。インスタンスにログインするには、インスタンスに接続する際に秘密鍵を指定する必要があります- 現在、AWS S3を利用した自社のファイル共有システムを利用しています。
約5GBのファイルサイズの大量データをアップロードする必要があり、ファイルのアップロード時間が非常にかかる課題があります。
本課題を解決するための最適なソリューションを選択してください。
S3のクロスリージョンレプリケーションの設定を有効化する。
S3のマルチパートアップロードを利用する。
S3の高速アップロードを有効化をする。
S3のアップロードレプリケーションの設定を有効化する。
正解
マルチパートアップロードは、API を使用して大容量オブジェクトをいくつかに分けてアップロードすることができます。
「Amazon S3のマルチパートアップロードを利用する。」が正解となります。マルチパートアップロード API を使用すると、大容量オブジェクトをいくつかに分けてアップロードできるようになります。この API では、新しい大容量オブジェクトをアップロードしたり、既存オブジェクトのコピーを作成したりできます。
「Amazon S3のクロスリージョンレプリケーションの設定を有効化する。」は不正解です。Amazon S3のクロスリージョンレプリケーションの設定を有効化することで、データの冗長性を高めることができますが、アップロードとは無関係です。
「S3の高速アップロードを有効化をする。」は不正解です。Amazon S3の高速アップロードという機能はありません。
「S3のアップロードレプリケーションの設定を有効化する。」は不正解です。Amazon S3のアップロードレプリケーションという機能はありません。- サーバを構築することなくSQLクエリを使ってS3に格納されたデータを分析するための解決策として、正しいものは次のうちどれですか。
AWS Glue
Amazon Athena
AWS Data Pipeline
Amazon RedShift
正解
・Amazon Athenaを使用すると、SQLを使用してAmazon S3のデータを対話的に分析することができます。Athenaはサーバーレスのサービスであり利用者がサーバを管理する必要はありません。利用料金はクエリ実行に対してのみ課金されます。
・Amazon RedShiftは大量のデータ分析に使用するサービスですが、S3のデータを分析することはできません。
・AWS Glueは、データ分析のサービスではなく、データの抽出、変換、読み込み(ETL)の機能で、データ分析を行うためのデータを準備する際に、データの加工を効率的に行うためのサービスです。S3のデータの分析には使用されません。
・AWS Data Pipelineは、データを処理したり移動したりするためのサービスです。AWS上のサーバとストレージサービスとの間や、AWSとオンプレミスのデータソースとの間でのデータ処理・転送を支援します。- A社はオンプレミス環境のMySQLデータベースをAWS環境に移行する計画を進めています。データサイズは15TBで、今後も増加すると予想されています。
また読込処理の性能としては100ミリ秒未満の性能が欲しいとの要望があります。
どのRDSエンジンを選択するべきでしょうか。
PostgreSQL
Aurora
Oracle
MySQL
正解
Auroraが正解となります。
読込処理の性能としては100ミリ秒未満の性能が欲しいという要件から、Auroraを選択することが正解となります。
Amazon Aurora は、MySQL および PostgreSQL と互換性のあるクラウド向けのリレーショナルデータベースであり、従来のエンタープライズデータベースのパフォーマンスと可用性に加え、オープンソースデータベースのシンプルさとコスト効率性も兼ね備えています。
Amazon Aurora は、標準的な MySQL データベースと比べて最大で 5 倍、標準的な PostgreSQL データベースと比べて最大で 3 倍高速です。また、商用データベースと同等のセキュリティ、可用性、信頼性を、10 分の 1 のコストで実現します。
MySQLとPostgreSQLは不正解です。
RDSの他のエンジンタイプでは大規模かつ高速処理性能にはパフォーマンス不足であり、Auroraの方が最適です。
Oracleは不正解です。
MySQLデータベースですので、Oracleは選択しません。
Auroraはストレージを分散して複数のAZに配置できるため可用性が高く、読込のクエリも分散して実行できるためパフォーマンスも高いです。- AWS 上へのシステム構築を、AWS CloudFormation を用いて簡略化させたいと考えています。まずは、ネットワークACLについてのコード化を考えております。この場合、NetworkACLEntry の Properties で設定するキーとして間違っているキー名を選択してください。
Address キー
Cidrblock キー
Egress キー
RuleAction キー
正解
「Address キー」が正解(存在しないキー)です。Egress キーはアウトバウンド(出ていく)またはインバウンド(入ってくる) トラフィックに対するものなのかを判断します。Cidrblock キーは送信先(アウトバウンドの場合)あるいは、送信元(インバウンドの場合)の IP を CIDR 表記で記載します。(例: 172.16.0.0/24) RuleAction キーは拒否するか許容するかのいずれかを指定します。
※参考
ネットワーク ACL
AWS::EC2::NetworkAclEntry- クラウドは非常に安価かつ便利にサーバーを構築できる反面、インターネット上に構築されるためセキュリティはきちんと担保しなければなりません。
セキュリティを守る為の仕組みとして、基本となるのがセキュリティグループとなります。
セキュリティグループとは、EC2インスタンスに適用可能なAWS標準のファイアウォール機能です。
EC2インスタンスへの外部からのアクセスを許可し、トラフィックを制御するファイアウォールとして動作します。
次のうち、セキュリティグループのデフォルトルールの説明として正しいのは次のうちどれですか?
インバウンド全て許可、アウトバウンド全て拒否
インバウンド全て拒否、アウトバウンド全て許可
インバウント全て許可、アウトバウンド全て許可
インバウント全て拒否、アウトバウンド全て拒否
正解
セキュリティグループはインバウンドは全て拒否、アウトバウンドは全て許可がデフォルトルールとなるため、外からのアクセスは全て不可、外へのアクセスは全て許可、という責任共有モデルに基づいたデフォルトルールとなっています。
セキュリティと利便性のバランスをとるため様々な観点はありますが、インバウンドは必要なものだけ拒否したほうがよいですし、使用性の観点からアウトバウンドは全て許可するのが通常の使われ方です。
※参考
VPCのセキュリティグループ- あなたはフェイルオーバーを実現する必要があります。WebサイトはEC2インスタンスにホストされています。フェイルオーバーの実現するのに役立つサービスは次のうちどれですか?
HTTPSプロトコルを使用した Application Elastic Load Balancer
TCPプロトコルを使用した Elastic Load Balancer
EC2のフェイルオーバー
ヘルスチェック付きのRoute53
正解
Route53のヘルスチェック機能を使うことで、EC2の状態をチェックして異常が検知された場合には対象のインスタンスにアクセスを振り分けないようにすることができます(フェイルオーバー)。- 企業の各部門が使用するAWSリソースのコストを監視する必要があります。各部門は、他の部門のリソースとを分けて管理したいと考えています。ITガバナンスとコストの監視を行える仕組みを維持しながら、この要件を満たす最適なアーキテクトを次の中から2つ選択してください。
AWS 一括請求を使用して、部門のAWSアカウントを親企業のマスターアカウントにリンクする。
AWS アカウントを部門ごとに個別の VPC を作成する。
部門のAWSアカウントのすべての企業 IT 管理者に対して IAM クロスアカウントアクセスを有効にする。
AWS CloudTrail ログおよび Amazon CloudWatch Logs をメンバーアカウントの各 Amazon S3 バケットにログを書き込みを行う。
AWS 一括請求を使用して、部門のAWSアカウントのルートアカウントのアクセスを無効にする。
正解
AWS CloudTrail は、AWS アカウントのガバナンス、コンプライアンス、運用監査、リスク監査を行うためのサービスです。クロスアカウントアクセスは AWSのIT ガバナンス(企業のIT資産の監視・規律を守る仕組み)を提供し、一括請求を使用して部門アカウントを親企業のマスターアカウントにリンクすることで、コストの監視が可能です。
■以下は不正解です。
・「AWS CloudTrail ログおよび Amazon CloudWatch Logs をメンバーアカウントの各 Amazon S3 バケットにログを書き込みを行う。」→複数のアカウントからのログを単一の S3 バケットに保存し、IT ガバナンスのために CloudTrail を使用し、コスト監視のために CloudWatchアラートを使用する方が良いため間違いです。
・「企業の AWS アカウント内の部門ごとに個別の VPC を作成する。」
→個別の VPC を作成するだけでは、追加のタグ付けとセキュリティ管理が必要になり、コスト監視ができないため間違いです。
・「AWS 一括請求を使用して、部門アカウントのルートアカウントのアクセスを無効にする。」
→AWS 一括請求を使用するためにはメンバーとなるAWSアカウントをリンクさせておく必要があります。ルートアクセスを無効にすることはAWSを利用する際のベストプラクティスだけであり、間違いです。- 現在社内で利用されているデータベースをAWS上に移行することを検討しています。移行先のデータベースの候補として、Aurora/RDS with PostgreSQL/DynamoDBを検討しており、用途に応じてデータベースを選択することになりました。
DynamoDBを利用すべきユースケースを2つ選択してください。
CloudFrontで利用したキャッシュデータの蓄積をするケース。
セッションデータやメタデータの蓄積をするケース。
複数の結合処理が必要なデータの蓄積をするケース。
Kinesisストリームが処理した一連のデータの蓄積をするケース。
正解
NoSQL である Amazon DynamoDB データベースシステムは、キーと値のペアやドキュメントストレージなど、データ管理のための代替モデルを使用します。
Amazon DynamoDB は、規模に関係なく数ミリ秒台のパフォーマンスを実現する、KVSおよびドキュメントデータベースです。DynamoDBにメタデータ・セッションデータや一連のストリームデータを蓄積することでビッグデータ解析などに利用できます。したがって、「セッションデータやメタデータの蓄積をするケース。」と「Kinesisストリームが処理した一連のデータの蓄積をするケース。」が正解となります。
「CloudFrontで利用したキャッシュデータの蓄積をするケース。」は不正解です。CloudFrontで利用したキャッシュデータの蓄積はCloudFront側で処理されるものです。
「複数の結合処理が必要なデータの蓄積をするケース。」は不正解です。複数の結合処理が必要なデータの蓄積のようなデータはRDSで処理する方が適切となります。- 医療、健康、ヘルスケア、介護の分野のヘルステックベンチャー企業がAWS上で健康管理アプリの開発を行っています。高パフォーマンスとマルチスレッド対応が可能なことがシステムの要件になっています。
この要件を満たすアーキテクチャを選択してください。
データベース層のセッション処理にDynamoDBを利用する。
データベース層のセッション処理にCloudFrontを利用する。
データベース層のセッション処理にElastiCache Memcachedを利用する。
データベース層のセッション処理にElastiCache Redisを利用する。
正解
Amazon ElastiCache は、Memcached と互換性のあるインメモリ key-value ストアサービスで、キャッシュやデータストアとして使用できます。
「データベース層のセッション処理にElastiCache Memcachedを利用する。」が正解となります。WEBアプリケーションをホストするEC2インスタンスに対して、AutoScalingを設定します。データベース層のセッション処理にElastiCache Memcachedを利用して、CloudWatchによるモニタリングを実施し、リードレプリカを設定したRDSをデータベースとして利用する構成とします。このシナリオでの最適なオプションは、Elasticache、Cloudwatch、およびRDSリードレプリカの組み合わせを使用することです。ウェブサーバーは、読み取り操作にElastiCache Memcachedを使用し、トラフィックの変動を監視してそれに応じてスケールイン/スケールアウトするように自動スケーリンググループに通知するCloudWatchを使用します。さらに、RDSのリードレプリカを使用して、読み取りが多いワークロードを処理します。
Memcached はマルチスレッドであるため、複数の処理コアを使用できます。これは、コンピューティング性能をスケールアップすることで、より多くの操作を処理できることを意味します。- コストを度外視した場合の最もパフォーマンスが良い方法を検討しています。構築中のWEBアプリケーションはEC2インスタンスのWebサーバーとRDSで構成されています。運用を開始したところ、ユーザーからの読取リクエスト急増により、アプリケーションの表示が遅れたり、エラーとなるケースが多発しています。
この問題を解決するための方法で最も適切なものを選択してください。
RDSのAutoScaling機能をオンにする。
RDSの前面にElastiCacheを配置する。
RDSのリードレプリカを使用する。
RDSのインスタンスタイプをCPU、メモリともに高性能なスペックに変更する。
正解
パフォーマンスが大きく低下し、特に読取パフォーマンスが低下している問題です。リードレプリカの増設、インスタンスタイプの高性能なタイプへの変更、ElastiCacheの併用が考えられます。コストを要するものの、パフォーマンスが高いソリューション方式はElasticacheを利用した方式です。ElastiCacheをRDSの前面に配置することでRDSの読取処理が多いデータをキャッシュとして保持できます。インメモリDBであるElasticacheは他のDBと比較しても非常に高価ですが、性能が最も高いDBの一つです。したがって「RDSの前面にElastiCacheを配置する。」が正解となります。
「RDSのリードレプリカを使用する。」は不正解です。RDS リードレプリカを使用することでデータベース (DB) インスタンスのパフォーマンスと耐久性が向上しますが、ElastiCacheほどの効果は見込めません。
「RDSのAutoScaling機能をオンする。」は不正解です。RDSのオートスケーリングはストレージ容量を増加させる機能であり、パフォーマンスを向上する仕組みではありません。
「RDSのインスタンスタイプをCPU、メモリともに高性能なスペックに変更する。」は不正解です。インスタンスタイプを高性能にすればするほど、RDSのパフォーマンスとコストが高くなりますが、ElastiCacheと比較した場合の性能アップは見込めません。- Amazon RDS はマルチ AZ 配置によってDB インスタンスの高可用性を維持するための機能を提供していますが、次の中でAmazonのフェイルオーバーテクノロジーではなく、独自の方法が使用されるのはどれですか?
Oracle
PostgreSQL
SQLサーバ
MariaDB
正解
SQL Server DB インスタンスでは SQL Server の製品が備えているデータベースミラーリング (DBM)の機能が使用されます。
Oracle、PostgreSQL、MySQL、MariaDB DB インスタンスのマルチ AZ 配置では、Amazon のフェイルオーバーテクノロジーが使用されます。
※参考
Amazon RDS での高可用性 (マルチ AZ)- 全てのAWSアカウントはAWS Organizations の大規模な組織に属しています。
特定のチームのAWSアカウントに特定のサービスやアクションへのアクセスを制限する必要があります。
これらの要件を満たす、ソリューションを選択してください。
各AWSアカウントにクロスアカウントロールを作成し、サービスまたはアクションへのアクセスを拒否します。
ACL を作成して、サービスまたはアクションへのアクセスを提供します。
AWSアカウントを許可するセキュリティグループを作成し、ユーザーグループにアタッチします。
ルートの組織単位でサービスコントロールポリシー (SCP) を作成して、サービスまたはアクションへのアクセスを拒否します。
不正解
サービスコントロールポリシー (SCP) は、AWSの子アカウントのアクセス権を制御することができます。
AWSのマスターアカウント管理者は、サービスコントロールポリシー (SCP) を使用して、組織内のメンバーアカウントのアクセス権限を設定できます。SCP を使用すると、各メンバーアカウントのユーザーとロールがどの AWS サービスリソースおよび個々の API アクションにアクセスできるかを制限することができます。AWS Organizations がメンバーアカウントのサービス、リソース、または API アクションへのアクセスをブロックすると、そのアカウントのユーザーまたはロ ールはアクセスできません。このブロックは、メンバーアカウントの管理者が IAM ポリシーで明示的にそのようなアクセス許可をした場合でも有効です。- 利用しているEC2インスタンスがシステムステータスチェックで異常を報告した場合に自動で復旧する仕組みを構築したい場合に、対応内容として正しく、最も少ないコストで対応できるものは次のうちどれですか?
対象インスタンスを停止・開始するスクリプトを作成し、CloudWatchのアラーム機能と組み合わせてシステムステータスチェックが異常の場合はスクリプトを実行させる
サードパーティのモニタリングサービス(Datadog、Mackerel)などを利用する
スクリプトを作成してEC2インスタンスを定期的にリスタートする
Web APIを作成し、社外からでもEC2の状態をチェックできるようにする
正解
システムステータスチェックを利用するとインスタンスが実行されているAWSのハイパーバイザー(土台)のステータスを確認することができます。
このチェック項目はAWS側のステータスとなるため、エラーとなったとしてもユーザー側では根本的な対応ができません。
システムステータスチェックが失敗した場合、ユーザー側にできることとしては、AWSが問題を解決するのを待つことです。
「チェック失敗⇨インスタンスの再起動」などと利用者が対応方法を予め設定しておくことができます。
システムステータスチェックの失敗の原因となる問題の例を次に示します。
ネットワーク接続の喪失、システム電源の喪失、物理ホストのソフトウェアの問題、物理ホスト上のハードウェアの問題