简介: IBM WebSphere Process Server(以下简称“WPS”)是目前主流的业务流程集成服务器,它从公认的业务集成概念、应用程序服务器技术和最新开放式标准发展而来。 随着 WPS V7 已经越来越多的被应用于企业系统整合之中,对于 WPS V7 集群的使用率也越来越高。 从 WPS V6.1 开始,WPS 管理控制台中提供了创建了集群的快捷方式 - 部署环境(Deployment Environment),用户可以通过创建部署环境的方式来快速搭建集群。这很大程度上节省了时间也方便了使用。但是对于想了解集群配置过程和工作原理的用户,通过创建部署环境很难有深入的理解。
引言
本文以“精典拓扑”为原型,首先介绍了集群拓扑结构的概念,接着分别介绍了 WPS 软件的安装,集群的创建以及功能组件的的配置,同时也提供了数据库表的创建过程。 全文深入浅出的描述了 WPS 集群的搭建,以实例的方式从另一个角度阐述了 WPSV7 集群的结构和工作原理。
1. 集群模型的介绍 - “经典拓扑”(“GOLD TOPOLOGY”)
在讲解如何配置 WPS 集群之前,我们首先要了解一下集群的拓扑结构。
WPS 是建立在 WebSphere Application Server(以下简称 “WAS”)的基本功能之上的企业流程管理和整合的服务器,所以 WPS 集群的基本结构也和 WAS 是一样的,它可以由一台或多台的 WPS 服务器构成,由部署管理器(简称“DMGR”)统一管理每个节点(“Node”)的集群成员。
相对于 WAS,WPS 有更多的功能和组件,所以在集群的拓扑结构上也有更多的要求。
下面我们将介绍一种 WPS 的集群拓扑结构 —— 经典拓扑模型
所谓经典拓扑的模型(如图 1),是指由三个集群来分担不同的 WPS 功能从而共同协作来实现企业流程管理和整合功能。
三个集群分别是:
应用部署集群 (Application Cluster):作为应用程序的部署集群,主要用来部署我们所有的应用以及 SCA 和 BPC 的功能配置。
消息引擎集群 (Messaging Cluster):消息总线服务,该集群只用来作为 WPS 内部消息通信的管理。
支持服务集群 (Support Cluster):用来配置一些支持功能,包括业务流程浏览器(BPC Explore),业务规则管理(Business Rule),业务监控管理(Business Space),通用事件处理器(CEI)等功能。
2. 安装过程的介绍
2.1 数据库的安装
在本文中我们使用 DB2 V9.5 企业版作为 WPS 的数据库,执行 DB2 安装包中的 setup 安装文件,进入下面的欢迎窗口(如图 2)
由于 DB2 安装相对简单,所以在此不过多介绍安装细节。
2.2 软件的安装
打开 WPS V7 的安装介质,执行安装文件 launchpad,进入 WPS 安装页面(如图 3)
浏览到 WebSphere Process Server installation roadmap, 下面有三个选项
在这里我们将安装一个新的 WPS, 并没有已存在的 WAS 安装,所以选择“安装一个新的 WPS 环境”,点击后面的连接 (Click here),进入 WPS V7 的安装开始页面(如图 4)。WPS 的安装有两部分内容 , 首先安装 WAS ND, 然后安装 WPS. 在安装 WAS ND 时候需要定义一个安装路径,该路径也将是 WPS 的安装路径。
说明:本文使用的安装环境上只有一个磁盘,所以安装在 C 盘,但是在实际的应用中用户需要根据不同的系统要求,合理的选择安装路径。
点击“安装 WebSphere Application Server”开始安装,依次完成 WPS 的安装后,软件的安装到这里就已经完成了。如果是分布式环境,重复以上步骤,分别在每台物理机器上安装 WPS 软件。
下面我们将开始介绍集群配置的第一步 概要文件的创建。
2.3 概要文件的创建
所谓概要文件(Profile)是从 WAS V6.0 开始引入的概念,它可以定义独立的运行时环境,同时具有单独的命令文件,配置文件以及日志文件。一个概要文件可以在一个系统中定义多个运行时环境 , 而不需要多次安装软件的二进制文件。
WPS 的概要文件有三种:单独的 Server(stand-along server), deployment manager, managed node
创建 WPS 集群,我们需要首先创建两个概要文件:一个 DMGR 概要文件和一个通用概要文件
通常概要文件的创建可以通过概要管理工具 (PMT) 或命令行来完成,在这里我们通过概要管理工具的图形界面来创建所有的概要文件。
启动概要文件管理工具:
2.3.1 DMGR 概要文件的创建
在启动概要文件管理工具后,进入环境选项页面,选择需要创建的概要文件种类(如图 5),这里我们要创建 DMGR 概要文件,所以展开 WebSphere Process Server 下的选项,选择 Process server deployment manager, 点击“下一步”,进行安装。
2.3.2 通用概要文件的创建
在 PMT 的环境选择页面,选择通常概要文件 Process server custom profile(如图 6), 点击“下一步”(“Next”)。
随后进入概要文件种类的选择(如图 7),有三种概要文件选项:典型概要文件、高级概要文件、部署环境的概要文件。
选择高级概要文件创建的好处是概要文件配置的参数是可修改的,而在典型概要文件 Typical profile creation 的创建中,只能使用默认无法修改。部署环境概要文件,因为在本文中不使用部署环境,所以不选择该项。
选择创建高级概要文件 Advanced profile creation,点击”下一步”(“Next”)
在概要文件名字和目录的选项(如图 8),使用默认名字“Custom01“,定义 Profile 的安装路径 “C\IBM\WebSphere\ProcServer\profiles\Custom01”,点击“下一步”(“Next”)。
在节点和主机名的配置页面(如图 9),节点名称 WPS-Node1,主机名:localhost(因为是在同一台机器上安装,这里输入本机地址),如果是在在分布式环境,需要在多台服务器上安装 Profile,需要输入相应的物理主机名,然后点击”下一步”(“Next”)
进入 DMGR Federate 页面(如图 10),输入正确的 DMGR 配置信息和安全认证信息,点击”下一步”(“Next”),通过 Federate 的功能,对应的节点将会被自动加入 DMGR 中,如果选择晚些时候 Federate 节点,需要在概要文件创建成功后,手动执行“AddNode“的命令把 Node 加到 DMGR 中去。
进入端口 Port 配置页面(如图 11),这里显示所有的默认端口信息。端口必须是唯一的,未被占用过。因为我们是在干净的环境中安装,这里使用默认值。点击“下一步”(“Next”)
进入数据库的配置页面(如图 12),我们使用的是 DB2, Deployment Manager 的数据库类型选择 DB2 Universal,确认 DB2 的安装路径是正确的,点击“下一步”(“Next”)
最后显示概要文件配置信息确认页面(如图 13),点击生成 (Create)
等待一段时间, 概要文件 (Profile) Custom01 被成功创建
同样的步骤创建另一个概要文件 (Profile) Customer 02,到此我们已经完成了集群环境的准备工作,创建一个 DMGR 和两个 Node。
概要文件创建成功后,将会处于自动运行的状态,我们登陆管理控制台 Admin Console(如图 14),如果 DMGR 没有处于运行的状态,需要手动执行启动命令:
登陆管理控制台后,在开始配置 WPS 集群之前,首先检查 Node Agent 的状态是否运行(如图 15)
每一个概要文件都有一个 Node Agent, DMGR 通过 Node Agent 来管理每个节点上的集群成员。配置集群前,每个节点的的 Node Agent 必须是启动的。如果的 Node Agent 没有启动,需要从每台物理机器上手动启动 Node Agent。
2.4 集群的创建
为了构建一个经典拓扑模型的集群,要创建三个 cluster:AppCluster,MECluster,SupportCluster
下面开始创建 AppCluster,登陆管理控制台, 按路径 Servers->Clusters->WebSphere Application Server Clusters,打开集群的创建页面,选择 “New”,在 Cluster Name 输入 AppCluster 点击 “Next”(如图 16),
进入集群成员配置页面(如图 17),集群成员名称:Member name 输入 AppServer1,创建集群成员时指定集群成员 Cluster Member,将会被自动创建在指定的 Node 上选择节点:WPS-Node01(ND 7.0.0.7) 和 选择生成唯一的 HTTP 端口,模版选择使用默认值 defaultProcessServer,点击”下一步”(“Next”)
同样的方法,加入另一个节点 WPS-Node02 的集群成员 AppServer2(如图 18)
点击 ”Next” , 两个节点都已被加入集群(如图 19),确认信息后,点击”Next”
集群的创建就完成了,下面我们介绍数据库表的创建过程。
2.5 数据库及表的创建
2.5.1 数据库的创建
安装 WPS 时候会自动创建一个数据库,一般称为通用数据库 (Common DB), 对于 WPS 的所有组件可以共用这一个数据库,每个组件都有自己的模式名 (Schema), 系统根据不同的模式名去识别不同的组件。对于每个组件,默认的 Schema 的名称列表(如图 22)
但是在实际的生产环境中,为了数据库优化和提高性能,不同的组件也可以使用单独的数据库,推荐的数据库名称命名:
在本文中,除了使用通用数据库以外 , 我们还需要另外创建两个数据库, 分别是业务流程管理器(BPC)数据库:BPEDB,事件管理器(CEI)数据库:EVENT,对于消息引擎(MessageEngine)、我们使用通用数据库(CommonDB)。
2.5.2 表的创建
在配置 WPS 每个组件时候,我们需要确认相应数据库配置信息。通常我们会选择在配置组件时候自动创建表。如果选择不自动创建表的时候,需要通过脚本手动创建他们。脚本的的位置:[WPS 的安装目录 ]\ProcServer\dbscripts
BPC 表的创建:
执行数据库脚本,脚本位于 \ProcServer\dbscripts\ProcessChoreographer\[ DB Type]\,执行前需要修改脚本 , 确认 Schema 和数据库的名称是正确的。
CEI 表的创建:
执行 AddminTask 命令创建 DB,下面以 Windows 执行 wsadmin 命令为例;执行完后,CEI 数据库和表都将都会被创建。
$AdminTask configEventServiceDB2DB {-createDB true -overrideDataSource true -clusterName SupportCluster -jdbcClassPath C:\IBM\SQLLIB\java -dbUser db2admin -dbPassword db2admin -dbHostName localhost -dbPort 50000}
BusinessSpace 表的创建:
通常配置完 BusinessSpace 后,数据库的脚本将会自动生成在 Profile 子目录下,位于 [WPS Installation Root]/Profiles/[ProfileName]/dbscripts/BusinessSpace, 也可以在 WPS 安装根目录找到脚本 位于 \ProcServer\dbscripts\ BusinessSpace\[ DB Type]\, 执行前请确认 Schema 的名称是正确的,依次执行 sql 语句(如图 23)
3. 功能组件的配置
WPS 的功能组件在安装之后都是需要配置的,这些功能是可以独立使用的。所以用户可以根据自己的需要去配置相应的功能。在这里我们将配置通常所使用的主要功能。对于集群环境来说,配置的方法和单机环境在功能配置上基本一致,区别在于经典拓扑环境由 三个集群组成,每个集群承担不同的角色和功能,相互协调工作。因此在每个集群上按照不同的需要配置相应的功能。
3.1 SCA 的配置
按以下路径 WebSphere application server clusters > AppCluster->Configuration->Businese Integration-> Service Component Architecture,, 打开 SCA 配置页面(如图 24)
下面我们进入了 SCA 的配置页面(如图 25),激活配置页面, 选择 Support the Service Component Architecture components
总线成员的位置 (Bus Member Location):选择消息总线,在经典拓扑的结构中是以 MECluster 作为所有组件的消息引擎,这里点击 Remote, 在配置页面中选择 MECluster 作为 SCA 的 Message Engine(如图 26)
成功选择后,MECluster 将会被显示(如图 27),下面我们需要检查数据库的信息是否正确
对于系统总线成员(System Bus Member)和应用总线成员(Application Bus Member)的配置,首先检查系统总线成员和应用总线成员的数据库配置信息,数据库的的信息指的是 SCA 所使用消息引擎的数据库信息,系统默认使用 Common DB(WRPCSDB),如果使用单独的消息引擎数据库(MEDB),需要把数据库的名称改为实际的名称。模式名称 Schema 必须是数据库中唯一的,WPS 将通过不同的模式名称来访问不同的数据。选择 Create Tables,系统会根据这里指定的 Schema 的名称,在数据库中创建相应的表。如果不选择,需要由数据库管理员手工创建 BPC 的表。如何使用脚本请参考 2.5 章节:数据库及表的创建。确认后点击 OK, 开始创建。
首先检查 Application Bus Member 的 Data Source, 点击 SCA Application Bus ME data source, 确认选择了认证别名“SCAAPPME00_Auth_Alias“(如图 31)
到此,SCA 的功能配置已经完成,下面我们开始配置 BPC
3.2 BPC 的配置
我们将使用单独的 BPC 数据库 , 数据库名是 BPEDB, 在开始 BPC 配置之前 , 请确认已经建立了数据库 , 细节请参考 2.5 章节,下面我们开始 BPC Container 和 BPC Explore 的配置
3.2.1 BPC Container 的配置
按以下路径 WebSphere application server clusters > AppCluster->Configuration->Businese Integration-> Business Process Choreographer-> Business Process Choreographer Containers 进入 BPC Container 配置页面(如图 35),可以看到提示信息 (“BPC Container“并没有安装 )
3.2.1 BPC Explore 的配置
按以下路经 , 打开 BPC Explorer 的页面(如图 45),WebSphere application server clusters > SupportCluster->Configuration->Businese Integration-> Business Process Choreographer-> Business Process Choreographer Explorer
3.3 CEI 的配置
按以下路径 , 打开 SupportCluster 下的 CEI 服务器的配置页面 WebSphere application server clusters > SupportCluster->Configuration->Businese Integration-> Common Event Infrastructure -> Common Event Infrastructure Server
打开配置页面后,选择激活 CEI 服务器(如图 49)
对于 CEI 数据库的配置信息,检查是否有效,这里使用单独的数据库 (EVENT), 所以修改为 EVENT 数据库的信息。Create Tables 产生表选项,选择该项。如果没有选择该项,需要通过脚本去手动创建数据库表(请参考 2.5 数据库表的创建)。 对于 BUS 成员,这里我们需要指定 CEI 服务总线成员的位置,选择 Remote - 〉 MECluster(如图 50)
配置完成,点击确认。创建成功后,通过“Test Connection”检查数据源的连接性,检测方法和配置 BPC 和 SCA 功能时所使用方法一样,在此不再重复描述。
完成 CEI 的配置后,我们需要部署 CEI 的服务,打开命令行窗口,运行 wsadmin, 弹出安全认证窗口(如图 51)
3.4 REST 的配置
REST 服务在单机环境 (stand-alone) 中是自动被安装和部署的,在集群的环境中需要手动配置。在 REST 配置中可以根据自己的需要去 enable 或者 disable 每一个服务。在配置之前,需要确认 REST 服务的提供者 (Provider) 是有效的。也就说需要知道这个服务是能够被访问的。REST 服务配置之后,Rest Service Gateway 应用将会被生成,该应用将激活通常的系统 REST 服务。在这里我们使用默认值。
配置 AppCluster 上的 REST 服务,按照以下路径,打开配置页面,WebSphere application server clusters > AppCluster->Configuration->Businese Integration-> REST services,保持默认值,点击确认(如图 55)
配置 SupportCluster 的 REST 服务,按照以下路径,打开配置页面,WebSphere application server clusters >SupportCluster->Configuration->Businese Integration-> REST services,保持默认值,点击确认(如图 56)
3.5 Business Space 的配置
按以下路径,打开 SupportCluster 下的 Business Space Configuration 的配置页面(如图 57),WebSphere application server clusters > SupportCluster->Configuration->Businese Integration-> Business Space Configuration
最后会出现成功安装的提示页面(如图 59), 点击保存 (“Save”),从图上也可以看到 BusinessSpace 的数据库脚本的也已经产生,之后需要手动执行这些脚本去生成数据库的表。
3.6 Business Rule 的配置
按以下路径,打开 SupportCluster 下的 Business Rule 的配置页面(如图 62),WebSphere application server clusters > SupportCluster->Configuration->Businese Integration-> Business Rules -> Business Rule Manager Configuration, 选择 安装 Business Rule Manager,点击 OK。
Message Enigne- MECluster
配置完成后,检查 MECluster,能够看到四个 message engine 的 member 已经成功加入,不需要做任何配置。正如之前的描述,我们在配置 SCA、BPC、CEI 都已经指定了 Bus 成员,用的都是 MECluster,所以在 MECluster 中,会有四个成员(如图 63)
安装完成
到此,WPS 集群的配置已经全部完成。下一步可以启动 WPS 集群,按照一定顺序去启动 WPS 集群。
结束语
以上我们较详细的介绍了如何手动配置 WPS V7 集群的过程,通过该篇文章相信读者已经对 WPS 功能组件和集群的配置有了深入的了解。对于这些常用的 WPS 功能,在实际环境中用户可以根据具体的需求,选择性地配置相应的功能。
参考资料
学习
获得产品和技术
讨论
作者简介
郎亚军是 IBM 中国开发中心高级软件工程师,主要从事 WebSphere Process Server 的二线技术支持工作。
高明是 IBM 中国开发中心高级软件工程师,主要从事 WebSphere Process Server 的二线技术支持工作。