こんにちは。技術革新統括本部Cloud & Infrastructure技術部の中崎です。 本記事は2024年12月に開催された「AWS re:Invent 2024」の現地参加レポートの第4回目となります。本記事では、Amazon Q Developerのモダナイゼーションとマイグレーションを加速させる”変換機能”についてご紹介します!
Amazon Q Developer関連のアップデート
Amazon Q Developerは、開発者向けの生成AIアシスタントで、ソフトウェア開発全体を加速させます。コード生成、テスト、デプロイ、トラブルシューティング、コード変換などのタスクを支援します(※1)。 Amazon Q Developerの新機能として、以下のアップデートが発表されました。
AWS環境の異常検知、検知した異常の解決策の提示が可能
Amazon CloudWatchと連携してトラブルシューティングをサポートする
ユニットテストの自動生成機能
自動コードレビュー機能
ドキュメント生成機能
.NETアプリケーションのモダナイゼーション支援
メインフレームのモダナイゼーション支援
VMwareワークロードのEC2マイグレーション支援
前回の第3回ではAmazon Q Developerの機能アップデートのうち、インフラ運用に役立つ”運用調査機能”にフォーカスして解説しました。本記事では、筆者が今後特に注目したいAmazon Q Developerの”変換機能”についてご紹介します。
Amazon Q Developerによるモダナイゼーション支援
Amazon Q Developerの変換機能として、アップデート前まではJavaアプリケーションのモダナイゼーション(例. Java 8または11をJava17に変換)が提供されていました(※2)。 今回、新しく「.NETアプリケーション」「メインフレーム」「VMwareワークロード」の3つに対する変換機能が追加されました。AWSによると、この変換機能によって開発時間を最大80%短縮し、また、生産性を最大40%向上させたようです。
ただし、注意点としては、上記新たに追加された3つの機能はすべてプレビュー版である(変更される可能性がある)ということと、サポートされている言語やバージョンがあるため、利用を検討する際はご注意ください。また、各機能で実行できるコード最大行数や、同時実行ジョブ数などのクォータがあるため、そちらも併せて確認することを推奨します。
.NETアプリケーションのモダナイゼーション支援
.NET アプリケーションを .NET Framework からクロスプラットフォームの.NET に移植でき、Windows から Linux への移植を支援する機能です(※4)。移植作業を最大4倍加速させ、運用コストを最大40%削減することを実現させます。
メインフレームのモダナイゼーション支援
COBOLやJCL (Job Control Language)などのメインフレームアプリケーションをクラウドに最適化されたJavaコードに自動的にリファクタリングでき、モダナイゼーションにおける、評価、計画、実行の各段階を支援する機能です(※5)。
VMwareワークロードのEC2マイグレーション支援
VMwareワークロードをAmazon EC2へマイグレーション(以降、マイグレーションは移行と記載する)でき、移行のための様々なタスクを一気通貫で支援する機能です(※6)。 移行タスクは大きく下記の4工程に分かれています。
クラウド移行における課題としては、多くの場合、ツールの事前準備や後工程への連携をヒトが実施する必要があり、時間とコスト、また人為的なエラーも発生しやすい状況でした。しかし、Amazon Q Developerを利用することで、各工程でのツールの実行結果が統合され、全工程を自動化することが可能となります。例えば、AWS Application Discovery Service(ADS)を使用したデータ検出の結果(構成情報など)は、次の移行タスクに自動で連携されます。ただし、すべてが自動化されているわけではなく、必要に応じて可視化され、ヒトによる監視(確認や変更、承認アクションなど)も組み込まれています。自動化とヒトによる監視のバランスが重視され、責任あるAI(Responsible AI)の確保が重要なポイントだと強調されていました。
1.データ検出
現行オンプレミス環境のデータ検出(構成情報等)を行うために、下記3つの方法が提供されており、利用者側で選択可能になります。利用者側の環境や制約によって、使い分けが可能です。例えば、まずは①で検討し、エージェントのインストールが不可な場合は、次点で②、インターネット接続が不可な場合は③を利用するなどが考えられます。
①AWS Application Discovery Serviceのエージェントベースのコレクター
②AWS Application Discovery Serviceのエージェントレスのコレクター
③RVtools※などのツールからエクスポートをアップロード
※RVtools :VMware vSphere Management SDKとCIS REST APIを使用してvSphere環境に関する情報を取得するWindows .NETアプリケーション
2.アプリケーションのグループ化と移行ウェーブの計画
依存関係のあるコンポーネントごとに移行ウェーブ単位を計画する。その際、Amazon Q Developerが提案した、推奨事項を確認。適宜、ヒトによるレビュー、編集、承認を実施し、移行計画を決定します。
3.ネットワーク変換とデプロイ
取り込まれたVMware環境のネットワーク構成をもとに、同等のAWSネットワーク構成(Amazon VPCやセキュリティグループ、インターネットゲートウェイ等)へ変換し、Infrastructure-as-Code ファイル (CloudFormation および CDK) を生成します。その後、デプロイと検証まで実行されます。検証においては、Reachability Analyzer が使用され、ネットワークリソース間の接続性の確認が行われます。
4.ワークロードの移行
最後に、最終段階であるワークロードの移行が、AWS Application Migration Service(MGN)によって行われます。また、移行の進捗状況(移行の全体進捗状況、ネットワークのデプロイ状態、各サーバ状態 等)は可視化され、ダッシュボードで確認可能です。
おわりに
本記事ではモダナイゼーションとマイグレーションを加速させるためのAmazon Q Developerの変換機能をご紹介しました。新たに「.NETアプリケーション」「メインフレーム」「VMwareワークロード」が追加されています。筆者の所感として、既存の移行系サービス群と連携できる点は有用で、コストと時間を大幅に削減できる可能性があると考えます。ただし、今回、変換機能の詳細な精度については未検証のため、実際に使用できるレベルかどうかは導入先で判断する必要があります。利用を検討する場合はPoCなどで効果をご確認してください。
参考
(※1)生成 AI コーディングアシスタント Amazon Q Developer をグラレコで解説(※2)Modernize your Java application with Amazon Q Developer
(※3)AWS re:Invent 2024 - Automating migration and modernization to accelerate transformation (MAM238)
(※4)Announcing Amazon Q Developer transformation capabilities for .NET in IDE (preview)
(※5)Amazon Q Developer: Transform for mainframe - Amazon Q Developer
(※6)Amazon Q Developer agents for transformation of VMware workloads
(※7)AWS re:Invent 2024 -Accelerate modernization of VMware workloads using Amazon Q Developer-DOP224
著者紹介
中崎 涼 NAKASAKI Ryo
NTTデータグループ 技術革新統括本部 Cloud & Infrastructure技術部
金融や官公庁、製造業等、様々な業界のパブリッククラウドシステム開発に従事。
2024年Japan AWS All Certifications Engineersに選出。
[PR]提供:NTTデータ