Q84 — AWS SAA-C03 第10章
第 84/100 問 | ← 第10章
Q684. ある企業が、オンプレミスのレガシーアプリケーションをAWSに移行したいと考えています。このアプリケーションは、オンプレミスのエンタープライズ・リソース・プランニング(ERP)システムから顧客注文ファイルを取得し、その後それらのファイルをSFTPサーバーにアップロードします。また、このアプリケーションは1時間ごとに注文ファイルの有無を確認するスケジュールジョブを使用しています。企業はすでにオンプレミスネットワークと接続可能なAWSアカウントを保有しています。AWS上に構築される新アプリケーションは、既存のERPシステムとの統合をサポートする必要があります。さらに、セキュリティと耐障害性を確保し、ERPシステムからの注文を即時に処理するためにSFTPプロトコルを利用する必要があります。これらの要件を満たすソリューションはどれですか?
- A. 2つの可用性ゾーンでインターネット向けのAWS Transfer Family SFTPサーバーを作成し、Amazon S3ストレージを使用します。注文ファイルを処理するAWS Lambda関数を作成し、S3イベント通知(s3:ObjectCreated:*)を用いてLambda関数を呼び出します。
- B. 1つの可用性ゾーンでインターネット向けのAWS Transfer Family SFTPサーバーを作成し、Amazon Elastic File System(Amazon EFS)ストレージを使用します。注文ファイルを処理するAWS Lambda関数を作成し、Transfer Familyのマネージドワークフローを用いてLambda関数を呼び出します。
- C. 2つの可用性ゾーンで内部向けのAWS Transfer Family SFTPサーバーを作成し、Amazon Elastic File System(Amazon EFS)ストレージを使用します。注文ファイルを処理するAWS Step Functionsステートマシンを作成し、Amazon EventBridge Schedulerを用いて定期的にAmazon EFS上の注文ファイルをチェックするようステートマシンを呼び出します。
- D. 2つの可用性ゾーンで内部向けのAWS Transfer Family SFTPサーバーを作成し、Amazon S3ストレージを使用します。注文ファイルを処理するAWS Lambda関数を作成し、Transfer Familyのマネージドワークフローを用いてLambda関数を呼び出します。 ✓
正解: D. 2つの可用性ゾーンで内部向けのAWS Transfer Family SFTPサーバーを作成し、Amazon S3ストレージを使用します。注文ファイルを処理するAWS Lambda関数を作成し、Transfer Familyのマネージドワークフローを用いてLambda関数を呼び出します。
解説
オンプレミスのレガシーアプリケーションをAWSへ移行し、既存のERPシステムとの統合、セキュリティおよび耐障害性の確保、そしてERPシステムからの注文を即時にSFTPプロトコルで処理するという要件を満たすには、最も適したソリューションは選択肢Dです。 選択肢Dでは、AWS Transfer Familyを用いて2つの可用性ゾーンに内部向けSFTPサーバーを構築します。これにより、SFTPプロトコルを用いた安全なファイル転送が可能になります。 Amazon S3ストレージを採用することで、スケーラビリティ、耐久性、コスト効率といったS3のメリットを活用できます。SFTPサーバーにアップロードされた注文ファイルは、S3に保存され、その後の処理に利用されます。 また、S3へのファイルアップロードをトリガーとして、注文ファイルを処理するAWS Lambda関数を実行できます。このLambda関数では、必要なデータ変換、ERPシステムとの連携、その他のビジネスロジックを実装可能です。 Transfer Familyのマネージドワークフローを活用すれば、新しい注文ファイルがSFTPサーバーにアップロードされた時点で自動的にLambda関数を呼び出すことができます。これにより、ERPシステムからの注文を即時に処理することが保証されます。 選択肢AはS3イベント通知を用いるため、S3ストレージとLambda関数の利用は可能ですが、内部向けSFTPサーバーの要件や耐障害性(複数可用性ゾーン)を満たしていません。 選択肢Bは、AWS Transfer FamilyによるSFTPサーバー構築とEFSストレージを採用していますが、EFSは共有ファイルストレージを提供しますが、本ユースケースでは追加の複雑さを招き、S3と比較してスケーラビリティやコスト効率の面で劣る可能性があります。 選択肢Cは内部向けSFTPサーバーとEFSを用いて耐障害性を確保していますが、AWS Step FunctionsおよびAmazon EventBridge Schedulerの導入は、本ユースケースにおいて過剰な複雑さをもたらし、最もシンプルかつ効率的なソリューションとは言えません。 まとめると、選択肢D——2つの可用性ゾーンに内部向けAWS Transfer Family SFTPサーバーを構築し、Amazon S3ストレージを活用、Transfer FamilyのマネージドワークフローでAWS Lambda関数を呼び出す——は、セキュアで耐障害性に優れ、かつ効率的なソリューションであり、レガシーアプリケーションのAWS移行および既存ERPシステムとの統合、SFTPプロトコルの利用という要件をすべて満たします。