7.2. 将 JBoss EAP 7.x 受管域迁移到 JBoss EAP 8.0


警告

使用 JBoss 服务器迁移工具时,在迁移主机前迁移域控制器,以确保您的域控制器在与主机使用的版本相比必须使用较新版本。例如,在 JBoss EAP 7 上运行的域控制器无法处理在 JBoss EAP 8.0 上运行的主机。

默认情况下,JBoss 服务器迁移工具在将受管域配置从 JBoss EAP 7 迁移到 JBoss EAP 8.0 时执行以下任务。

7.2.1. 迁移 JBoss 域属性

域相关属性名称中的 masterslave 词语被 'primary' 和 'secondary' 替换,迁移会自动修复旧属性名称的任何使用。

控制台会记录迁移重命名的任何属性。

  INFO JBoss domain property jboss.domain.master.address migrated to jboss.domain.primary.address
  INFO JBoss domain property jboss.domain.master.port migrated to jboss.domain.primary.port
  INFO JBoss domain property jboss.domain.master.protocol migrated to jboss.domain.primary.protocol
Copy to Clipboard Toggle word wrap

如果属性被成功重命名,则会显示以下信息:

  INFO JBoss domain properties migrated.
Copy to Clipboard Toggle word wrap

7.2.2. 删除不支持的子系统

JBoss 服务器迁移工具从迁移的服务器配置中删除所有不支持的子系统配置和扩展。工具会记录每个子系统,并在其日志文件删除时将其扩展记录到控制台。

注意

JBoss EAP 7.x 不支持的任何子系统,但由管理员添加到该服务器时也不支持 JBoss EAP 8.0,并将被删除。

要跳过删除不支持的子系统,请将 subsystem .remove-unsupported-subsystems.skip environment 属性设置为 true

您可以覆盖 JBoss 服务器迁移工具的默认行为,并使用以下环境属性指定迁移期间应包含或排除哪些子系统和扩展。

Expand
表 7.2. 服务器迁移环境属性
属性名称属性描述

extensions.excludes

不应迁移的模块名称列表,如 com.example.extension1, com.example.extension3

extensions.includes

应该始终迁移的模块名称列表,如 com.example.extension2,com.example.extension4

subsystems.excludes

子系统命名空间列表,从未迁移的版本,例如: urn:jboss:domain:logging,urn:jboss:domain:ejb3

subsystems.includes

子系统命名空间列表,剥离应始终迁移的版本,例如: urn:jboss:domain:security,urn:jboss:domain:ee

7.2.3. 为受管域迁移引用的模块

从源服务器迁移到目标服务器的配置可能会引用或依赖于目标服务器上没有安装的模块。JBoss 服务器迁移工具检测到这一点,并自动将引用的模块及其依赖模块从源服务器迁移到目标服务器。

通过以下过程迁移受管域配置引用的模块:

  • 数据源子系统配置引用 的模块 被迁移为数据源驱动程序模块。
  • ee 子系统配置引用的模块被迁移为全局模块。
  • 命名 子系统配置引用的模块作为对象工厂模块迁移。
  • 消息传递子系统配置引用的模块被迁移为 Jakarta Messaging bridge 模块。
  • 目标配置中没有安装的任何扩展都会迁移到目标服务器配置。

控制台会记录一个消息,而不是迁移的任何模块 ID。通过在 modules.excludes 环境属性中指定模块 ID,可以排除特定模块的迁移。

7.2.4. 为受管域迁移引用的路径

从源服务器迁移到目标服务器的配置可能会引用或依赖于还必须迁移到目标服务器的文件路径和目录。JBoss 服务器迁移工具不会迁移绝对路径参考。它仅迁移配置为相对于源配置的文件或目录。控制台会记录一个信息,而不是迁移的每个路径。

7.2.5. 迁移旧的 Security Realms

JBoss EAP 8 不支持传统的 Security Realms 框架。JBoss 服务器迁移工具将配置迁移到使用默认 JBoss EAP 8 Elytron 替换。

如果没有使用默认的传统安全域,您可能需要手动配置 Elytron。

