Migration Toolkit for Applications 简介


Migration Toolkit for Applications 6.1

了解如何使用 Migration Toolkit for Applications 将应用程序迁移到 OpenShift Container Platform 并对其进行管理。

Red Hat Customer Content Services

摘要

本指南提供了帮助您开始使用 Migration Toolkit for Applications 的信息,以便您可以在 Red Hat OpenShift 的混合云环境中加速大规模应用程序现代化工作。此解决方案会考虑整个迁移过程的详细情况,包括产品组合和应用程序级别的信息:库存、评估、分析和管理应用程序,以便更快地通过用户界面迁移到 OpenShift。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 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 应用程序的迁移解决方案现在随运行时 1.0 提供。

第 2 章 关于 Migration Toolkit for Applications

什么是 Migration Toolkit for Applications?

Migration Toolkit for Applications (MTA) 在 Red Hat OpenShift 的混合云环境中加速大规模应用程序现代化的过程。此解决方案会考虑整个迁移过程的详细情况,包括产品组合和应用程序级别的信息:库存、评估、分析和管理应用程序,以便更快地通过用户界面迁移到 OpenShift。

MTA 使用一个非常具体的问题调查,作为评估应用程序的基础,使您能够估计准备应用进行容器化所需的难度、时间和其他资源。您可以使用评估结果作为与利益相关者进行的讨论基础,以确定哪些应用程序可以被容器化,哪些需要大量的准备工作,哪些不适用于容器化。

MTA 会根据一个或多个规则集来对应用程序进行分析,并找出应用程序的哪些部分需要进行修改才可以对其进行现代化。

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 应用程序服务

有关用例和迁移路径的更多信息,请参阅适用于开发人员网页的 MTA

Migration Toolkit for Applications 如何简化迁移?

Migration Toolkit for Applications 会查找常见资源和在迁移应用程序时的已知问题。它为应用程序使用的技术提供了高级视图。

MTA 生成详细的报告,评估迁移或现代化路径。此报告可帮助您估算大型项目所需的工作量,并减少涉及的工作。

2.1. MTA 功能

Migration Toolkit for Applications (MTA) 是一个集成的工具组件,可让您更好地评估、制定优先级并在 Red Hat OpenShift(行业领先的 Kubernetes 平台)环境中实现跨越混合云环境的自动化。

现在,可以通过更多迁移路径轻松地升级,MTA 包括:

  • 新的应用程序库存和评估模块 可帮助组织管理、分类和标记应用程序,同时评估应用程序是否适合在容器中部署,包括标记迁移策略的潜在风险。
  • 完全与源代码和二进制存储库集成,自动化检索应用程序以进行分析,以及用户界面中管理的 HTTP 和 HTTPS 代理配置等代理集成。
  • 改进了分析功能 及新的分析模式,包括解析库的源和依赖项模式,以收集依赖项并将它们添加到分析的整体范围内。还有一个简化的用户体验来配置分析范围,包括开源库。
  • 增强的 Role-Bassed Access Control (RBAC)Red Hat Single Sign-On 驱动,定义三个具有不同权限的差异化用户角色,以满足各用户管理员、架构师和 migrator 的需求,包括多个凭证类型的凭证管理。
  • 管理员视角可为管理员提供工具范围的配置管理。

2.2. 关于 MTA 规则

Migration Toolkit for Applications (MTA) 包含基于规则的迁移工具,用于分析您计划迁移的应用程序所使用的 API、技术和架构。实际上,MTA 分析过程使用 MTA 规则来实施。MTA 使用内部规则从存档、解译文件、扫描和分类文件类型中提取文件类型,分析 XML 和其他文件内容,分析应用程序代码,以及构建报告。

MTA 根据规则执行结果构建数据模型,并将组件数据和关系存储在图形数据库中,然后可以根据迁移规则的要求以及报告目的进行查询和更新。

MTA 规则使用以下规则模式:

when(condition)
  perform(action)
otherwise(action)
Copy to Clipboard Toggle word wrap

MTA 开箱即用提供一组全面的标准迁移规则。由于应用程序可能包含自定义库或组件,因此 MTA 允许您编写自己的规则来识别现有规则集中未涵盖的组件或软件。

如果您计划自己编写自定义规则,请参阅规则开发指南以了解具体步骤。

