モノリシックアプリケーションをモダナイズしていくワークショップ(ENT312-R)に参加してきた #reinvent
大家好、AWS事業本部の西野です。
架空のWebショッピングサイトを題材にモダナイゼーションのプロセスを学べるワークショップ Modernizing your workload for speed and flexibility (ENT312-R)
に参加してきました。
ワークショップの概要
In this workshop, learn how to quickly take a workload from monolithic on-premises architecture to a loosely coupled distributed microservices architecture using serverless with AWS Lambda. Learn how this modern architecture enables speed with development and flexibility to pivot technology stacks based on business capability requirements. Follow a real-world migration and modernization scenario starting with migration of a server onto Amazon EC2, containerization of applications using AWS App Runner, and decomposition of the monolith using AWS Migration Hub Refactor Spaces and AWS Lambda. Leave the workshop knowing how to take your workload to a modern cloud architecture. You must bring your laptop to participate.
アジェンダ
- Migrate to modernize (10 minutes)
- Workshop instructions (5 minutes)
- Lab execution (1 hour 45 minutes)
最初の15分でモダナイゼーションのプロセスとWorkshopの内容に関して解説があり、残りの1時間45分でセルフペースのラボを実施するタイプのワークショップでした。
冒頭の解説で面白いなと思った部分は、Migrateの早期の実行を強調していたところです。
クラウドジャーニーの典型的なパターンにおいてはMigrateの実行前にその評価や準備を実施しますが、その部分のビジネス価値は相対的に低いと言います。(画像内の円の面積がビジネス価値を表している)
よりビジネス付加価値の高いModernizeを実行していくためにも、まずはMigrateでクラウドの利点を享受した上で、そこから生まれた余剰リソースをもって漸進的なModernizeを進めていこうというお話でした。
クラウド移行のセオリー(たとえばこのAWS Prescriptive Guidance)と矛盾するわけでは無いにせよ、自分の中でAssessからMobilizeにいたるまでのフェーズの重み付けについて考えなおすきっかけになりました。
Lab executionの流れ
ラボの実施は下記のアーキテクチャからスタートします。
AWS MGNによるサーバーの移行とデータベースのRDS化は既に済んでいる状態です。
ここから以下の流れでModernizeを進めていきます。
- バックエンドのコンテナ化とフロントエンドのS3利用
- アプリケーションをコンテナ化し、App Runnerで起動
- S3の静的ウェブサイトホスティングでフロントエンドを構築
- AWS Migration Hub Refactor Spacesを利用したリファクタリング環境の構築
- 「Strangler Figの設計パターン」に応じた構成
- 参考情報: プレビュー – AWS Migration Hub Refactor Spaces がアプリケーションの段階的なリファクタリングをサポート
- ユーザー登録機能のサーバーレス化
- Refactor Spacesを利用し、特定の機能のみをマイクロサービス化
ラボの完了時点で最終的にできあがるのがこちらの環境です。
終わりに
登場した各サービスの詳細については触れられなかったものの、Modernizeの漸進的な進め方や具体的な実行パターンを知られる良いWorkshopでした。
このブログがほんの少しでも世界を良くできれば嬉しいです。
AWS事業本部の西野 (@xiyegen) がお送りしました。