控制台日志配置资源迁移到默认的 JBoss EAP 8 Elytron 替换。

 INFO  Legacy security XML configuration retrieved.
 WARN  Migrated Remoting subsystem's http connector resource /profile/full-ha/subsystem/remoting/http-connector/http-remoting-connector using a legacy security-realm, to Elytron's default application SASL Authentication Factory migration-defaultApplicationSaslAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem https-listener resource /profile/full-ha/subsystem/undertow/server/default-server/https-listener/https using a legacy security-realm, to Elytron's default TLS ServerSSLContext migration-defaultTLSServerSSLContext. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem http-invoker resource /profile/full-ha/subsystem/undertow/server/default-server/host/default-host/setting/http-invoker using a legacy security-realm, to Elytron's default Application HTTP AuthenticationFactory migration-defaultApplicationHttpAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 INFO  Legacy security realms migrated to Elytron.
 WARN  Migrated Remoting subsystem's http connector resource /profile/full/subsystem/remoting/http-connector/http-remoting-connector using a legacy security-realm, to Elytron's default application SASL Authentication Factory migration-defaultApplicationSaslAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem https-listener resource /profile/full/subsystem/undertow/server/default-server/https-listener/https using a legacy security-realm, to Elytron's default TLS ServerSSLContext migration-defaultTLSServerSSLContext. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem http-invoker resource /profile/full/subsystem/undertow/server/default-server/host/default-host/setting/http-invoker using a legacy security-realm, to Elytron's default Application HTTP AuthenticationFactory migration-defaultApplicationHttpAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 INFO  Legacy security realms migrated to Elytron.
 WARN  Migrated Remoting subsystem's http connector resource /profile/ha/subsystem/remoting/http-connector/http-remoting-connector using a legacy security-realm, to Elytron's default application SASL Authentication Factory migration-defaultApplicationSaslAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem https-listener resource /profile/ha/subsystem/undertow/server/default-server/https-listener/https using a legacy security-realm, to Elytron's default TLS ServerSSLContext migration-defaultTLSServerSSLContext. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem http-invoker resource /profile/ha/subsystem/undertow/server/default-server/host/default-host/setting/http-invoker using a legacy security-realm, to Elytron's default Application HTTP AuthenticationFactory migration-defaultApplicationHttpAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 INFO  Legacy security realms migrated to Elytron.
 WARN  Migrated Remoting subsystem's http connector resource /profile/default/subsystem/remoting/http-connector/http-remoting-connector using a legacy security-realm, to Elytron's default application SASL Authentication Factory migration-defaultApplicationSaslAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem https-listener resource /profile/default/subsystem/undertow/server/default-server/https-listener/https using a legacy security-realm, to Elytron's default TLS ServerSSLContext migration-defaultTLSServerSSLContext. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 WARN  Migrated Undertow subsystem http-invoker resource /profile/default/subsystem/undertow/server/default-server/host/default-host/setting/http-invoker using a legacy security-realm, to Elytron's default Application HTTP AuthenticationFactory migration-defaultApplicationHttpAuthenticationFactory. Please note that further manual Elytron configuration may be needed if the legacy security realm being used was not the source server's default Application Realm configuration!
 INFO  Legacy security realms migrated to Elytron.
Copy to Clipboard Toggle word wrap

7.2.6. 迁移旧的安全域

JBoss EAP 8 不支持传统的安全域框架。JBoss 服务器迁移工具将配置迁移到使用默认 JBoss EAP 8 Elytron 替换。

如果没有使用默认的传统安全域,您可能需要手动配置 Elytron。

控制台会记录迁移到默认 JBoss EAP 8 Elytron 替换的所有配置资源。

 WARN  Migrated ejb3 subsystem resource /profile/default/subsystem/ejb3/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated undertow subsystem resource /profile/default/subsystem/undertow/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated ejb3 subsystem resource /profile/full/subsystem/ejb3/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated undertow subsystem resource /profile/full/subsystem/undertow/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated messaging-activemq subsystem server resource /profile/full/subsystem/messaging-activemq/server/default, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated iiop-openjdk subsystem resource using legacy security domain to Elytron defaults. Please note that further manual Elytron configuration should be needed!
 WARN  Migrated ejb3 subsystem resource /profile/ha/subsystem/ejb3/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated undertow subsystem resource /profile/ha/subsystem/undertow/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated ejb3 subsystem resource /profile/full-ha/subsystem/ejb3/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated undertow subsystem resource /profile/full-ha/subsystem/undertow/application-security-domain/other using legacy security domain other, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated messaging-activemq subsystem server resource /profile/full-ha/subsystem/messaging-activemq/server/default, to Elytron's default application Security Domain. Please note that further manual Elytron configuration may be needed if the legacy security domain being used was not the source server's default Application Domain configuration!
 WARN  Migrated iiop-openjdk subsystem resource using legacy security domain to Elytron defaults. Please note that further manual Elytron configuration should be needed!
Copy to Clipboard Toggle word wrap

7.2.7. 迁移 keycloak 子系统

JBoss EAP 8 不支持 keycloak 子系统,它被 elytron-oidc-client 子系统替代。

默认情况下,JBoss 服务器迁移工具会自动迁移任何传统的子系统配置。要跳过此迁移任务,请将 subsystem.keycloak.migrate.skip 环境属性值设为 true

传统子系统迁移无需用户的任何交互即可执行。

当旧的 keycloak 子系统迁移完成后,迁移控制台中会显示以下信息:

INFO  Subsystem keycloak migrated.
Copy to Clipboard Toggle word wrap

迁移过程中遇到的任何问题都会写入日志文件,并显示在迁移控制台中。

7.2.9. 更新 jgroups 子系统配置

JBoss 服务器迁移工具不会自动迁移 jgroups 子系统配置。JBoss 服务器迁移工具将配置恢复到默认的 JBoss EAP 8 jgroups 配置。

如果没有使用默认的 JBoss EAP 8 jgroups 子系统配置,您可能需要手动配置 jgroups 子系统配置。

