AWS Migration Hub Refactor Spaces
モノリスアプリケーションをマイクロサービスに段階的にリファクタリングするためのネットワーク環境を提供するサービス
何ができるか
AWS Migration Hub Refactor Spaces は、Strangler Fig パターンでモノリスアプリケーションをマイクロサービスに段階的に移行するためのネットワークインフラを自動構築するサービスです。API Gateway、NLB、Transit Gateway を組み合わせたルーティング環境を作成し、トラフィックをモノリスと新しいマイクロサービスに振り分けます。
どのような場面で使うか
モノリスアプリケーションのマイクロサービス化、レガシーシステムの段階的なクラウドネイティブ化、Strangler Fig パターンによる安全なリファクタリングに利用されます。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。
身近な例え
道路の付け替え工事に例えられます。既存の道路 (モノリス) を通行止めにせず、新しい道路 (マイクロサービス) を並行して建設し、交通 (トラフィック) を徐々に新しい道路に切り替えます。
Refactor Spaces とは
この記事は約 2 分で読めます。 Refactor Spaces は、Strangler Fig パターンの実装を支援するサービスです。Strangler Fig パターンとは、モノリスの機能を 1 つずつマイクロサービスに切り出し、ルーティングで新旧を切り替える移行手法です。Refactor Spaces は、このルーティング環境 (API Gateway + NLB + Transit Gateway) を自動構築します。
環境とルーティング
Refactor Spaces の環境は、マルチアカウントのネットワーク基盤です。アプリケーションを作成してデフォルトルート (モノリス) を設定し、新しいマイクロサービスをサービスとして追加します。ルートを作成してパスベースのルーティングを設定すると、特定の URL パスのトラフィックが新しいマイクロサービスに転送されます。
はじめかた
Refactor Spaces コンソールで環境を作成し、アプリケーションを定義します。デフォルトルートにモノリスのエンドポイントを設定し、新しいマイクロサービスをサービスとして追加します。パスベースのルートを作成して、特定の機能のトラフィックをマイクロサービスに切り替えます。
Azure・オンプレミスとの比較
AWS の優位点
- Strangler Fig パターンのルーティング環境を自動構築し、インフラ設定の手間を削減
- マルチアカウント環境でのサービス間ルーティングを Transit Gateway で自動接続
- パスベースのルーティングで、機能単位の段階的な移行を安全に実行
注意点
- Refactor Spaces が作成する API Gateway、NLB、Transit Gateway の料金が発生する
- シンプルなルーティングなら API Gateway 単体で実現可能。Refactor Spaces はマルチアカウント環境での段階的移行に適する
さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。