WebSphere Application Server 上为 Rational Publishing Engine 文档生成配置负载均衡

了解如何在集群环境中配置 Rational® Publishing Engine 应用程序。

开始之前

有关使用 WebSphere® Application Server 进行负载均衡的工作原理的常规信息,请参阅 WebSphere Application Server 8.0 信息中心中的简介:集群创建集群主题。

关于此任务

1:复查 WebSphere 拓扑

要设置集群环境,请从创建分布式 IBM WebSphere Application Server Network Deployment 拓扑开始。设置以下主机:

关于此任务

下表显示了用于设置集群环境的角色:
表 1. 主机名
机器 角色 主机
机器 1 Deployment Manager 和节点 1 dm.example.org
机器 2 节点 2 和节点 3 nodes.example.org
机器 3 IBM HTTP Server (IHS) 和 IBM Web 服务器插件 ihs.example.org
机器 4 MCSERVER mcserver.example.org
机器 5 存储位置 storage.example.org
机器 6 RPE 客户机 rpeclient.example.org
注:
  • dm.example.org:此服务器托管带有 Deployment Manager 和 Node Agent 的 64 位 IBM WebSphere Application Server Network Deployment V8.0.0.5 的安装。
  • nodes.example.org:此服务器托管带有 Node Agent 的 64 位 IBM WebSphere Application Server Network Deployment V8.0.0.5 的安装。
  • ihs.example.org:此服务器托管带有 Node Agent 的 64 位 IBM WebSphere Application Server Network Deployment V8.0.0.5 以及带有 WebSphere IHS V8.0.0.5 插件的 64 位 IBM HTTP Server V8.0.0.5 的安装。
  • mcserver.example.org:此服务器托管其中部署了 Rational Publishing Engine 远程服务的 64 位 IBM WebSphere Application Server Network Deployment V8.0.0.5 的安装。
  • storage.example.org:此服务器用来存储输出文件。请创建 \\storage\rpe\files 作为共享位置,该位置使用的域帐户必须能够访问正在运行 MCSERVER 的用户以及所有正在运行 WAS 实例的节点。
    注: 所有文档生成节点和 MCSERVER 必须使用同一文件存储位置。运行 WebSphere Application Server 的用户帐户必须对此文件存储位置具有访问权限。
  • rpeclient.example.org:此机器用来执行文档生成,它充当 Rational Publishing Engine 客户机。
负载均衡环境的拓扑图

2:满足部署集群环境的先决条件

必须先满足若干先决条件,然后才能部署带有 WebSphere Application Server Network Deployment 的集群环境。

过程

3:安装

3.1:安装 Deployment Manager 和节点

安装 WebSphere Application Server Network Development V8 并升级到 FP5。

开始之前

确保已安装 IBM Installation Manager V1.7.1

过程

  1. Passport Advantage® 下载 WebSphere Application Server Network Deployment V8。
  2. 将下载的文件解压缩到驱动器上的位置。 示例:C:\was\software\was80nd
  3. http://www.ibm.com 下载 WebSphere Application Server FP5。
  4. 将下载的文件解压缩到驱动器上的位置。 示例:C:\was\software\was80nd\8.0.0-WS-WAS-FP0000005
  5. 启动 Installation Manager 并单击文件 > 首选项
  6. 单击添加存储库,然后将 WebSphere Application Server 修订包 repository.config 文件添加到列表。示例:C:\was\software\was80nd\8.0.0-WS-WAS-FP0000005\repository.config
  7. 单击确定,然后单击安装
  8. 选中 IBM WebSphere Application Server Network DeploymentV8.0.0.5 复选框。单击下一步
  9. 阅读并接受许可协议中的条款。单击下一步
  10. 选择创建新的软件包组并选择安装目录。单击下一步
  11. 可选: 选择要安装的语言,然后单击下一步
  12. 确保选中了要安装的以下功能部件的复选框:
    • 用于 EJB 3.0 之前的模块的 EJBDeploy 工具
    • 独立瘦客户机、资源适配器和可嵌入容器
    • 独立瘦客户机和资源适配器
    • 可嵌入 EJB 容器
    • 64 位 IBM SDK for Java™ V6
  13. 在“摘要”页面上,复查摘要信息,然后单击安装
  14. 完成安装之后,在要启动哪个程序部分中选择,以防止完成安装时创建概要文件。单击完成

