無限ノック › SAP 練習問題一覧 › 問題
SAPワークロードの移行とモダン化の加速

ある旅行予約企業は、EC2上で稼働する単一のモノリシックなWebアプリケーションを、ECS on Fargateベースのマイクロサービスへ段階的に移行したい。ビジネスは全面刷新のリスクを避け、機能単位で少しずつ切り出しながら既存モノリスと新サービスを並行稼働させたい。切り出した機能ごとにトラフィックを徐々に新サービスへ振り向け、問題があれば即座に元へ戻せることが求められる。また移行期間中もエンドユーザーには単一のエンドポイントを提供し続ける必要がある。最適なアプローチはどれか。

A
Application Load BalancerのパスベースルーティングとターゲットグループでモノリスのEC2と新規のECSサービスを共存させ、機能単位でパスを新サービスへ移すStrangler Figパターンで段階移行する。
✓ 正解
ALBのパスベースルーティングで機能単位のパスを段階的にECSへ振り向けられ、問題時はルールやターゲットグループの調整で即座にモノリスへ戻せる。単一エンドポイントを維持しつつStrangler Figで漸進的に移行でき要件に合致する。
B
Amazon API GatewayとAWS Lambdaで全機能を一度に再実装し、Route 53の加重ルーティングポリシーでモノリスと新環境の間にトラフィックを分配しながら段階的に切り替えていく。
全機能を一度に再実装する方針は「機能単位で少しずつ切り出す」「全面刷新のリスク回避」という要件に反する。Route 53の加重ルーティングはDNS単位で、機能パス単位の細かな切替制御にも不向き。
C
Amazon CloudFrontのオリジンフェイルオーバー機能でモノリスをプライマリ、ECSサービスをセカンダリオリジンに設定し、機能ごとに順次切り替えていく。
CloudFrontのオリジンフェイルオーバーはオリジン障害時に自動でセカンダリへ切り替える冗長化機構であり、機能単位のトラフィック移行や段階的な切り出しを制御する用途には設計されていない。
D
AWS App2Containerでモノリスをそのままコンテナイメージ化してECS on Fargateへ移行し、その後コンテナ内部でモジュールを分割してマイクロサービス化を進める。
App2Containerはモノリスをそのままコンテナ化するリプラットフォーム手法で、コンテナ化後も内部は単一モノリスのまま。機能を並行稼働させながら漸進的に分割する要件を直接は満たさない。

解説

Strangler Fig(絞め殺し)パターンは、既存モノリスの前段にApplication Load Balancerを置き、パスベースルーティングで機能単位に新しいECSサービスへ徐々にトラフィックを移す手法。ターゲットグループとルーティングルールの調整でトラフィックを制御でき、問題があれば即座にモノリスへ戻せる。移行期間中も単一エンドポイントを維持でき、全面刷新のリスクを避けて漸進的に移行できるため要件に最適。 選択肢1のAPI Gateway+Lambdaで全機能を一度に再実装する案は、少しずつ切り出す要件とリスク回避に反する。 選択肢2のCloudFrontオリジンフェイルオーバーは障害時の冗長化機構であり、段階的なトラフィック移行の用途ではない。 選択肢3のApp2Containerはモノリスをそのままコンテナ化するだけで内部は単一のまま分割されない。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSAPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SAP の問題一覧に戻る