迁移注意事项
在开始迁移至 WebSphere® Application Server 版本 9.0 之前,您需要注意以下几点。
本主题阐述概要文件配置迁移。 要将您的应用程序迁移到最新版本,请使用 WebSphere Application Server Migration Toolkit。
z/OS 注意事项
在迁移“ z/OS® 应用服务器”之前,请考虑以下事项:- 迁移过程通常会将用户定义的变量值或应用程序服务器定义的变量值带至迁移后的新环境。 但是有一些特殊变量,它们的值不能带至迁移后的新环境。 这些值是:
- WAS_INSTALL_ROOT
- USER_INSTALL_ROOT
- WAS_PRODUCT_ROOT
- WAS_LIBS_DIR
- WAS_PROPS_DIR
- WAS_TEMP_DIR
- APP_INSTALL_ROOT
- DRIVER_PATH
- WAS_INSTALL_LIBRARY
- JAVA_HOME
- DEPLOY_TOOL_ROOT
- CONNECTOR_INSTALL_ROOT
- TRANLOG_ROOT
- MQJMS_LIB_ROOT
- WAS_ETC_DIR
- WEMPS_USER_ROOT
- MQ_INSTALL_ROOT
- WAS_DAEMON_ONLY_ICU_DATA
- WAS_DAEMON_ONLY_CONFIG_ROOT
- WAS_DAEMON_primordial_root
- WAS_DAEMON_daemon_was_env_file
在迁移创建概要文件时将从概要文件模板中选取这些变量的值。 如果您已经为这些变量定义定制值,那么在迁移到的应用程序服务器发行版中,不会保留这些值。 这些变量不会被迁移,因为它们是作为应用程序服务器属性中的概要文件属性。 如果需要使用不是缺省值的条目来覆盖它们的值,那么必须在产品安装、概要文件创建和迁移过程外更改它们的值。避免麻烦: 请特别注意 APP_INSTALL_ROOT 变量。 即使为 APP_INSTALL_ROOT 定义了定制位置,缺省情况下,迁移过程仍会将应用程序安装至以下位置:${USER_INSTALL_ROOT}/installedApps要让迁移过程使用缺省值以外的应用程序安装位置,请执行下列操作:- 在 zMMT 的“应用程序安装目录”字段中指定该位置。
- 在迁移期间选中迁移应用程序并使用先前的应用程序安装目录选项,以使用此安装路径而不需要再次输入该路径。 如果先前发行版的安装路径包含变量引用,那么应用程序服务器将使用已迁移的值来解析那些变量。
- 在 z/OS 操作系统上安装 WebSphere Application Server 版本 9.0 后,您可能希望构建一个完整的 WebSphere Application Server Network Deployment 单元配置,并在尝试迁移现有单元或节点之前验证其是否运行正常。
此过程将确保系统具有所有必需的必备软件并且支持本产品的最新级别。
- 在执行迁移之前,请评估 WebSphere Application Server 版本 9.0 中已弃用的项目。
如需了解更多信息,请参阅 “已弃用、已稳定、已被取代和已移除的功能 ”。
- 在从 WebSphere Application Server 版本 7.0 或更高版本迁移到版本 9.0 之前,请将应用程序服务器区域ID与密钥环关联,并确认该密钥环已关联 WebSphereCA 证书。 否则,在开启了全局安全性的情况下将发生安全性错误。
- 高可用性管理器和核心组功能包含在 WebSphere Application Server 版本 7.0 或更高版本中。
请参阅 《核心组迁移注意事项》 ,了解可能影响您从版本 7.0 或更高版本迁移至版本 9.0 的核心组配置和拓扑相关事项。
- 如果您计划运行一个早于 6.1 版本的Internet Inter-ORB Protocol (IIOP) 客户端,且该客户端将在同一逻辑分区(LPAR)上与 9.0 版本的服务器进行交互,则 9.0 版本守护进程的守护进程程序库必须在其STEPLIB中包含早期版本的 SBBOLD2 和SBBOLPA库。
- 迁移支持要求源和目标 WebSphere Application Server 配置均位于该LPAR上。
因此,您无法将现有配置迁移到另一个 z/OS LPAR中。 此外,您无法使用 WebSphere Application Server 版本 9.0 的迁移工具,在非 z/OS 操作系统之间进行迁移。
- 迁移分布在多个综合系统环境或操作系统中的单元时不应产生任何独特的迁移问题。 在节点级别进行迁移,并使用根据您要迁移的节点所使用的平台而提供的工具。
有关设置混合平台单元的信息,请参阅《 WebSphere for z/OS -- 异构单元 》白皮书。
- WASPostUpgradeWASPreUpgradeWebSphere Application Server 在 z/OS 操作系统上,不支持由该产品的分布式版本和 i5/OS 版本所支持的、、和 manageprofiles 命令行工具。
zmmt 您必须使用 z/OS 迁移管理工具或相关命令生成迁移任务,然后按照生成的说明提交这些任务。
- 在迁移至 9.0 版本期间,系统所需的存储空间取决于您的环境。
- 文件系统的大小由在生成迁移定义时, z/OS 迁移管理工具或命令中 zmmt 指定的以柱面为单位的主分配值决定。 此外,此文件系统将根据您所指定的辅助分配自动地进行扩展。 迁移工具为这些分配提供的缺省值通常已足够配置数据使用。
- 迁移备份目录需要相当大的临时空间。 需要的具体容量取决于多个因素,然而在绝大多数情况下 100 个柱面已经足够(在需要时包括跟踪)。 如果您不确定临时目录的可用空间是否充足,请使用 z/OS 迁移管理工具中的相关选项,或通过 zmmt 命令将临时目录移动到空间更充足的自定义位置,并在该位置挂载您自己的临时文件系统。 如果没有足够的临时空间,那么会导致迁移过程过早结束。
- IBM® SDK(Java™ Technology Edition)第 8 版是 WebSphere Application Server 第 9.0 版的默认 SDK 版本。避免问题: 除非所有节点均已迁移至 9.0 版本 ,否则请勿启用SDK(Java Technology Edition,版本8)。
有关更多信息,请参阅 “API 迁移”和相关规范。
- 当迁移具有多个节点的单元时,应用程序必须保持处于最低 Java SDK 级别,直到迁移了所有节点为止。
- 迁移文章假设 WebSphere Application Server 版本 9.0 是在必须与 WebSphere Application Server 旧版本共存的环境中进行安装的。计划启用共存时请考虑以下事项:
- 将先决条件更新至 WebSphere Application Server 版本 9.0 所要求的级别。
WebSphere Application Server 的旧版本在更高版本的先决条件环境下仍可运行。
- 请检查已定义的端口,以确保 WebSphere Application Server 版本 9.0 的安装不会发生冲突。
特别需要注意的是,当安装环境需与 WebSphere Application Server 版本 7.0 或更高版本共存时,这两个版本的默认守护进程端口定义是相同的。
有关缺省端口的信息,请参阅指定缺省端口。
有关详细信息,请参阅 “运行并存的应用服务器”。
- 将先决条件更新至 WebSphere Application Server 版本 9.0 所要求的级别。
- 如果计划使用任何混合发行版的单元,请考虑以下事项:
- 您可以将单元中部分节点升级至 WebSphere Application Server 版本 9.0 ,同时将其他节点保留在之前的版本级别。 这表示在一段时间内,可以在同一单元中管理前发行版级别的服务器以及运行新发行版的服务器。
在此混合发行版环境中,可能存在一些有关对处于先前发行版级别的服务器可以执行的操作的限制。 有关详细信息,请参阅 “创建应用服务器”。 在创建集群和集群成员方面也存在限制。 有关详细信息,请参阅创建集群。
- 您可以将单元中部分节点升级至 WebSphere Application Server 版本 9.0 ,同时将其他节点保留在之前的版本级别。 这表示在一段时间内,可以在同一单元中管理前发行版级别的服务器以及运行新发行版的服务器。
- WebSphere Application Server 9.0 版本的迁移操作将 HTTP 传输转换为 channel-framework Web 容器传输链。有关 WebSphere Application Server 版本对 9.0 传输的支持的更多信息,请参阅以下内容:
- 配置传输链
- HTTP 传输通道设置
- 传输链
- 在制订配置文件系统策略时,也要考虑维护方案。
如果您在“ z/OS ”迁移管理工具中使用产品文件系统路径的默认值来配置 WebSphere Application Server Network Deployment 环境,则所有节点都会直接指向产品文件系统的挂载点。 此配置会导致非中断方式的滚动维护几乎无法进行。 如果以此方式配置一个单元,那么对产品文件系统应用服务会同时影响所有节点。 如果以此方式配置多个单元,那么对产品文件系统应用服务会同时影响所有单元。
您可以指定每个节点的配置文件系统与产品文件系统实际装载点之间所谓的中间符号链接。 该策略在白皮书中 WebSphere Application Server 用于 z/OS V5 - 测试、生产和维护的规划 有所阐述。
有关此问题及其与应用维护操作之间关系的更多信息,请参阅《 华盛顿系统中心示例 : WebSphere 用于 z/OS ND 配置》白皮书。 请参阅 《 WebSphere 》中的《 z/OS :更新现有 HFS 配置以使用中间符号链接》一节,了解如何获取和使用该实用程序,以便将现有分层文件系统 (HFS) 配置更新为使用中间符号链接。
- 迁移工具将创建一个迁移备份目录,该目录中包含先前版本的配置的备份副本。 此目录的可用空间至少应该是先前版本的配置目录和应用程序的大小加上执行迁移的批处理作业产生的输出大小。
通常,除非您启用跟踪,否则执行迁移的批处理作业产生的输出非常小。 跟踪输出大小随着您对其启用跟踪的迁移部件不同而不同。 最大的跟踪生产者是迁移过程中的 WASPostUpgrade 阶段。 通常,您将看到此阶段产生大约 30MB 的跟踪输出。
- WebSphere Application Server 9.0 版本不支持 zOS 本地 JDBC 提供程序 (RRS) 的 DB2®。
如果您在即将迁移的配置中使用了适用于 zOS Local JDBC Provider (RRS) 的 DB2 (版本为 7.0 或更高),则必须在迁移至版本 9.0 之前或迁移后立即更改配置,改用 DB2 Universal JDBC 驱动程序提供程序。 9.0 版本的迁移工具不会为您迁移提供程序。
如果您在待迁移的版本中使用的是“ DB2 ”作为“ zOS Local JDBC Provider”(RRS),且在迁移至 9.0 版本之前未将配置更改为使用“ DB2 Universal ”作为“ JDBC Driver Provider”,则会出现以下情况:- 当运行迁移工具时,您将接收到以下消息:
MIGR0442W: 未迁移 Db2 for zOS 本地 JDBC 提供程序 (RRS) JDBC 提供程序。 请手动创建一个 Db2 通用驱动程序提供程序作为替代提供程序。 参见 DB2 有关更多详细信息,请参阅文档。
- 迁移后, DB2 无法访问,并且会收到以下运行时消息:
DSRA8213W: Db2 for zOS 本地 JDBC 提供程序 (RRS) JDBC 提供程序不再 受 WebSphere Application Server 支持。 应用程序应使用 DB2 Universal JDBC 驱动程序提供程序类型 2。
如果您确定必须更改配置以使用 DB2 Universal JDBC 驱动程序提供程序,请执行以下任一操作:- 在迁移至 9.0 版本之前,请将您的 7.0 或更高版本配置更改为使用 DB2 Universal JDBC 驱动程序提供程序。
如果您这样做, 9.0 版本的迁移工具将自动处理向 DB2 Universal JDBC 驱动程序提供程序的迁移,且无需进行任何迁移后操作。
执行下列其中一项操作:- 请手动修改配置,以使用 DB2 Universal JDBC 驱动程序提供程序。
- 如果您是从 7.0 或更高版本进行迁移,请访问 JDBC Migration Utility ,在 DB2 上(网址为 z/OS ),将 DB2 中的 zOS Local JDBC Provider (RRS) 迁移至 DB2 Universal JDBC 驱动程序提供程序。
该工具是一个脚本,用于将 zOS Local JDBC Providers (RRS) 中的“ DB2 ”逐节点迁移至 DB2 Universal JDBC Driver Providers。 随该工具附带的白皮书详细说明了在运行该工具迁移配置之前,如何安装和配置 DB2 Universal JDBC 驱动程序。
- 升级至 9.0 版本后,请执行以下任一操作:
- 请手动修改配置,以使用 DB2 Universal JDBC 驱动程序提供程序。
- 请使用 JDBC Migration Utility 中的“ DB2 ”功能(位于 z/OS ),将 DB2 中的 zOS Local JDBC Provider (RRS) 迁移至 DB2 Universal JDBC 驱动程序提供程序。
该工具是一个脚本,用于将 zOS Local JDBC Providers (RRS) 中的“ DB2 ”逐节点迁移至 DB2 Universal JDBC Driver Providers。
- 当运行迁移工具时,您将接收到以下消息:
- 将基础应用服务器迁移到运行于 z/OS 操作系统的 WebSphere Application Server 版本 9.0 后,管理和用户应用程序仍将像上一版本一样,定义在default_host虚拟主机下。 但是,将在 V6.1 中引入的虚拟主机 admin_host 中定义已迁移的 Deployment Manager。
- 如果您使用的是隔离的数据存储库(具体而言,是指非共享的数据存储库,例如 SIB 和 Apache Derby 数据库的事务日志),并且是从旧版本进行迁移,则您的现有数据库和事务日志将被保留。 如果有存储在这些本地数据存储库中的任务关键信息,那么应在尝试进行迁移前,安全地关闭与那些存储库交互的所有服务器。 在迁移成功完成或回滚之前,那些服务器应保持脱机。
在迁移已完成或已回滚至先前版本之后,可以重新启动与这些独立数据存储库交互的服务器。
- 在迁移 Apache Derby 数据库之前,确保正在使用 Apache 数据库的主管应用程序的任何应用程序服务器都已关闭。 否则,Apache Derby 迁移将失败。
- 您应该知道下列与迁移安全域有关的规则:
- 如果迁移 Deployment Manager,而且它有单元级别作用域的安全域,那么迁移工具会执行下列操作:
- 如果新配置中尚未存在称为 PassThroughToGlobalSecurity 的域,那么迁移将创建该域。
- 迁移为旧配置中存在的所有集群添加到新配置的集群映射。
- 在迁移前仅存在于 Version 9.0 部署管理器配置中的集群,其与 PassThroughToGlobalSecurity 的映射关系不会发生改变。
- 如果迁移前已存在针对版本 9.0 集群的映射,则迁移后这些映射仍然存在。
- 如果在迁移前, 9.0 版本的集群不存在任何映射,那么迁移后这些映射仍然不存在。
- 如果某个集群在迁移前同时存在于旧配置和 9.0 版本的配置中,则新配置中的该集群将被添加到 PassThroughToGlobalSecurity 域中,其行为与旧版本中的该集群相同。
- 在迁移前仅存在于 Version 9.0 部署管理器配置中的集群,其与 PassThroughToGlobalSecurity 的映射关系不会发生改变。
- 迁移将为已迁移
V6.1.x 配置中存在的任何总线添加总线映射。
将遵循用于集群映射的相同规则来更新总线映射。
- 不会将管理服务器 (Deployment Manager) 添加至 PassThroughToGlobalSecurity 域。
- 如果迁移联合节点,而且它有单元级别作用域的安全域,那么迁移工具会执行下列操作:
- 如果新配置中尚未存在称为 PassThroughToGlobalSecurity 的域,那么迁移将创建该域。
- 迁移将为旧节点配置中的所有非集群服务器创建到 PassThroughToGlobalSecurity
域的服务器级映射。
- 节点上作为集群的一部分进行迁移的服务器在 PassThroughToGlobalSecurity
域中没有接收到条目,因为在迁移 Deployment Manager 期间已经通过集群映射解决了这个问题。
如果已移除该映射,那么迁移将保留该行为。
- 不会将管理服务器 (Node Agent) 添加至 PassThroughToGlobalSecurity 域。
- 节点上作为集群的一部分进行迁移的服务器在 PassThroughToGlobalSecurity
域中没有接收到条目,因为在迁移 Deployment Manager 期间已经通过集群映射解决了这个问题。
如需了解更多信息,请参阅 “多个安全域 ”中的“混合版本环境中的安全域”一节。
- 如果迁移 Deployment Manager,而且它有单元级别作用域的安全域,那么迁移工具会执行下列操作:
- V8WAS_HOME/properties/java.security如果您在上一版本的 WebSphere Application Server 中更新了 java.security 文件,请确保您的更新内容已迁移至位于.目录下的 java.security 文件中。
- 使用迁移工具将系统迁移至 WebSphere Application Server 版本 9.0 后,您可能需要执行一些迁移工具不会自动执行的操作。
- 请检查您在 WebSphere Application Server 版本 7.0 或更高版本中可能使用的任何轻量级第三方身份验证(LTPA)安全设置,并确认 9.0 版本的安全设置是否正确。
有关更多信息,请参阅 “轻量级第三方身份验证”。
- 如有必要,请在 WebSphere Application Server 版本 9.0 上启动已迁移的服务器之前,创建新的系统授权设施(SAF)配置文件。从 V6.1 开始,使用 SAF 概要文件控制某些安全工具。
- 在 7.0 及更高版本中 ,“启用受信任的应用程序 ”设置由SAF安全配置文件控制,而非像以前的版本那样由内部变量 WebSphere 控制。
“启用受信任的应用程序 ”选项允许 WebSphere Application Server 运行时代表应用程序代码执行某些特权操作,所有使用 LocalOS 注册表或SAF授权的服务器都必须启用此选项。
- 在 7.0 及更高版本中,“允许与操作系统同步 ”功能(该功能允许应用程序使用除服务器身份之外的其他操作系统身份访问资源)通过SAF安全配置文件和 com.ibm.websphere.security.SyncToOSThread 变量进行控制。
此实现允许管理员和系统安全性管理员决定是否使用该功能。 此实现还允许限制应用程序可以使用的标识。
如果您是从 WebSphere Application Server 的旧版本迁移而来,并且需要这些功能,则必须创建所需的SAF配置文件。 如果这些配置文件不存在或未正确设置,则在 9.0 版本上启动使用 LocalOS 用户注册表或SAF授权的单元时,将会失败。
如果您使用 Resource Access Control Facility ( RACF® )作为安防系统,请按照以下说明操作。 如果使用另一个与 SAF 兼容的安全系统,请与安全系统供应商联系以获取适当的信息。- 请检查您的 Multiple Virtual Storage ( MVS )系统日志,或使用管理控制台,以确定您的服务器上是否已启用 “启用受信任的应用程序”功能。在启动日志中查找
control_region_security_enable_trusted_applications。 如果此值设置为 1,那么已启用启用可信应用程序。 如果已启用此选项,那么创建以下 SAF 概要文件并授予对应用程序服务器控制区域用户标识的 READ 访问权:BBO.TRUSTEDAPPS.cell_shortname.cluster_transition_name请使用以下 RACF 命令来完成此操作:RDEFINE FACILITY BBO.TRUSTEDAPPS.cell_shortname.cluster_transition_name UACC(NONE) PERMIT FACILITY BBO.TRUSTEDAPPS.cell_shortname.cluster_transition_name ID(controller_userid) ACCESS(READ) SETROPTS RACLIST(FACILITY) REFRESH将 cluster_name SAF 工具概要文件替换为未划分集群的服务器的集群过渡名称。 如果您希望单元中的所有服务器都启用启用可信应用程序,那么将集群名称替换为通配符 (*)。
有关更多信息,请参阅 “系统授权设施”类和配置文件。
- 请检查您的 Multiple Virtual Storage ( MVS )系统日志,或使用管理控制台,以确定您的服务器上是否启用了 “允许与操作系统同步”线程。如果已启用此选项,那么创建以下 SAF 概要文件并授予对应用程序服务器控制区域用户标识的 READ 或 CONTROL 访问权:
以下示例包含您可能用于完成此操作的 RACF 命令:BBO.SYNC.cell_shortname.cluster_transition_nameRDEFINE FACILITY BBO.SYNC.cell_shortname.cluster_transition_name UACC(NONE) PERMIT FACILITY BBO.SYNC.cell_shortname.cluster_transition_name ID(controller_userid) ACCESS(CONTROL) SETROPTS RACLIST(FACILITY) REFRESH将集群名称替换为未划分集群的服务器的集群过渡名称。 如果您希望单元中的所有服务器都启用允许与操作系统线程同步,那么将集群名称替换为通配符 (*)。
重要说明:- 如果将控制区域 READ 访问权授予应用程序服务器控制区域用户标识,那么会限制根据 SAF SURROGAT 概要文件可将线程身份更改为的用户标识。
如果控制器用户标识具有对 BBO.SYNC 概要文件的 READ 访问权,并且 com.ibm.websphere.security.SyncToOSThread 变量设置为 true,那么应用程序可能会请求“与操作系统线程同步”。 应用程序可以使用调用者的标识或与角色相关的用户标识来访问资源。 然而,要使服务方能够使用其他应用程序标识运行,该服务方需要对 SURROGAT 概要文件 BBO.SYNC.application_userid 的 READ 访问权。
- 如果将控制区域 CONTROL 访问权授予应用程序服务器控制区域用户标识,那么将允许线程身份切换为任何请求“与操作系统线程同步”的用户标识。
如果控制器用户标识具有对 BBO.SYNC 概要文件的 CONTROL 访问权,并且 com.ibm.websphere.security.SyncToOSThread 变量设置为 true,那么应用程序可能会请求“与操作系统线程同步”。 应用程序可以使用调用者的标识或任何与角色相关的用户标识来访问资源。 将不会检查 SURROGAT 概要文件。
如需了解更多信息,请参阅 “允许应用程序与操作系统线程同步 ”。
- 如果将控制区域 READ 访问权授予应用程序服务器控制区域用户标识,那么会限制根据 SAF SURROGAT 概要文件可将线程身份更改为的用户标识。
- 在 7.0 及更高版本中 ,“启用受信任的应用程序 ”设置由SAF安全配置文件控制,而非像以前的版本那样由内部变量 WebSphere 控制。
- 如果您使用 SAF EJBROLE 配置文件进行基于角色的授权,请为两个管理角色(即部署者角色和管理安全管理员角色)创建 EJBROLE 配置文件,这两个角色是在 6.1 版本中引入的。
- 请检查您的 Java 虚拟机( JVM )设置,确保堆大小至少为 50,以提升启动性能。
请阅读文档中的 “Java 虚拟机设置 ”一文以获取更多信息。
如果以前使用较小的堆大小,那么现在可以使用缺省堆大小 50。
- 验证自动执行的 Apache Derby 数据库迁移操作的结果,并手动迁移该工具未自动迁移的任何 Apache Derby 数据库。
请阅读《 迁移 Apache Derby 数据库 》以获取更多信息。
- 如果在同一逻辑分区 (LPAR) 上有多个 Node Agent,那么在运行迁移作业后可能会存在 IPC_CONNECTOR_ADDRESS 端口冲突。 重新配置发生冲突的端口。
- 如果您有应用程序试图通过传输层安全协议( TLS )向会话初始化协议(SIP)统一资源标识符(URI)发送请求,则应注意 WebSphere Application Server 的 6.1 版本与 9.0 版本在行为上的差异。
在 V6.1 中,当 SIP 应用程序通过 TLS 向 SIP URI 发送请求时,请求 URI 方案将从
sip更改为sips。 在 9.0 版本中,该方案保持不变。当应用程序尝试发送请求 URI 中包含sip方案和tls传输参数的 SIP 请求时,就会出现这种差异。 例如,如果 V6.1 中的应用程序创建包含如下请求 URI 的请求:
并且将该请求发送至网络,那么 SIP 容器将更改方案和传输参数以生成如下请求 URI:sip:alice@atlanta.com;transport=tls
在 9.0 版本中,SIP容器不会更改方案。sips:alice@atlanta.com;transport=tcp如果您希望在将 6.1 版本的应用服务器迁移至 9.0 版本后保留原有行为,请修改应用程序代码。 如果应用程序计划发送
sipsURI,那么它应该先以该方式创建 URI,然后再请求发送消息。 利用sipsURI,可以保持行为与 V6.1 相同。
- 请检查您在 WebSphere Application Server 版本 7.0 或更高版本中可能使用的任何轻量级第三方身份验证(LTPA)安全设置,并确认 9.0 版本的安全设置是否正确。