3.1.1:创建 Deployment Manager 概要文件

创建 Deployment Manager 概要文件 dm.example.org,并通过分配用户名和密码来启用管理安全性。
过程
  1. 通过单击 IBM WebSphere > IBM WebSphere Application Server Network Deployment V8.0 > 工具 > 概要管理工具来启动概要管理工具。
  2. 单击创建
  3. 在“选择环境”屏幕中,选择单元(Deployment Manager 和联合应用程序服务器)作为概要文件类型,然后单击下一步
  4. 选择创建高级概要文件,然后单击下一步
  5. 确保选择部署管理控制台(建议),然后单击下一步
  6. 请勿更改缺省概要文件名称和概要文件目录,但是要记下它们供以后使用。单击下一步
  7. 确保主机名正确。主机名用来对 Deployment Manager 进行寻址。对于节点名和单元名称,请选择有意义且易于记住的名称。将在配置中使用这些名称。单击下一步
  8. 确保选中启用管理安全性复选框,并对用户名和密码输入 admin。稍后您在设置全局安全性时可以更改此用户名和密码。单击下一步
  9. 在“安全证书(第 1 部分)”页面中,选择缺省选项并单击下一步
  10. 在“安全证书(第 2 部分)”页面中,更新缺省密钥库密码并单击下一步
  11. 在“端口值分配”页面上,请仔细记下缺省端口。如果您由于任何原因而必须更改缺省端口(例如,SOAP 端口或 HTTP 安全端口),那么务必记下端口号。单击下一步
  12. 在“Web 服务器定义”页面中,请不要选择任何选项。单击下一步
  13. 在“概要文件创建摘要”页面上,复查配置,然后单击创建
  14. 完成安装时,请取消选中启动第一步控制台复选框,并单击完成
结果
您已创建 Deployment Manager 概要文件。

3.1.2:为节点 1、节点 2 和节点 3 创建概要文件

dm.example.org 主机中的节点 1 创建概要文件。然后对 nodes.example.org 中的节点 2 和节点 3 重复这些步骤。
过程
  1. 通过单击 IBM WebSphere > IBM WebSphere Application Server Network Deployment V8.0 > 工具 > 概要管理工具来启动概要管理工具。
  2. 单击创建
  3. 在“选择环境”屏幕中,选择定制概要文件作为概要文件类型,然后单击下一步
  4. 选择创建高级概要文件,然后单击下一步
  5. 输入 Custom01 作为概要文件名称,然后单击下一步
  6. 在“节点和主机名”页面上,确保主机名正确。单击下一步
  7. 确保主机名正确。主机名用来对 Deployment Manager 进行寻址。单击下一步
  8. 指定您在创建 Deployment Manager 概要文件时指定的 Deployment Manager 的主机名、SOAP 端口号以及用户名和密码。如果您计划稍后联合节点,请选中稍后联合此节点复选框。单击下一步
  9. 在“安全证书(第 1 部分)”页面中,选择缺省选项。单击下一步
  10. 在“安全证书(第 2 部分)”页面中,更新缺省密钥库密码并单击下一步
  11. 在“端口值分配”页面上,请仔细记下缺省端口。如果您由于任何原因而必须更改缺省端口(例如,SOAP 端口或 HTTP 安全端口),那么务必记下端口号。单击下一步
  12. 在“概要文件创建摘要”页面上,复查配置,然后单击创建
  13. 安装完成时,请单击完成
  14. nodes.example.org 中的节点 2 重复这些步骤。
  15. nodes.example.org 中的节点 3 重复这些步骤。

