Release Notes
Migration Toolkit for Applications 8.0 のリリースノート
概要
第1章 新機能および機能拡張 リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) バージョン 8.0.0 では、次の主要な新機能と拡張機能が提供されます。
Red Hat Developer Lightspeed for MTA が VS Code 拡張機能で利用可能になりました
VS Code 拡張機能で Red Hat Developer Lightspeed for MTA 機能の使用を選択できます。Developer Lightspeed 機能を使用すると、任意の大規模言語モデル (LLM) を使用して、Java アプリケーションの静的コード分析で見つかった問題を解決するためのコード変更をリクエストできます。
Red Hat Developer Lightspeed for MTA には、以下のコア機能があります。
RAG ソリューション: Red Hat Developer Lightspeed for MTA は、コードに存在する問題をコンテキストベースで解決するために Retrieval Augmented Generation (RAG) を使用します。Developer Lightspeed は、LLM と共有されたコンテキストを改善し、コードの問題を修正するためのより正確な提案を生成します。
コンテキストは、ソースコード、問題の説明、解決済み事例を組み合わせたものです。解決済み事例には、別の移行で受け入れたコード変更、手動で変更したコード、今後使用できる問題の解決策のパターンが含まれます。
ソリューションサーバー (テクノロジープレビュー): ソリューションサーバーは、Red Hat Developer Lightspeed for MTA が、組織内で実行されたすべての分析に基づくコード変更の集合的なメモリーを構築することを可能にするコンポーネントです。また、LLM と連携して、解決済み事例からの解決策のパターンを今後の分析のために改善します。
ソリューションサーバーは、ユーザーに 2 つの主な利点をもたらします。
- コンテキストヒント: 成功したユーザー変更や承認された修正など、移行に関する過去の解決策の例をすくい上げ、困難な移行問題やこれまで解決できなかった移行問題に対する実用的なヒントを提供します。
- 移行の成功メトリクス: 実際の使用状況データから得た、各移行ルールの詳細な成功メトリクスを明らかにします。これらのメトリクスを IDE または自動化ツールで使用すると、Red Hat Developer Lightspeed for MTA により特定の移行問題またはインシデントを、コードセグメントを正常に解決できる “信頼性の度合い” または確率をユーザーに提示できます。
- エージェント型 AI (テクノロジープレビュー): エージェントモードでは、Red Hat Developer Lightspeed for MTA はコード内の問題に対してイテレーティブな解決策を作成します。提案された解決策を受け入れると、Developer Lightspeed はコードをスキャンして、受け入れられた解決策によって発生する可能性のある診断またはリンティングの問題を検索し、それらの問題を修正します。注記: Red Hat Developer Lightspeed for MTA の機能のサポートを受けるには、有効な Red Hat Advanced Developer Suite (RHADS) のサブスクリプションが必要です。(MTA-5738)
MTA は、移行元プラットフォームインスタンスからアプリケーションをインポートするためのプラットフォーム認識をサポートします
プラットフォーム認識を使用すると、移行元プラットフォームからアプリケーションを検出し、MTA アプリケーションインベントリーにインポートできます。MTA は、アプリケーションがデプロイされている移行元プラットフォーム内の座標によってアプリケーションを検出します。プラットフォーム認識を使用すると、アプリケーションのプラットフォームおよびランタイム設定を使用して、他のデプロイメントアセットの生成に使用できる検出マニフェストを作成できます。MTA 8.0.0 では、Cloud Foundry プラットフォームにデプロイされたアプリケーションを検出できます。
(MTA-4846)
MTA は、Web コンソールでのアプリケーション移行のためのアセット生成をサポートします
検出マニフェストを使用して、Web コンソールでアセットを生成し、Red Hat OpenShift または Kubernetes にアプリケーションをデプロイできます。アセット生成ワークフローには、ジェネレーター、ターゲットプロファイル、およびアーキタイプが含まれます。ジェネレーターは、アプリケーションマニフェスト設定を解析して、特定の種類のターゲットプラットフォーム用のデプロイメントアセットを作成します。ターゲットプロファイルでは、指定されたアーキタイプに対して 1 つ以上のジェネレーターを順番に実行できます。
(MTA-4847)
MTA CLI は、リモート CF インスタンスでのライブ検出の実行をサポートします。
この更新により、特定の Cloud Foundry (CF) クラスターに何がデプロイされているかを確認する場合に、ライブ検出を実行できるようになります。たとえば、クラスター内にあるアプリケーションの数を確認できます。ライブ検出は、マニフェスト YAML ファイルにアクセスできない場合にも使用できます。
詳細は、リモート CF インスタンスでのライブ検出の実行 を参照してください。
(MTA-4847)
MTA CLI は検出マニフェスト内の機密情報の秘匿化をサポートします
mta-cli discover cloud-foundry --conceal-sensitive-data コマンドを使用すると、Cloud Foundry (CF) 検出マニフェスト内のサービスや Docker 認証情報などの機密情報を秘匿化できます。このコマンドは次のファイルを生成します。
- 検出マニフェスト
- 秘匿化されたデータが含まれるファイル
詳細は、検出マニフェストで機密情報を秘匿化する を参照してください。
(MTA-4847)
MTA UI で分析の Insights を使用できます
分析の Insights には、アプリケーションで使用されるテクノロジーとコード内でのその使用状況に関する情報が含まれています。この更新前は、Insights 情報は、アプリケーション分析を実行した後の分析出力と静的レポートでのみ使用できました。この機能強化により、Migration Toolkit for Applications (MTA) ユーザーインターフェイス (UI) からも Insights 情報にアクセスできるようになりました。
(MTA-5420)
アプリケーション分析用の新しい VS Code IDE プラグイン
この機能強化により、次の機能を備えた新しい Visual Studio Code (VS Code) IDE プラグインを使用できるようになりました。
- 標準的なアプリケーション分析と問題検出
生成 AI (GenAI) 機能:
- 有効にすると、GenAI を使用して分析インシデントの解決策を見つけることができます。GenAI はデフォルトで有効になっています。
- 無効にすると、標準のアプリケーション分析を実行できます。
注記: 変更を適用するには、Gen AI 設定の変更後にサーバーを再起動する必要があります。
(MTA-5360)
MTA UI でデフォルト認証情報の設定がサポートされました
この更新前は、このアプリケーションを Migration Toolkit for Applications (MTA) ユーザーインターフェイス (UI) に追加またはインポートした後でなければ、アプリケーションに認証情報を手動で割り当てることができまませんでした。しかし、言語およびテクノロジーの検出タスクのために各アプリケーションの認証情報が必要な、大規模なアプリケーションセットをインポートする必要がある場合もあります。この更新により、認証情報を手動で定義する代わりに、認証情報が割り当てられていないアプリケーションに対してデフォルトで使用される認証情報を定義できます。
デフォルトの認証情報として設定できるのは、Maven またはソース管理の認証情報のみです。認証情報のタイプごとに定義できるデフォルトの認証情報セットは 1 つだけです。
詳細は、デフォルト認証情報の設定 を参照してください。
(MTA-5254)
第2章 テクノロジープレビュー機能 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Migration Toolkit for Applications (MTA) 8.0.0 で使用できるすべてのテクノロジープレビュー機能のリストを示します。
テクノロジープレビュー機能に対する Red Hat のサポート範囲の詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Developer Lightspeed のソリューションサーバーをサポートします (テクノロジープレビュー)
ソリューションサーバーは、Developer Lightspeed for MTA が、組織内で実行されたすべての分析に基づくコード変更の集合的なメモリーを構築することを可能にするコンポーネントです。この機能はテクノロジープレビュー機能です。ソリューションサーバーは、LLM と連携して、解決済み事例からの解決策のパターンを今後の分析のために改善します。
ソリューションサーバーには次の利点があります。
- コンテキストヒント: 成功したユーザー変更や承認された修正など、移行に関する過去の解決策の例をすくい上げ、困難な移行問題やこれまで解決できなかった移行問題に対する実用的なヒントを提供します。
- 移行の成功メトリクス: 実際の使用状況データから得た、各移行ルールの詳細な成功メトリクスを明らかにします。これらのメトリクスを IDE または自動化ツールで使用すると、Developer Lightspeed for MTA により特定の移行問題またはインシデントを、コードセグメントを正常に解決できる “信頼性の度合い” または確率をユーザーに提示できます。
Developer Lightspeed におけるエージェント型 AI のサポート (テクノロジープレビュー)
エージェントモード (エージェント型 AI) では、Red Hat Developer Lightspeed for MTA はコード内の問題に対してイテレーティブな解決策を作成します。提案された解決策を受け入れると、Developer Lightspeed はコードをスキャンして、受け入れられた解決策によって発生する可能性のある診断またはリンティングの問題を検索し、それらの問題を修正します。この機能はテクノロジープレビュー機能です。
第3章 削除された機能 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Migration Toolkit for Applications (MTA) 8.0.0 で削除されたすべての機能のリストを示します。削除された機能はすべて以前のリリースで非推奨となり、サポートされなくなりました。
XML ルールが削除されました
Migration Toolkit for Applications (MTA) 8.0.0 では、XML ルールが削除され、MTA ユーザーインターフェイス (UI) とコマンドラインインターフェイス (CLI) の両方でサポート対象外となりました。
(MTA-5357)
Eclipse IDE プラグインが削除されました
アプリケーションの移行とモダナイゼーションの作業を分析するために使用できる Migration Toolkit for Applications (MTA) の Eclipse IDE プラグインが削除され、サポート対象外となりました。代わりに、Visual Studio Code (VS Code) 要の Migration Toolkit for Applications 拡張機能を使用できます。
第4章 既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) バージョン 8.0.0 は、以下に示す、新たに特定された問題と以前からの既知の問題の影響を受けます。既知の問題は、解決されるまで今後のリリースノートに記載され、解決された時点で修正済みの問題として公開されます。
MTA CLI によるアプリケーション分析が "invalid header line" エラーで失敗します
Migration Toolkit for Applications (MTA) のコマンドラインインターフェイス (CLI) を使用したアプリケーション分析が、次のエラーメッセージで失敗する場合があります。
level=error msg="initialize failed" error="context canceled" provider=java error="invalid header line "An error has occurred. See the log file"
level=error msg="initialize failed" error="context canceled" provider=java
error="invalid header line "An error has occurred. See the log file"
この問題を回避するには、メタデータとキャッシュをクリーンアップします。
-
mta-cli analyzeコマンドを実行したディレクトリーの下の.metadataサブディレクトリーをクリアします。 - Maven キャッシュをクリアします。
(MTA-6125)
カスタムルールを追加または削除しても MTA 分析結果が変化しません
Developer Lightspeed for MTA を使用すると、カスタムルールを追加または削除しても、アナライザープロセスを再起動しないと分析結果が変化しません。
この問題を回避するには、設定を変更した後、Start/Stop ボタンをクリックしてアナライザープロセスを再起動します。
(MTA-6129)
ANNOTATION のロケーションルールが FQN と一致しません
ANNOTATION 検索ロケーションで、アノテーションを照合する際に完全修飾名 (FQN) が適切に使用されません。そのため、分析の問題において不正確な一致や誤検出が発生します。たとえば、javax.enterprise.inject.Produces パターンを使用してアノテーションを検索するルールは、ソースコード内に出現する javax.ws.rs.Produces アノテーションを誤って照合する可能性があります。
既知の回避策はありません。
(MTA-6195)
Developer Lightspeed for MTA データベースが接続エラーを出力します
ソリューションサーバーは、短時間に同時接続が増加すると接続エラーを出力します。この問題を回避するには、次のコマンドを入力して、Developer Lightspeed for MTA データベースがアイドル状態の接続を期限切れにできるようにします。
oc -n openshift-mta exec deploy/kai-db – psql -U postgres -d postgres -c "ALTER ROLE kai SET idle_session_timeout = '1min'; ALTER ROLE kai SET idle_in_transaction_session_timeout = '1min';"
oc -n openshift-mta exec deploy/kai-db – psql -U postgres -d postgres -c "ALTER ROLE kai SET idle_session_timeout = '1min'; ALTER ROLE kai SET idle_in_transaction_session_timeout = '1min';"
(MTA-6204)
第5章 修正された問題 リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) バージョン 8.0.0 では、重大な影響を与える次の問題とその他の問題が修正されました。
デプロイメントマニフェストの生成時に、デフォルトの values.yaml ファイルが discover values.yaml ファイルとマージされます。
この更新前は、Helm テンプレートを使用してデプロイメントマニフェストを生成すると、Helm チャートとともにパッケージ化された `values.yaml` ファイル内のデフォルト値が無視されていました。その結果、mta-cli discover コマンドを実行した後に作成された values.yaml ファイルの値のみが使用されていました。この更新により、デフォルトの values.yaml ファイルが discover values.yaml ファイルと統合されます。
(MTA-5793)
MTA CLI が Gradle プロジェクトの依存関係の検出に失敗しなくなりました
この更新前は、コンテナーレスモードで Gradle プロジェクトのアプリケーション分析を実行すると、Migration Toolkit for Applications (MTA) コマンドラインインターフェイス (CLI) は Gradle の依存関係を検出しませんでした。その結果、分析レポートには依存関係がリストされず、代わりに分析ログにエラーメッセージが表示されました。この更新により、問題が修正されました。その結果、MTA CLI は分析が完了した後に Gradle 依存関係を検出します。
(MTA-5793)
MTA UI は、Gradle バージョン 7 以降でビルドされたプロジェクトの分析に失敗しなくなりました
この更新前は、Migration Toolkit for Applications (MTA) ユーザーインターフェイス (UI) の Source code + dependencies モードで Gradle を使用してビルドされたアプリケーションを分析すると、Gradle バージョン 7 以降がインストールされている場合は分析が失敗していました。この更新により、問題が修正されました。
(MTA-5907)
検出マニフェストに、アプリケーションで定義されているすべての Web プロセスがリストされます
この更新前は、mta-cli discover コマンドは、プロセスタイプが明示的に定義された processes レベルのプロセスのみを検出マニフェストのプロセスブロックに移動していました。その結果、検出マニフェストでは、processes ブロックに暗黙的なアプリケーションレベルのプロセスがリストされませんでした。そのため、特に複数のプロセスタイプが計画されている場合、推奨される鋭角性と適切な設定プラクティスに違反する結果となりました。この更新により、mta-cli discover は暗黙的および明示的なアプリケーションレベルのプロセスタイプを検出マニフェストの processes ブロックに移動するようになりました。
(MTA-6030)