アプリケーションのモダナイゼーションの概要

このページでは、レガシー モノリシック アプリケーションとサーバーレス ワークロードを Google Cloudのクラウドネイティブ マイクロサービスにモダナイズするために使用できる戦略、ツール、パスウェイのアーキテクチャの概要について説明します。

クラウド アーキテクト、アプリケーション デベロッパー、エンジニアリング リードは、このページの情報を使用して、アプリケーションのモダナイゼーション パスを評価し、Google Cloud Modernization Hub で Java ワークロードのコンテナの準備状況を評価し、生成 AI を使用してコードベースをリファクタリングし、Google Kubernetes Engine(GKE)と Cloud Run にデプロイします。

このページを読む前に、既存のアプリケーション アーキテクチャ、ソースコードの依存関係、ターゲット ランタイムの要件を理解しておく必要があります。

アプリケーションのモダナイゼーションのパス

ソース ワークロードのアーキテクチャと開発目標に基づいて、適切なアプリケーション モダナイゼーション パスを選択します。次の図は、アプリケーションをモダナイズするための 3 つのパスを示しています。

3 つのモダナイゼーション パスを示すフローチャート: Modernization Hub を使用した .NET と Java のモダナイゼーション、AI を活用したコード リファクタリング、サーバーレス Lambda から Cloud Run への移行。

各パスウェイは、特定のモダナイゼーション シナリオに対応しています。

  • .NET と Java ワークロードのモダナイゼーション: Modernization Hub を使用して .NET と Java ワークロードを評価し、Java ワークロードのフレームワークのアップグレードやコンテナ化などの変換パスを評価します。
  • AI を活用したコード リファクタリング: 生成 AI を使用して、レガシー フレームワークをモダナイズし、モノリシック アーキテクチャを分解します。
  • サーバーレス移行: イベント ドリブン関数を、ポータブルなコンテナ化された HTTP マイクロサービスに変換します。

.NET と Java のワークロードのモダナイゼーション

Modernization Hub を使用すると、ASP.NET、.NET Framework、Java ワークロードを評価し、Java ワークロードのフレームワークのアップグレードやコンテナ化などの変換パスを 3 つのフェーズで評価できます。

  1. ワークロード評価: Cloud Storage のソース アーカイブを分析して、個別のコンピューティング インスタンスをプロビジョニングすることなく、コードベースの互換性とモダナイゼーションの取り組みを評価します。
  2. ブロッカーの検出: ダウンロード可能な HTML レポートと Markdown レポートで、OS 固有のブロッカーとフレームワーク ブロッカー(Windows レジストリ呼び出し、Windows Communication Foundation(WCF)サービス、インターネット インフォメーション サービス(IIS)の依存関係、以前の Java EE 名前空間など)を特定します。
  3. トランスフォーメーション計画: .NET ワークロードと Java ワークロードのフレームワークと依存関係のアップグレード、GKE または Cloud Run 上の Java ワークロードの Linux コンテナ化など、推奨されるトランスフォーメーション パスを評価します。

詳細については、.NET アプリケーションを評価する、Java アプリケーションを評価する、コンテナ化されたアプリケーションの移行をご覧ください。

AI を活用したコード リファクタリング

レガシー アプリケーション コードを分析してモダナイズする(.NET Framework 4.x のアップグレードや、Linux コンテナ用の Java ワークロードのモダナイズなど)ために、Modernization Hub、Antigravity CLI、Antigravity は次のワークフローをサポートしています。

  1. 依存関係の評価: ソースコード リポジトリをスキャンして、サポートされていない API、密結合されたモノリシック コンポーネント、ターゲット ランタイムの互換性を特定します。
  2. コード リファクタリング: Antigravity CLI を使用して、レガシー フレームワーク呼び出しを最新のクロスプラットフォーム同等物に変換します。
  3. アーティファクトの生成: ターゲット アプリケーションのマルチステージ Dockerfile と構成ファイルを生成します。

サーバーレス移行

サーバーレス関数を AWS Lambda から Cloud Run に移行するには、次のステージがあります。

  1. ランタイム依存関係の評価: イベント トリガー、環境変数、実行制限を特定します。
  2. 実行ラッパーのリファクタリング: Antigravity CLI を使用して、AWS Lambda イベント ハンドラを標準の HTTP ステートレス コンテナ ハンドラに適合させます。
  3. Cloud Run へのデプロイ: 関数をコンテナとしてパッケージ化し、Cloud Run にデプロイして、従量課金制で自動スケーリングします。

リファレンス アーキテクチャ

詳細なアーキテクチャ パターンとモダナイゼーションのリファレンス ガイドについては、 Google Cloud アーキテクチャ センターの次のリソースをご覧ください。

次のステップ