3.1.3:联合节点 2 和节点 3

对节点 2 完成以下步骤,然后对节点 3 重复这些步骤。
开始之前
为节点 2 和节点 3 创建概要文件。
过程
  1. 在命令行实用程序中,浏览至节点 2 的 bin 目录。示例:C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\Custom02\bin
  2. 运行命令:addNode.bat <Deployment Manager IP Address> <Port>
  3. 等待该命令完成并显示消息 Node has been successfully federated
  4. 对节点 3 重复这些步骤。

3.2:安装 IBM HTTP Server 以及 WebSphere Application Server 的 Web 服务器插件

对于集群环境,可以安装 IBM HTTP Server 或 IBM WebSphere Proxy Server 的实例,并在 ihsproxy.example.org 上托管该实例以充当代理服务器。以下指示信息用于将 IBM HTTP Server V8.0.0.5 以及 WebSphere Application Server V8.0.0.5 的 Web 服务器插件安装为代理。

开始之前

确保已安装 IBM Installation Manager V1.7.1

过程

  1. Passport Advantage 下载 WebSphere Application Server Network Deployment Supplements V8。
  2. 将下载的文件解压缩到驱动器上的位置: 示例:C:\was\software\was80ndSupp
  3. 启动 Installation Manager 并单击文件 > 首选项
  4. 单击添加存储库,然后将以下 repository.config 文件添加到列表:C:\was\software\was80ndSupp\repository.config
  5. 单击确定,然后单击安装
  6. 选择要安装的 IBM HTTP Server for WebSphere Application Server 软件包以及 IBM Web Server Plug-ins for IBM WebSphere Application Server 软件包。单击检查其他版本、修订和扩展,并确保选择了 V8.0.0.5 或更高版本。单击下一步
  7. 阅读并接受许可协议中的条款。单击下一步
  8. 选择创建新的软件包组并选择安装目录。请记下此安装目录供以后使用。单击下一步
  9. 确保选中了要安装的以下功能部件的复选框:
    • 带有 Java 的 64 位 IBM HTTP Server V6
    • 64 位 IBM Java 运行时环境 V6
  10. 接受缺省 HTTP 端口 80。稍后,您将在端口 443 上设置安全虚拟主机。单击下一步
  11. 在“摘要”页面上,复查摘要信息,然后单击安装
  12. 安装完成之后,请单击完成

3.3:创建并配置集群

创建 IBM WebSphere Application Server 集群。

开始之前

必须设置服务器和代理服务器。

过程

  1. 打开浏览器窗口并转至集成解决方案控制台(网址为 https://dm.example.org:port/ibm/console,其中 dm.example.org 是托管 Deployment Manager 的服务器的主机名,port 是管理控制台安全端口)。
  2. 使用您在创建 Deployment Manager 概要文件时创建的用户名和密码登录。
  3. 单击服务器 > 集群 > WebSphere 应用程序服务器集群。然后单击新建
  4. 输入集群的名称(例如,RPE 集群),并清除本地优先复选框。单击下一步
  5. 在下一个页面上,创建该集群的基于应用程序服务器的第一个成员。
    1. 成员名字段中,输入名称,例如,RPEWS1
    2. 选择节点字段中,从下拉列表中选择节点 1
    3. 对于权重,请选择 2
    4. 单击下一步
  6. 可选: 在下一个页面上,可以添加成员。如果您选择稍后添加成员,请遵循 4.3.2 节中的指示信息。如果您选择立即添加成员,请输入 RPE WS2 作为成员名,并在“选择节点”下拉列表中选择节点 2。然后单击添加成员
  7. 复查“摘要”,然后单击完成
  8. 单击直接保存至主配置
  9. 选择集群并单击启动。将出现一个绿色箭头,指示集群已启动。因为您已将应用程序服务器转换为集群,所以原始应用程序服务器上安装的应用程序的目标将转换为以该集群为目标。
  10. 要检查此转换,请打开缺省应用程序的“管理模块”部分:
    • 单击应用程序 > 应用程序类型 > WebSphere 企业应用程序,然后单击 DefaultApplication
    • 在“模块”部分中,单击管理模块
    • 确保 RPE 集群列示在“服务器”列中。

3.3.1:添加集群成员

在创建节点集群之后,可以添加集群成员。
过程
  1. 打开浏览器窗口并转至集成解决方案控制台(网址为 https://dm.example.org:port/ibm/console,其中 dm.example.org 是托管 Deployment Manager 的服务器的主机名,port 是管理控制台安全端口)。
  2. 使用您在创建 Deployment Manager 概要文件时创建的用户名和密码登录。
  3. 单击服务器 > 集群 > WebSphere 应用程序服务器集群,然后单击您创建的集群名称。
  4. 其他属性部分中,单击集群成员
  5. 在“集群成员”页面上,单击新建
  6. 成员名字段中,输入成员的名称。 示例:RPEWS2
  7. 选择您为各自节点创建的节点集群。
  8. 单击添加成员
  9. 单击下一步,然后单击完成
  10. 确保 Rational Publishing Engine 成员列示在服务器 > 服务器类型 > WebSphere Application Server页面上。
  11. 选中该节点的复选框并单击启动
  12. 单击直接保存至主配置
  13. 转至调查页面(网址为 https://proxy_host/snoop)以测试新添加的成员节点。 调查页面列出有关 Web 应用程序的各种信息(如服务器名称和端口)。

4:使更改与节点同步

开始之前

启动所有节点。

过程

  1. 打开浏览器窗口并转至集成解决方案控制台(网址为 https://dm.example.org:port/ibm/console,其中 dm.example.org 是托管 Deployment Manager 的服务器的主机名,port 是管理控制台安全端口)。
  2. 使用您在创建 Deployment Manager 概要文件时创建的用户名和密码登录。
  3. 单击系统管理 > 保存更改至主存储库
  4. 在保存页面中,选中使更改与节点同步复选框。
  5. 单击保存

5:在 Deployment Manager 上部署远程服务应用程序

开始之前

在 Deployment Manager 中,添加集群和相关联的成员。

过程

  1. 打开浏览器窗口并转至集成解决方案控制台(网址为 https://dm.example.org:port/ibm/console,其中 dm.example.org 是托管 Deployment Manager 的服务器的主机名,port 是管理控制台安全端口)。
  2. 使用您在创建 Deployment Manager 概要文件时创建的用户名和密码登录。
  3. 部署远程服务应用程序。请参阅在 WebSphere Application Server 上手动部署远程服务应用程序以获取更多详细信息。
    注: 部署远程服务应用程序时(这是以上有关“将模块映射至服务器”窗口的信息中心主题中的步骤 8),在集群和节点选项中,选择已按 3.3:创建并配置集群中的描述创建的集群,然后继续进行常规部署。

6:在 MCSERVER 主机上部署远程服务应用程序

过程

部署远程服务应用程序。有关更多详细信息,请参阅在 WebSphere Application Server 上手动部署远程服务应用程序

7:在 Java 虚拟机 (JVM) 定制属性中定义标志

开始之前

在 Deployment Manager 和 MCSERVER 机器上安装远程服务应用程序。

过程

  1. 打开浏览器窗口并转至集成解决方案控制台(网址为 https://dm.example.org:port/ibm/console,其中 dm.example.org 是托管 Deployment Manager 的服务器的主机名,port 是管理控制台安全端口)。
  2. 使用您在创建 Deployment Manager 概要文件时创建的用户名和密码登录。
  3. 展开服务器 > 服务器类型
  4. 单击 WebSphere Application Server。将列示具有相关联的节点和集群的成员。
  5. 通过单击服务器名称(例如,RPEWS1)来打开成员 1 的服务器属性。
  6. 在“服务器基础结构”部分中,展开 Java 和进程管理
  7. 单击进程定义
  8. 其他属性部分中,单击 Java 虚拟机
  9. 单击新建,以添加每个编码标志:
    1. 托管单个 MC 实例的远程服务节点 (MCSERVER) 上的设置:
      • com.ibm.rational.rpe.remote.filestore=\\storage\rpe\files
    2. 使用单一 MC 实例的远程服务节点 (MCCLIENT) 上的设置:
      • com.ibm.rational.rpe.remote.filestore=\\storage\rpe\files
      • com.ibm.rational.rpews.url=http://<mcserver IP address>:<port>/rpews/monitor
      • -Dcom.ibm.rational.rpews.usr=user
      • -Dcom.ibm.rational.rpews.pwd=password
      • com.ibm.rational.rpe.remote.debug=true
      • com.ibm.ws.classloader.encodeResourceURLs=false
      注: 在所有节点(节点 1、节点 2 和节点 3)中定义这些标志。所有文档生成节点和 MCSERVER 必须使用同一文件存储位置。运行 WebSphere Application Server 的用户帐户必须对此文件存储位置具有访问权限。
  10. 单击确定
  11. 重新启动远程服务应用程序。

示例

注: 如果在同一 WebSphere Application Server 实例中创建的节点正在共享同一 derby 数据库,请在每个节点中设置以下 Java 运行时环境标志,以便各个节点创建不同的数据库实例。如果未在 WebSphere Application Server 中定义这些标志,那么访问远程服务监视和控制 URL 时,有可能遇到 500 错误。

some node A: com.ibm.rational.rpe.monitor.dbconnectionurl=jdbc:derby:rpe_monitor1;create=true

some other node: com.ibm.rational.rpe.monitor.dbconnectionurl=jdbc:derby:rpe_monitor2;create=true

8:配置 IBM HTTP Server

开始之前

确保 ihs.example.orghost 上安装了 IBM HTTP Server。并确保 ihs.example.orghost 上安装了带有 Node Agent 的 64 位 IBM WebSphere Application Server Network Deployment V8.0.0.5 并且已将节点联合至 Deployment Manager。
  • 完成用于安装 WebSphere Application Server Network Deployment 的 4.1 节。
  • 完成用于创建概要文件的 4.1.2 节。
  • 完成用于将节点联合至 Deployment Manager 的 4.1.4 节。

过程

  1. 打开浏览器窗口并转至集成解决方案控制台(网址为 https://dm.example.org:port/ibm/console,其中 dm.example.org 是托管 Deployment Manager 的服务器的主机名,port 是管理控制台安全端口)。
  2. 使用您在创建 Deployment Manager 概要文件时创建的用户名和密码登录。
  3. 单击服务器 > 服务器类型 > Web 服务器
  4. 单击新建
  5. 输入服务器名称(例如,webserver1)。
  6. 选择已从 ihs.example.orghost 联合的节点,并选择 IBM HTTP Server 作为类型。
  7. 单击下一步
  8. 选择 Web 服务器模板 IHS。单击下一步
  9. 指向相应的 IHS 和插件安装位置路径。单击下一步
  10. 确认新的 Web 服务器。
  11. 单击完成

9:配置 IHS WebSphere 插件

开始之前

确保配置了 IBM HTTP Server。

过程

  1. 在命令行实用程序中,浏览至 WebSphere 插件 bin 目录。示例:C:\IBM\WebSphere\Plugins\bin
  2. 运行以下命令:ConfigureIHSPlugin.bat -plugin.home <pluginInstallRoot> -plugin.config.xml <PluginConfigFile> -ihs.conf <httpdConfFile>

    示例:ConfigureIHSPlugin.bat -plugin.home C:\IBM\WebSphere\Plugins -plugin.config.xml C:\IBM\WebSphere\Plugins\config\webserver1\plugin-cfg.xml -ihs.conf C:\IBM\HTTPServer\conf\httpd.conf

  3. 在该命令成功完成之后,请使用 IHS 来访问 WebSphere Application Server 缺省应用程序,并通过查看调查页面(网址为 https://<ihs host IP address> /snoop)来测试所添加的成员节点。

示例

无论用户何时部署或修改 installedApps,您都必须通过管理控制台重新生成该插件,这将修改 plugin-cfg.xml
  1. 登录 https://dm.example.org:port/ibm/console
  2. 单击服务器 > 服务器类型 > Web 服务器
  3. 选择 Web 服务器并单击生成插件

有时(甚至在重新生成之后),不会在插件位置更新 plugin-cfg.xml 文件。如果未更新 plugin-cfg.xml 文件,请手动将 plugin-cfg.xml 文件从生成位置复制到 WebSphere Application Server 插件目录位置。

dm.example.org 中的 Deployment Manager 位置

<WAS_HOME>\profiles\Dmgr01\config\cells\<DMGR_NODE>\nodes\<IHS_Node>\servers\<Web server name>

ihs.example.org 中的 WebSphere Application Server Web 服务器位置

<WAS_HOME>\plugins\config\<webserver>

示例:

plugin-cfg.xml 文件从 C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\Dmgr01\config\cells\cldegddeCell01\nodes\cldegddmNode01\servers\webserver1 目录复制到 C:\IBM\WebSphere\Plugins\config\webserver1 目录。

确保生成的 plugin-cfg.xml 文件包含诸如 UriGroupVirtualHostGroup NameServer Name 之类的项。如果缺少任何项,请手动复制它们并粘贴到该文件中。

plugin-cfg.xml 示例:远程服务的 URI 组:

<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/rpews/*"/>

<PrimaryServers>
	<Server Name="cldegddeNode02_RPEWS1"/>
	<Server Name="cldegddfNode02_RPEWS2"/>
	<Server Name="cldegddfNode03_RPEWS3"/>
</PrimaryServers>

10:测试负载均衡

开始之前

  1. 确保所有节点的远程服务应用程序已成功启动并正在运行。
  2. 确保 MCSERVER 已启动并正在运行。
  3. 用于存储输出文件的共享位置由正在运行 MCSERVER 的用户以及所有正在运行 WebSphere Application Server 实例的节点共享。
  4. 准备一些 Rational Publishing Engine 客户机。例如:14 个 .dsx 文件。每个客户机都指向 IHS URL。示例:http://<ihs machine IP address>/rpews/docgen

过程

使用批处理文件同时启动所有 Rational Publishing Engine 客户机。

结果

可以看到现在正在对请求进行负载均衡。当 14 个请求到达服务器时,7 个请求将启动文档生成,而其余的请求位于队列中。在此测试中,所有节点(节点 1、节点 2 和节点 3)已启动并正在运行。

11:对集群拓扑的问题进行故障诊断

如果您遇到 SRVE0255E,请使用以下步骤来解决该问题。

关于此任务

SRVE0255E: A WebGroup/Virtual Host to handle /rpews has not been defined.

错误 SRVE0255E 表明尚未定义用于处理 /{ApplicationContext}/admin 的 Web 组/虚拟主机。未在虚拟主机列表中注册 WC_defaulthost_secure 服务器的端口号时,将发生此错误。

过程

要对此问题进行故障诊断,请完成以下步骤:

  1. 在管理控制台中,单击环境 > 虚拟主机
  2. 单击缺省主机。在“其他属性”部分中,单击主机别名
  3. 单击新建。将 WC_defaulthost_secure 服务器的主机名和端口号添加到列表。单击确定
  4. 单击直接保存至主配置,然后重新启动 WebSphere Application Server 节点。

结果

现在已完成负载均衡配置。

下一步做什么

配置 http://server:port/rpews/ 页面上列出的远程服务。请参阅 远程服务 URL,以获取每个 URL 的用法说明以及用于配置每项功能的任务。

反馈