AWS ソリューションアーキテクト サンプル問題の答え合わせ

サンプル問題の答え合わせをやっていく  
[AWS 認定ソリューションアーキテクト – アソシエイト](https://aws.amazon.com/jp/certification/certified-solutions-architect-associate/)

<!--more-->

#### Q1

```
ある企業が、カスタム AMI 上のテキストファイルにアクセスキー (アクセスキー ID およびシークレットアクセスキー) を格納しようとしています。その企業は、アクセスキーを使用して、AMI から作成されたインスタンスから DynamoDB テーブルにアクセスします。セキュリティチームは、よりセキュアなソリューションを要求しています。セキュリティチームの要求に応えるソリューションはどれですか。

A. アクセスキーを Amazon S3 バケットに格納し、起動時にインスタンスからアクセス
キーを取得する。
B. インスタンスユーザーデータを介してアクセスキーをインスタンスに渡す。
C. プライベートサブネット内で起動されたキーサーバーからアクセスキーを取得する
D. そのテーブルにアクセスする権限を持つ IAM ロールを作成し、そのロールを使用してすべてのインスタンスを起動する。
```

IAMロールの理解問題EC2にロールをつけることでアクセスキーなどを保存して持っておく必要がなくなる。
答えD   



#### Q2

```
ある企業が、ステートレス Web サーバーを使用する高可用性 Web アプリケーションを開発しています。
セッション状態データを保持するのに適したサービスはどれですか (2 つ選択してください)。

A. CloudWatch
B. DynamoDB
C. Elastic Load Balancing
D. ElastiCache
E. Storage Gateway
```


ステートレスサービスを選ぶ。BとD  
CloudWatch: モニタリング    
ELB: ロードバランサ    
Storage Gateway: オンプレミスとAWSリソース(ファイル、ボリュームなど)を接続するもの    


#### Q3

```
ある企業において、販売担当者が売上ドキュメントを毎日アップロードしています。ソリューションアーキテクトは、それらのドキュメントを格納するため、重要ドキュメントの誤削除防止機能を備えた高耐久性ストレージソリューションを必要としています。
ユーザーによる誤削除を防ぐには、どうすればよいですか。

A. データを EBS ボリュームに格納し、週 1 回スナップショットを作成する。
B. データを Amazon S3 バケットに格納し、バージョニングを有効化する。
C. データを別々の AWS リージョンにある 2 つの Amazon S3 バケットに格納する。
D. データを EC2 インスタンスストレージに格納する。
```

誤削除防止がキー。S3のバージョニングを有効にして過去のデータを見れるようする。  
答えB


#### Q4

```
あるアプリケーションに対して、初期ストレージ容量が 8 TB の高可用性リレーショナルデータベースが必要です。データベースのサイズは、毎日 8 GB ずつ増加する見込みです。予想されるトラフィック量に対応するため、読み取り処理用として 8 個以上のリードレプリカが必要です。
これらの要件を満たす手段はどれですか。

A. DynamoDB
B. Amazon S3
C. Amazon Aurora
D. Amazon Redshift
```

RDSとして機能するのはAuroraのみ。答えはC  

Redshift: 巨大なデータセット。同時実行数が少ない。BIなどの解析向けDWH    
S3: オンラインストレージ  
Aurora: MySql互換の高可用のマネージドRDSサービス。リードレプリカが15個作成される。  
DynamoDB: 容量制限やスケーリングの運用不可の低いkeyValueDB  


#### Q5

```
あるソリューションアーキテクトが、EC2 インスタンス上で動作する基幹業務アプリケーションを設計しています。このアプリケーションではリレーショナルデータベースが使用され、最大 16,000 IOPS の EBS ボリュームが 1 個必要です。
このアプリケーションのパフォーマンス要件を満たす Amazon EBS ボリュームタイプはどれですか。

A. EBS プロビジョンド IOPS SSD
B. EBS スループット最適化 HDD
C. EBS 汎用 SSD
D. EBS コールド HDD
```


EBSで16000IOPSの性能を持っているのはAのみ。  

IOPS差はこんな感じ    
EBS プロビジョンド IOPS SSD: 32000  
EBS 汎用 SSD: 10000  
EBS スループット最適化 HDD: 500    
EBS コールド HDD: 200  


#### Q6

```
顧客は、ある Web アプリケーションを使用して、Amazon S3 バケットに注文データをアップロードすることができます。すると、Amazon S3 イベントが発生し、Lambda 関数がトリガされ、メッセージが SQS キューに挿入されます。1 つの EC2 インスタンスによって、キューからメッセージが読み取られて処理され、一意の注文番号で分割された DynamoDB テーブルに格納されます。来月のトラフィック量は 10 倍に増える見込みです。ソリューションアーキテクトは、スケーリングに関する問題がアーキテクチャに発生する可能性を調べています。
増加するトラフィックを処理するためにスケーリングできるようにする際、設計の見直しが最も必要であると思われるコンポーネントはどれですか。


 A. Lambda 関数
 B. SQS キュー
 C. EC2 インスタンス
 D. DynamoDB テーブル
```

選択肢のうちスケーリングが必要(できる)のはEC2インスタンスなので、正解はC  
Lambda、SQS、DynamoDBは設定と制限緩和はひつようになるが、スケーリング運用は不要。  

#### Q7
```
アプリケーションによってログが Amazon S3 バケットに格納されています。あるユーザーが、トラブルシューティングのため、このログを 1 か月間保持し、その後消去したいと考えています。
この要件を満たすには、どの機能を使用すればよいですか。

A. Amazon S3 バケットに対するバケットポリシーを追加する。
B. Amazon S3 バケットに対するライフサイクル構成ルールを構成する。
C. Amazon S3 バケットに対する IAM ポリシーを作成する。
D. Amazon S3 バケットに対して CORS を有効化する。
```

答えB    
ログを削除するので、ライフサイクルポリシーを有効にして、S3->S3 IA->Glacerと削除設定をする。  
バケットポリシー、IAMポリシーはS3のアクセス制限のこと。  
CORSはCrossOrigin Resource Sharing(クロスオリジンリソースシェアリング)のことで、複数のオリジン(ドメイン)からのアクセスを許可する設定のこと(webホスティングを利用した時のクロスドメインの対策)  


#### Q8
```
EC2 インスタンス上で動作するアプリケーションによって、Amazon S3 に格納されている機密情報が処理されています。その機密情報は、インターネットからアクセスされるため、セキュリティチームは、Amazon S3 に対するインターネット接続におけるセキュリティリスクを懸念しています。
このセキュリティ上の懸念を解消するソリューションはどれですか。

A. インターネットゲートウェイ経由でデータにアクセスする。
B. VPN 接続を使用してデータにアクセスする。
C. NAT ゲートウェイ経由でデータにアクセスする。
D. Amazon S3 に対する VPC エンドポイントを経由してデータにアクセスする。
```

答えD   
S3のへセキュアなアクセスはプライベートサブネットのVPCエンドポイントを作ってS3とやり取りをする。という定石を知っているかどうかの問題


#### Q9
```
ある組織が、共有サービス VPC 内に Amazon Redshift クラスターを構築しようとしています。そのクラスター上で機密データがホストされる予定です。
そのクラスターにアクセスできるネットワークを制御するには、どうすればよいですか。


A. クラスターを別の VPC 内で実行し、VPC ピアリング機能を使用して接続する。
B. Amazon Redshift クラスター内に、特定のネットワーク上のユーザーに対応するデータベースユーザーを作成する。
C. クラスターセキュリティグループを作成し、特定のネットワークからのアクセスを許可する。
D. VPN 経由で共有サービスネットワークに接続するネットワークにのみ、アクセスを許可する。
```

Redshiftのアクセス管理はクラスターにセキュリティグループを設定して行う。答えC


#### Q10
```
あるソリューションアーキテクトが、オンラインショッピングアプリケーションを設計しています。このアプリケーションは、ELB Application Load Balancer の内側にある EC2 インスタンス上の VPC 内で動作します。EC2 インスタンスは、複数のアベイラビリティーゾーンにまたがる Auto Scaling グループ内で動作します。アプリケーション層では、顧客の管理下にあるデータベースクラスター内のデータに対する読み取りと書き込みを実行する必要があります。インターネットからデータベースにアクセスできないようにする必要がありますが、クラスターはインターネットからソフトウェア更新プログラムを取得できる必要があります。
これらの要件を満たす VPC 設計はどれですか。


A. アプリケーション層とデータベースクラスターの両方をパブリックサブネット内に配置する。
B. アプリケーション層をパブリックサブネット内に配置し、データベースクラスターをプライベートサブネット内に配置する。
C. アプリケーション層と NAT ゲートウェイをパブリックサブネット内に配置し、データベースクラスターをプライベートサブネット内に配置する。
D. アプリケーション層をパブリックサブネット内に配置し、データベースクラスターとNAT ゲートウェイをプライベートサブネット内に配置する。
```

VPCサブネットの設計問題。  
ELB配下のEC2をパブリックサブネットに、データベースをプライベートサブネットに配置する。  
NATゲートウェイがパブリックサブネットのインターネットゲートウェイの前に配置しないと、プライベートサブネットのインスタンスがインターネットにアクセスできなくなる。  
答えC