Q47 — AWS SAP-C02 第3章
第 47/75 問 | ← 第3章
Q272. ある会社は、インターネット経由でアクセス可能な SFTP サーバーを介して顧客にファイルを配信しています。この SFTP サーバーは、Elastic IP アドレスがアタッチされた単一の Amazon EC2 インスタンス上で動作しています。顧客は、この Elastic IP アドレスに接続し、SSH を使用して認証を行います。また、EC2 インスタンスには、すべての顧客 IP アドレスからのアクセスを許可するセキュリティグループがアタッチされています。 ソリューションアーキテクトは、可用性を向上させ、インフラストラクチャ管理の複雑さを最小限に抑え、ファイルにアクセスする顧客への影響を最小限に抑えるソリューションを実装する必要があります。ただし、顧客の接続方法を変更してはなりません。 これらの要件を満たすソリューションはどれですか?
- A. EC2 インスタンスから Elastic IP アドレスを切り離します。SFTP ファイルホスティング用の Amazon S3 バケットを作成します。AWS Transfer Family サーバーを作成します。Transfer Family サーバーを、パブリックにアクセス可能なエンドポイントで設定します。SFTP の Elastic IP アドレスを新しいエンドポイントに関連付けます。Transfer Family サーバーを S3 バケットを指すように設定します。既存の SFTP サーバーから S3 バケットへすべてのファイルを同期します。
- B. EC2 インスタンスから Elastic IP アドレスを切り離します。SFTP ファイルホスティング用の Amazon S3 バケットを作成します。AWS Transfer Family サーバーを作成します。Transfer Family サーバーを、VPC 内ホスト型かつインターネット対応のエンドポイントで設定します。SFTP の Elastic IP アドレスを新しいエンドポイントに関連付けます。顧客の IP アドレスを許可するセキュリティグループを新しいエンドポイントにアタッチします。Transfer Family サーバーを S3 バケットを指すように設定します。既存の SFTP サーバーから S3 バケットへすべてのファイルを同期します。 ✓
- C. EC2 インスタンスから Elastic IP アドレスを切り離します。SFTP ファイルホスティング用の新しい Amazon EFS(Elastic File System)ファイルシステムを作成します。SFTP サーバーを実行する AWS Fargate タスク定義を作成します。タスク定義内で EFS ファイルシステムをマウントとして指定します。このタスク定義を使用して Fargate サービスを作成し、その前に Network Load Balancer(NLB)を配置します。サービスの設定時に、顧客の IP アドレスを許可するセキュリティグループを SFTP サーバーを実行するタスクにアタッチします。Elastic IP アドレスを NLB に関連付けます。既存の SFTP サーバーから S3 バケットへすべてのファイルを同期します。
- D. EC2 インスタンスから Elastic IP アドレスを切り離します。SFTP ファイルホスティング用のマルチアタッチ対応の Amazon EBS(Elastic Block Store)ボリュームを作成します。Elastic IP アドレスがアタッチされた Network Load Balancer(NLB)を作成します。SFTP サーバーを実行する EC2 インスタンスの Auto Scaling グループを作成します。Auto Scaling グループでは、起動される各インスタンスが新しいマルチアタッチ EBS ボリュームをアタッチするよう定義します。Auto Scaling グループを、NLB のバックエンドに自動的にインスタンスを追加するよう設定します。Auto Scaling グループが起動する EC2 インスタンスに対して、顧客の IP アドレスを許可するセキュリティグループを使用するよう設定します。既存の SFTP サーバーから新しいマルチアタッチ EBS ボリュームへすべてのファイルを同期します。
正解: B. EC2 インスタンスから Elastic IP アドレスを切り離します。SFTP ファイルホスティング用の Amazon S3 バケットを作成します。AWS Transfer Family サーバーを作成します。Transfer Family サーバーを、VPC 内ホスト型かつインターネット対応のエンドポイントで設定します。SFTP の Elastic IP アドレスを新しいエンドポイントに関連付けます。顧客の IP アドレスを許可するセキュリティグループを新しいエンドポイントにアタッチします。Transfer Family サーバーを S3 バケットを指すように設定します。既存の SFTP サーバーから S3 バケットへすべてのファイルを同期します。
解説
可用性を向上させ、インフラストラクチャ管理の複雑さを最小限に抑え、顧客への影響を最小限に抑えつつ、顧客の接続方法を変更しないという要件を満たすには、AWS Transfer Family を使用して新しい SFTP サーバーを作成し、現在使用中の Elastic IP アドレスをその新しいサーバーのエンドポイントに関連付けるのが最適です。さらに、ファイルストレージとして Amazon S3 を活用することで、運用負荷とスケーラビリティの両面で優れたソリューションとなります。したがって、正解はオプション B です。 オプション A は、AWS Transfer Family を使用して新しい SFTP サーバーを作成し、既存の Elastic IP アドレスを関連付ける点は適切ですが、「パブリックにアクセス可能なエンドポイント」を指定しているため、セキュリティ要件を満たさない可能性があります。 オプション C は、AWS Fargate 上で SFTP サーバーを実行し、Amazon EFS をファイルストレージとして使用するというアプローチですが、これは必要以上に複雑であり、パフォーマンスやスケーラビリティの要件を満たさない可能性があります。 オプション D は、Auto Scaling グループによる EC2 インスタンスの冗長化と、マルチアタッチ対応 EBS ボリュームの使用を提案していますが、これも過剰な複雑さを伴い、またマルチアタッチ EBS は特定の制約(例:同一 AZ 内でのみ利用可能)があり、可用性・運用性の観点で最適ではありません。よって、最も適切なソリューションは、AWS Transfer Family を用いて VPC 内ホスト型かつインターネット対応のエンドポイントを設定し、既存の Elastic IP アドレスを関連付け、ファイルストレージとして Amazon S3 を使用することです。また、顧客の IP アドレスを許可するセキュリティグループを新しいエンドポイントにアタッチし、既存の SFTP サーバーから S3 バケットへファイルを同期します。