第 3 章 支持的配置

3.1. 支持的迁移路径

Migration Toolkit for Applications (MTA) 支持从第三方企业应用服务器(如 Oracle WebLogic Server)迁移到 JBoss 企业应用平台(JBoss EAP),并升级到最新版本的 JBoss EAP。

MTA 提供了一组全面的规则,用于评估应用程序以在 Red Hat OpenShift Container Platform (RHOCP) 上进行容器化和部署。您可以运行 MTA 分析来评估您的应用程序是否适合迁移到多个目标平台。

下表描述了最常见的迁移路径。

Expand
表 3.1. 支持的迁移路径: Source platform TOKEN 目标
源平台 TOKENJBoss EAP 6JBoss EAP 7RHOCPOpenJDK 8、11 和 17Apache Camel 3Spring Boot on Red Hat RuntimesQuarkusAzure

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 目前不提供此迁移路径的规则,但红帽咨询可帮助从任何源平台迁移到 JBoss EAP 7。

第 4 章 先决条件

  • 安装了 Java 开发套件 (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 和 Red Hat CodeReady Studio
    • Visual Studio Code、Visual Studio Codespaces 和 Eclipse Che
    • Intellij IDEA
  • Maven 插件

5.1. 关于 MTA Operator

您可以使用 Migration Toolkit for Applications Operator 在 OpenShift Container Platform 版本 4.9-4.11 上安装用户接口。

5.2. 关于用户界面

借助 Migration Toolkit for Applications 的用户界面,您可以评估在 Red Hat OpenShift 上为混合云环境容器化应用程序的风险,或者分析应用程序代码中必须进行的更改,以便容器化应用程序。

5.3. 关于 CLI

CLI 是 Migration Toolkit for Applications 的 Migration Toolkit for Applications 中的命令行工具,允许用户对应用程序的迁移和现代化工作进行评估和优先级。它提供了大量报告,突出显示分析而不用其他工具的开销。CLI 包括广泛的自定义选项,允许您微调 MTA 分析选项或与外部自动化工具集成。

有关使用 CLI 的更多信息,请参阅 MTA CLI 指南

5.4. 关于 IDE Addons

您可以使用 Migration Toolkit for Applications (MTA)附加组件来迁移和现代化应用程序:

  • Eclipse 和 Red Hat CodeReady Studio
  • Visual Studio Code、Visual Studio Codespaces 和 Eclipse Che
  • Intellij IDEA 是社区和 Ultimate 版本

每个插件都利用自定义规则集来分析您的项目,标记源代码中的问题,提供指导来修复问题,并提供自动代码替换(如果可能)。

5.5. 关于 Maven 插件

用于应用程序的 Migration Toolkit 的 Maven 插件集成到 Maven 构建流程中,允许开发人员每次执行源代码时持续评估迁移和现代化工作。它提供了大量报告,突出显示分析结果,专为希望更新每个构建的开发人员而设计。

附录 A. 参考材料

A.1. 其他资源

A.1.1. 参与

为了帮助应用程序的 Migration Toolkit for Applications 包括大多数应用程序结构和服务器配置,您可以使用以下项目帮助:

  • 发送电子邮件到 jboss-migration-feedback@redhat.com,并告知我们应该覆盖的 MTA 迁移规则。
  • 提供示例应用程序来测试迁移规则。
  • 识别迁移可能很难迁移的应用程序组件和问题区域。

    • 编写这些问题迁移区域的简短描述。
    • 编写简短概述,了解如何解决问题迁移区域。
  • 在应用程序上尝试 Migration Toolkit for Applications。请务必报告您遇到的任何问题。
  • 对应用程序规则存储库的 Migration Toolkit 提供贡献。

    • 编写 Migration Toolkit for Applications 规则以识别或自动迁移过程。
    • 为新规则创建一个测试。
    • 规则开发指南中提供了详细信息。
  • 为项目源代码贡献代码。

    • 创建核心规则。
    • 提高 MTA 性能或效率。

任何级别的参与都非常感谢!

A.1.3. 报告问题

MTA 使用 JIRA 作为其问题跟踪系统。如果您遇到执行 MTA 的问题,请提交 JIRA 问题





更新于 2023-10-26

法律通告

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat