Migration Toolkit for Applications の概要
アプリケーションの OpenShift Container Platform への移行時に、Migration Toolkit for Applications を使用してアプリケーションを移行および管理する方法を学ぶ
概要
多様性を受け入れるオープンソースの強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 はじめに リンクのコピーリンクがクリップボードにコピーされました!
1.1. Migration Toolkit for Applications のご紹介 リンクのコピーリンクがクリップボードにコピーされました!
このガイドは、Migration Toolkit for Applications (MTA) を使用して、Red Hat OpenShift のハイブリッドクラウド環境全体で大規模なアプリケーションモダナイゼーションの取り組みを促進することを検討しているアーキテクト、エンジニア、コンサルタントなどを対象としています。Migration Toolkit for Applications の概要と、移行を計画して実行するツールを使用して開始する方法を説明します。
Migration Toolkit for Applications 5.x リリースで提供されていた Java アプリケーションの移行ソリューション (Java アプリケーションの移行とモダナイゼーション) は、Migration Toolkit for Runtimes 1.0 で利用できるようになりました。
第2章 Migration Toolkit for Applications の概要 リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications とは
Migration Toolkit for Applications (MTA) は、Red Hat OpenShift 上のハイブリッドクラウド環境全体で大規模なアプリケーションモダナイゼーションに対する取り組みを促進します。このソリューションは、導入プロセス全体においてポートフォリオレベルとアプリケーションレベルの両方で理解が得られるので、アプリケーションのインベントリー、評価、分析、および管理を行い、ユーザーインターフェイスを使用して OpenShift への移行をより短い期間で行うことができます。
MTA は、アプリケーションを評価するための基礎として広範にわたる質問リストを使用して、アプリケーションのコンテナー化の準備に必要な難易度、時間、およびその他のリソースの見積もりを可能にします。ステークホルダー間の議論の基礎として評価の結果を使用して、どのアプリケーションがコンテナー化に適しているか、どのアプリケーションが最初に多大な作業を必要とするか、どのアプリケーションがコンテナー化に適していないかを判断できます。
MTA は、対象のアプリケーションごとに 1 つ以上のルールセットを適用してアプリケーションを分析し、モダナイゼーションする前に、そのアプリケーションに含まれるどの行を変更するかを判断します。
MTA は、プロジェクトソースディレクトリーやアプリケーションアーカイブを含むアプリケーションアーティファクトを検査し、変更を必要とするエリアを強調表示する HTML レポートを作成します。MTA は、以下を含む多くの移行パスをサポートします。
- Red Hat JBoss Enterprise Application Platform の最新リリースへのアップグレード
- Oracle WebLogic または IBM WebSphere Application Server から Red Hat JBoss Enterprise Application Platform への移行
- アプリケーションのコンテナー化とクラウド化
- Java Spring Boot から Quarkus への移行
- OpenJDK 8 から OpenJDK 11 へのアップグレード
- OpenJDK 11 から OpenJDK 17 へのアップグレード
- EAP Java アプリケーションの Azure App Service への移行
- Spring Boot Java アプリケーションの Azure App Service への移行
ユースケースおよび移行パスの詳細は、開発者向け MTA Web ページを参照してください。
Migration Toolkit for Applications による移行を単純化する方法
Migration Toolkit for Applications は一般的なリソースを探し、アプリケーションを移行する際の既知の問題点を明らかにします。アプリケーションで使用されるテクノロジーの概要を示します。
MTA は、移行またはモダナイゼーションパスの評価に関する詳細なレポートを生成します。このレポートは、大規模なプロジェクトに必要な作業を見積もり、関係する作業を減らすのに役立ちます。
2.1. MTA の機能 リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) は、業界をリードする Kubernetes プラットフォームである Red Hat OpenShift 上のハイブリッドクラウド環境全体でアプリケーションをより適切に評価、優先順位付け、モダナイズできるツールの統合アセンブリーです。
より多くの移行パスで簡単にアップグレードできるように設計された MTA には、次のものが含まれます。
- 組織がアプリケーションを管理、分類、タグ付けする際に役立つ 新しいアプリケーションインベントリーおよび評価モジュール。移行ストラテジーで発生し得るリスクにフラグを立てるなど、コンテナーへのデプロイメントに対するアプリケーションの適合性を評価します。
- ソースコードおよびバイナリーリポジトリーとの完全な統合。分析用のアプリケーションの取得を自動化し、ユーザーインターフェイスで管理される HTTP および HTTPS プロキシー設定などのプロキシー統合を行います。
- 新規分析モードを含む 向上された分析機能。リポジトリーを解析して依存関係を収集し、分析の全体的な対象範囲に追加するソースと依存関係モードが含まれます。また、オープンソースライブラリーを含む分析範囲を設定するための簡素化されたユーザーエクスペリエンスもあります。
- Red Hat Single Sign-On で強化された ロールベースのアクセス制御 (RBAC)。複数の認証情報タイプの認証情報管理を含む、各ユーザー (管理者、アーキテクト、移行者) のニーズに合わせて異なる権限を持つ 3 つの新しい差別化されたペルソナが定義されます。
- 管理者向けのツール全体の設定管理を提供する 管理者のパースペクティブ。
2.2. MTA ルールについて リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) には、移行予定のアプリケーションが使用する API、テクノロジー、アーキテクチャーを分析するルールベースの移行ツールが含まれています。実際、MTA 分析プロセスは MTA ルールを使用して実装されます。MTA は内部でルールを使用して、アーカイブからのファイルの抽出、ファイルの逆コンパイル、ファイルタイプのスキャンと分類、XML およびその他のファイルコンテンツの分析、アプリケーションコードの分析、レポートの作成を行います。
MTA は、ルール実行結果に基づいてデータモデルを構築し、グラフデータベースにコンポーネントデータと関係を格納します。これにより、移行ルールやレポート目的に応じてクエリーおよび更新が可能になります。
MTA ルールでは、以下のルールパターンを使用します。
when(condition) perform(action) otherwise(action)
when(condition)
perform(action)
otherwise(action)
MTA は、標準的な移行ルールの包括的なセットをそのまま提供します。アプリケーションにはカスタムライブラリーまたはコンポーネントが含まれる可能性があるため、MTA では独自のルールを作成して、既存のルールセットで対応していない可能性のあるコンポーネントやソフトウェアの使用を特定できます。
独自のカスタムルールを作成する予定の場合には、ルール開発ガイド で詳細な手順を確認してください。
第3章 サポートされる設定 リンクのコピーリンクがクリップボードにコピーされました!
3.1. サポート対象の移行パス リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) は、Oracle WebLogic Server などのサードパーティーのエンタープライズアプリケーションサーバーから JBoss Enterprise Application Platform (JBoss EAP) への移行と、JBoss EAP の最新リリースへのアップグレードをサポートしています。
MTA は、Red Hat OpenShift Container Platform (RHOCP) でのコンテナー化およびデプロイメントのアプリケーションの適合性を評価するための包括的なルールセットを提供します。MTA 分析を実行して、複数のターゲットプラットフォームに移行するアプリケーションの適切性を評価できます。
次の表では、最も一般的にサポートされる移行パスについて説明します。
| ソースプラットフォーム ⇒ | JBoss EAP 6 | JBoss EAP 7 | RHOCP | OpenJDK 8、11 & 17 | Apache Camel 3 | Spring Boot on Red Hat Runtimes | Quarkus | Azure |
|---|---|---|---|---|---|---|---|---|
| Oracle WebLogic Server | ✔ | ✔ | ✔ | ✔ | - | - | - | - |
| IBM WebSphere Application Server | ✔ | ✔ | ✔ | ✔ | - | - | - | - |
| JBoss EAP 4 | ✔ | ✘ [a] | ✔ | ✔ | - | - | - | - |
| JBoss EAP 5 | ✔ | ✔ | ✔ | ✔ | - | - | - | - |
| JBoss EAP 6 | 該当なし | ✔ | ✔ | ✔ | - | - | - | - |
| JBoss EAP 7 | 該当なし | ✔ | ✔ | ✔ | - | - | - | ✔ |
| Oracle JDK | - | - | ✔ | ✔ | - | - | - | - |
| Apache Camel 2 | - | - | ✔ | ✔ | ✔ | - | - | - |
| Spring Boot | - | - | ✔ | ✔ | - | ✔ | ✔ | ✔ |
| Java アプリケーション | - | - | ✔ | ✔ | - | - | - | - |
[a]
現在 MTA はこの移行パスのルールを提供していませんが、Red Hat コンサルティングはソースプラットフォームから JBoss EAP 7 への移行を支援します。
| ||||||||
第4章 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
Java Development Kit (JDK) がインストールされている。MTA がサポートしているのは以下の JDK です。
- OpenJDK 11
- OpenJDK 17
- Oracle JDK 11
- Oracle JDK 17
- Eclipse Temurin™ JDK 11
- Eclipse Temurin™ JDK 17
- 8 GB RAM。
-
macOS のインストール:
maxprocの値が2048以上である。
第5章 ツールについて リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) は、移行およびモダナイゼーションのさまざまな段階を支援するツールを提供します。各ツールの詳細を確認し、プロジェクトに適したものを特定します。
- ユーザーインターフェイス
- Migration Toolkit for Applications Operator
- CLI
次の IDE アドオン:
- Eclipse
- Visual Studio Code、Visual Studio Codespaces、および Eclipse Che
- IntelliJ IDEA
- Maven プラグイン
5.1. MTA Operator について リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications Operator を使用して OpenShift Container Platform バージョン 4.12-4.14 にユーザーインターフェイスをインストールできます。
詳細は、OpenShift Operator のライフサイクル を参照してください。
5.2. ユーザーインターフェイスについて リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications のユーザーインターフェイスを使用すると、Red Hat OpenShift でのハイブリッドクラウド環境用のアプリケーションのコンテナー化に伴うリスクを評価したり、アプリケーションをコンテナー化するためにアプリケーションのコードで加える必要がある変更を分析したりできます。
5.3. CLI について リンクのコピーリンクがクリップボードにコピーされました!
CLI は、Migration Toolkit for Applications のコマンドラインツールで、アプリケーションの移行と最新化の取り組みを評価し、優先順位を付けることができます。他のツールのオーバーヘッドなしに分析を強調表示する多数のレポートが提供されます。CLI にはさまざまなカスタマイズオプションが含まれており、MTA 分析オプションを細かく調整したり、外部の自動化ツールと統合したりできます。
CLI の使用に関する詳細は、MTA の CLI ガイド を参照してください。
5.4. IDE アドオンについて リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications (MTA) アドオンを使用して、アプリケーションを移行およびモダナイズできます。
- Eclipse
- Visual Studio Code、Visual Studio Codespaces、および Eclipse Che
- IntelliJ IDEA、Community バージョンと Ultimate バージョンの両方
各アドオンは、カスタマイズ可能なルールセットを使用してプロジェクトを分析し、ソースコード内の問題をマークし、問題を修正するためのガイダンスを提供し、可能な場合は自動コードの置き換えを提供します。
5.5. Maven プラグインについて リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications の Maven プラグインは Maven ビルドプロセスに統合されるため、開発者はソースコードの反復ごとに移行およびモダイライゼーション作業を継続的に評価できます。分析結果を強調表示するレポートが多数提供され、ビルドごとに更新が必要な開発者向けに設計されています。
付録A 参考資料 リンクのコピーリンクがクリップボードにコピーされました!
A.1. 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
A.1.1. ご協力のお願い リンクのコピーリンクがクリップボードにコピーされました!
Migration Toolkit for Applications がほとんどのアプリケーション設定とサーバー設定 (お客様のものを含む) をカバーできるようにするために、次の項目のいずれかを支援してください。
- jboss-migration-feedback@redhat.com にメールを送信し、MTA 移行ルールが対象とすべき内容を知らせる。
- 移行ルールをテストするためのアプリケーションの例を指定する。
移行が困難なアプリケーションコンポーネントおよび問題の領域を特定する。
- このような問題がある移行領域について簡単な説明を記入する。
- 移行領域の問題を解決する方法の簡単な説明を記入します。
- アプリケーションで Migration Toolkit for Applications を試行する。発生している問題は必ず報告してください。
Migration Toolkit for Applications ルールリポジトリーに貢献する。
- Migration Toolkit for Applications ルールを記述して、移行プロセスを識別または自動化する。
- 新規ルールのテストを作成する。
- 詳細は、ルール開発ガイド を参照してください。
プロジェクトのソースコードに貢献する。
- コアルールを作成する。
- MTA のパフォーマンスまたは効率が向上する。
どのレベルの参加でも大歓迎です。
A.1.2. リソース リンクのコピーリンクがクリップボードにコピーされました!
- MTA フォーク: https://developer.jboss.org/en/windup
- Jira 課題トラッカー: https://issues.redhat.com/projects/TACKLE
- MTA メーリングリスト: jboss-migration-feedback@redhat.com
A.1.3. 問題の報告 リンクのコピーリンクがクリップボードにコピーされました!
MTA は Jira を問題追跡システムとして使用します。MTA の実行で問題が発生した場合は、Jira issue を作成してください。
改訂日時: 2024-06-20