jgroups 子系统配置被更新时,控制台会记录一条消息:

 WARN  Configuration of JGroups protocols has been changed to match the default protocols of the target server. Please note that further manual configuration may be needed if the legacy configuration being used was not the source server's default configuration!
Copy to Clipboard Toggle word wrap

7.2.10. 为受管域迁移添加主机排除

JBoss EAP 8.0 域控制器可能包含在旧版服务器上运行的主机不支持的功能。host-exclude 配置指定那些旧版本中应隐藏的资源。

迁移域控制器配置时,JBoss 服务器迁移工具会将源服务器的 host-exclude 配置添加到或替换目标 JBoss EAP 8.0 服务器的配置。

JBoss 服务器迁移工具会自动更新 host-exclude 配置,并将结果记录到其日志文件和控制台中。

  INFO  Host-excludes configuration added.
Copy to Clipboard Toggle word wrap

7.2.11. 为受管域迁移部署

JBoss 服务器迁移工具 可以迁移以下类型的受管域部署配置:

  • 它引用的部署,也称为 持久部署
  • 部署覆盖它 引用。

部署的迁移包括在目标服务器上安装相关的文件资源,并可能会更新迁移的配置。

JBoss 服务器迁移工具已预先配置为在非交互模式运行时跳过部署。要启用部署迁移,请将 deployments.migrate-deployments.skip 环境属性设置为 false

重要

请注意,当您以交互模式运行 JBoss 服务器迁移工具并进入无效输入时,生成的行为取决于 deployments.migrate-deployments 环境属性值。

  • 如果 deployments.migrate-deployments.skip 设为 false,并且输入无效的输入,则工具将尝试迁移部署。
  • 如果 deployments.migrate-deployments.skip 设为 true,并且输入无效的输入,则工具将跳过部署迁移。
警告

JBoss 服务器迁移工具并不决定部署的资源是否与目标服务器兼容。这意味着应用程序或资源可能无法部署,可能无法按预期工作,或者可能根本不工作。另请注意,JBoss EAP 7.3 *-jms.xml 配置文件等工件在没有修改的情况下被复制,并可能导致 JBoss EAP 服务器使用错误引导。

红帽建议您使用 Migration Toolkit for Runtimes (MTR)分析部署,以确定不同 JBoss EAP 服务器间的兼容性。如需更多信息,请参阅 Migration Toolkit for Runtimes 产品文档

7.2.11.1. 为受管域迁移持久性部署

要在非交互模式运行时启用持久部署迁移,请将 deployments.migrate-persistent-deployments.skip 环境属性设置为 false

JBoss 服务器迁移工具搜索任何持久性部署引用,并将它们列出到控制台。

INFO  [ServerMigrationTask#67] Persistent deployments found: [cmtool-helloworld3.war, cmtool-helloworld4.war, cmtool-helloworld2.war, cmtool-helloworld1.war]
Copy to Clipboard Toggle word wrap

然后,处理工作流取决于您是否在 交互模式或非互动 模式运行工具,如下所述。

以非互动模式迁移持久性部署

如果您以非交互模式运行该工具,该工具将使用预配置的属性来确定是否迁移持久部署。只有在 deployments.migrate-deployments.skipdeployments.migrate-persistent-deployments.skip 属性都设置为 false 时,才会迁移持久性部署。

以互动模式迁移持久性部署

如果您以交互模式运行该工具,JBoss 服务器迁移工具会提示您每个部署使用以下工作流。

  1. 打印到控制台的持久部署后,您会看到以下提示。

    This tool is not able to assert if persistent deployments found are compatible with the target server, skip persistent deployments migration?
    yes/no?
    Copy to Clipboard Toggle word wrap
    • 使用 yes 响应以跳过持久部署的迁移。所有部署引用都会从迁移的配置中删除,并结束迁移过程的一部分。
    • 无需进行相应 响应以继续迁移。
  2. 如果您选择继续,您会看到以下提示。

    Migrate all persistent deployments found?
    yes/no?
    Copy to Clipboard Toggle word wrap
    • 使用 yes 响应,以自动迁移所有部署,并最终迁移迁移过程的一部分。
    • 无需进行相应 响应以继续迁移。
  3. 如果您选择继续,您会收到提示要求确认每个引用部署的迁移。

    Migrate persistent deployment 'helloworld01.war'?
    yes/no?
    Copy to Clipboard Toggle word wrap
    • 使用 yes 响应以迁移部署。
    • 在没有响应的情况下,从迁移的配置中删除部署。

      INFO  [ServerMigrationTask#68] Removed persistent deployment from configuration /deployment=helloworld01.war
      Copy to Clipboard Toggle word wrap

7.2.11.2. 为受管域迁移部署覆盖

部署覆盖的迁移是一个完全自动化的过程。如果您已通过将 deployments.migrate-deployments.skip 环境属性设置为 false 来实现部署迁移,JBoss 服务器迁移工具会搜索链接到迁移部署的单机服务器配置中引用的部署覆盖。它会自动迁移找到的、删除没有引用的内容,并将结果记录到其日志文件和控制台中。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部