如何将云应用程序部署到 IBM Workload Deployer

在 Rational Application Developer 中使用 Workload Deployer

IBM Workload Deployer 设备为应用程序的部署提供了自定义和易于管理的云环境,并带有按需定制的资源配给。Rational Application Developer for WebSphere 8.0 支持 Workload Deployer 功能,提供了开发应用程序以及将其部署到设备的工具。本文演示了新 Workload Deployer 中用来构建和部署简单的端到端云应用程序的常用功能。

Aditya S. Matange, 软件工程师, IBM

作者的照片Aditya Matange 是 IBM Rational 软件部门的一名软件测试工程师。他是 Rational Application Developer for WebSphere 的系统测试员,并为云和 Workload Deployer 技术的重点环节进行测试。他拥有北卡罗来纳州立大学的自然科学学士学位和计算机科学硕士学位。



Morris S. Johnson (morrisj_cnnew1@us.ibm.com), 顾问软件工程师, IBM

作者的照片Morris Johnson 是 IBM Rational 软件部门的一名软件测试工程师。他是 Rational Application Developer for WebSphere 和 Rational Software Architect 产品的顾问测试架构师。他具有多年设计验证模式、验证软件系统和领导测试工作的经验。他拥有汉普顿大学的理学学士学位和北卡罗来纳州立大学的工程硕士学位。



2012 年 8 月 13 日

下载 IBM® Rational® Application Developer 试用版  |  在线试用 IBM® Rational® Application Developer
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

开始之前

概览

IBM® Rational® Application Developer 能够帮助 Java 开发人员快速开发和部署 Java、Java Enterprise Edition (Java EE)、Open Services Gateway initiative (OSGi)、Service Component Architecture (SCA)、门户和 Web 应用程序。它提供了功能强大的工具以支持常用的应用程序服务器,并包含了最新的 IBM® WebSphere® Application Server 开发使用版本。另外,Rational Application Developer 支持使用行业标准数据库如 IBM® DB2® 和源控制系统如 IBM® Rational Team Concert™ 来实现开发。

IBM Workload Deployer 是 WebSphere CloudBurst Appliance 的后继产品,也支持部署虚拟应用程序模式,并增加了性能、负载均衡和扩展策略选项。它使用预定义的中间件模式来简化云环境中的配置。

除了 Rational Application Developer 中特定的 Workload Deployer 工具之外,您还可以定义并开发虚拟应用程序模式的 Web、Java EE 和 OSGI 应用程序组件,并直接从开发环境中管理云应用程序构件的创建、部署和移除。

开发人员能从本文学到什么

本文演示了新 Workload Deployer 中的一个常用功能,用来在 Workload Deployer 上构建、部署和运行简单的端到端云应用程序。您将了解如何创建一个 Workload Deployer 定义,构建和获取云应用程序,将 Java EE 内容关联到应用程序,以及部署到 Workload Deployer。本文将会讲解如何使用 Deployer 配给数据库。

您组织能够在企业应用程序开发中迁移到 Workload Deployer 而获益的主要原因如下:

  • 帮助要在多个专用 WebSphere 和 DB2 服务器上的整个 Workload Deployer 中使用配给 WebSphere Application Server 和 DB2 映像的组织节约成本
  • 当专用服务不可用时,可快速和自助配给资源
  • 访问可重用的应用程序模式以简化构建和部署
  • 映像和虚拟系统的标准化管理和访问

先决条件

在开始本文的示例讲解之前,需要具备以下配置:

  • IBM Rational Application Developer for WebSphere Software,8.0.3 或更高版本,并且工作站安装以下特性:
    • IBM Workload Deployer 开发工具
    • Java EE 和 Web 服务开发工具
    • WebSphere Application Server Version 7.0 开发工具
    • 开发应用程序的工具,无需安装本地服务器
  • IBM Workload Deployer v3.0.0.0 或以上版本,至少定义一个云组

设置工作区

启动 Rational Application Developer,新建一个工作区,并保持 Java EE 视图打开。我们一开始创建一个简单的项目,用于保存云应用程序,并导入一个应用程序样例用于部署。

创建一个新项目:

  1. 启动 New Project 向导(右键单击 Enterprise Explorer 视图并选择 New > Project)。
  2. 选择 General > Project 并点击 Next
  3. 将项目命名为 CloudApplication 并单击 Finish
  4. 可选地启用验证构建程序,因为针对普通项目默认设置为 Off。然后右键单击 CloudApplication 项目,选择 Properties,然后选择这些选项:
    • 选择 Enable project specific setting
    • 选择 Add Validation Builder to project
    • 单击 OK

导入并准备好 Enterprise JavaBean (EJB) 应用程序,从而可以部署到 Workload Deployer:

  1. 下载 SurveyEJBEAR.zip 文件(见本文的 下载 小节)。
  2. 启动 Import 向导(右键单击 Enterprise Explorer 视图,并选择 Import > Import)。
  3. 选择 General > Existing Projects into Workspace 并单击 Next
  4. 选择 Select archive file 的单选按钮,浏览并找到 SurveyEJBEAR.zip 文件。
  5. 选择所有项目,并单击 Finish

请注意:
Workload Deployer 不会自动生成 EJB 部署代码。

  1. 为 EJB 项目生成部署代码(右键单击 Enterprise Explorer 视图中的 SurveyEJB,并选择 Java EE > Prepare for Deployment)。

现在工作区和样例应用程序应该已经进行正确设置。

图 1. 初步设置后的工作区项目
工作区有四个项目

创建新的 Workload Deployer 服务器配置

现在需要为 Workload Deployer 创建一个服务器配置,从而让 Rational Application Developer 能够与 Workload Deployer 通信:

  1. 启动 New Server 向导(右键单击 Servers 视图,并选择 New > Server)。
  2. 选择 Workload Deployer
  3. 在 “Server’s host name” 字段中输入 Workload Deployer 的 IP 地址或主机名,然后单击 Next
图 2.选择 Workload Deployer 并输入 IP 地址
Define a New Server 对话框窗口
  1. 在相应的字段为 Workload Deployer 用户输入用户名和密码。
  2. 选择云组(单击 Select 并从列表中选择一个云组)。
  3. 单击 Finish

请注意:
如果未列出云组,在权限允许的情况下可以在 Workload Deployer 中配置一个,或者联系 Workload Deployer 管理员。

您应该看到 Servers 视图中列出的 Workload Deployer,如图 3 所示。

图 3.Servers 选项卡上的 Workload Deployer
Servers 视图现在列出您的 Workload Deployer

使用仪表板创建一个虚拟应用程序模式

下一步,您将创建一个虚拟应用程序模式。该模式是定义应用程序部署到云时需要什么特定组件以及这些组件中包含哪些内容所必须的。

  1. 通过在 Servers 视图中右键单击新创建的 Workload Deployer 并选择 Launch Dashboard 来启动 Workload Deployer 仪表板。
  2. 浏览器窗口会启动并显示仪表板的登录屏幕。输入 Workload Deployer 用户名和密码,并点击 Login
  3. 从仪表板顶部的工具栏中选择 Patterns 旁的三角形图标(向下箭头)然后选择 Virtual Applications
图 4. 从工具栏选择 Patterns > Virtual Application
在下拉菜单中选择 Virtual Applications
  1. 单击 + [加号] 图标添加一个新模式。
  2. 选择 Blank application 作为类型,并单击 Start Building
图 5. 开始构建一个新虚拟应用程序
选择空白应用程序模式
  1. 添加 Enterprise Application 组件:
    • Enterprise Application – WebSphere Application Server
      1. 从 Application Components 抽屉中,拖出一个 Enterprise Application 组件放入图表中。
图 6. 添加一个 Enterprise Application 组件
已添加到图表区的组件
  1. 添加数据库组件:
    • Database – DB2
      1. 从 Database Components 抽屉中,拖出一个 Database 组件放入图表中。
      2. 在图表中选择 Database 组件,将 Database Name 字段设置为 eclipse
      3. Survey.sql 文件包含在压缩文件中上传到 下载 小节(将文件保存在您的工作站中,单击 Schema File Browse 按钮,从保存位置选择 Survey.sql,然后单击 Open)。
图 7. 添加和配置一个数据库组件
数据库配置信息
  1. 从企业应用程序引用到数据库:
    1. 选择 Enterprise Application 组件,并将出现在组件右侧的点拖到 Database 组件,从而创建一个单向箭头。
    2. 选择新创建的链接,将 Data Source 字段的 JNDI Name 设置成 jdbc/ejbSurvey
图 8. 添加并配置 Enterprise Application > Database 链接
箭头将应用程序链接到数据库
  1. 单击图表的空白区域,将 Name 字段设置为 Survey from RAD
  2. 单击左上角的 Save 保存应用程序模式。

应用程序模式看上去应该和图 9 一样。

图 9. 完成的应用程序模式
显示已完成的应用程序模式
  1. 选择 Virtual Application Builder。

获得云应用程序并关联样例项目

下一步,必须获取在 Workload Deployer 上刚创建的虚拟应用程序模式,作为 Rational Application Developer 的云应用程序。在这之后,您可以将可部署的 EAR 样例项目与其相关联,从而能够从 Rational Application Developer 将整个应用程序部署到 Workload Deployer。

  1. 在 Rational Application Developer 中,转至 Servers 视图,右键单击 Workload Deployer 配置,并选择 Acquire Cloud Applications

Acquire Cloud Application 向导将会启动一个默认查询,以查找所有已进入的应用程序。

  1. 单击 Perform query 运行此查询。
  2. 在云应用程序列表中选择前一步创建的 Survey from RAD 并单击 Next
图 10. 获取应用程序
显示 Acquire Cloud Application 向导

现在您必须选择一个项目来存储云应用程序

  1. 选择在本例开始时创建的 CloudApplication 项目,保持其默认文件名字为 appmodel.json,然后单击 Next
  2. 在 Associations 列表上,单击表中的 Enterprise Application 组件条目,然后单击省略号()按钮。
  3. 在随后的弹出窗口中选择 SurveyEAR,然后单击 OK
图 11. 将样例 EAR 与获得的云应用程序关联
SurveyEAR 已添加到 Project Location 列
  1. 单击 Finish 完成应用程序的获取。

在 Enterprise Explorer 视图中,您应该会在 CloudApplication 项目的 applicationModels 文件夹下拥有一个 appmodel.json 文件。在 Workload Deployer 配置下的 Servers 视图中,您会看到已经添加的 appmodel [CloudApplication]。


发布、启动并运行应用程序

剩下的就是部署并运行应用程序。由于在前一节添加了关联,因此必须首先从 Rational Application Developer 发布应用程序,以更新 Workload Deployer 上的虚拟应用程序模式,然后启动应用程序将它部署到云上。

在 Workload Deployer 配置下的 Servers 视图中,您会看到已添加的 appmodel [CloudApplication]。

  1. 右键单击 Workload Deployer,并选择 Publish 来更新 Workload Deployer 设备上的模式。
  2. 当发布完成后(服务器状态从 [Connected, Republish] 变为 [Connected, Synchronized]),右键单击 appmodel [CloudApplication],然后单击 Start
图 12. 启动应用程序
在 Servers 选项卡的上下文菜单中选择 Start

部署可能要几分钟。部署并启动应用程序后(显示状态为 [Started, Synchronized]),就可以运行应用程序了。要完成这一步,必须通过使用仪表板确定终点 URL。

  1. 启动 Workload Deployer 仪表板(在 Servers 视图中右键单击 Workload Deployer 的配置,并选择 Launch Dashboard)。
  2. 将会启动一个浏览器窗口并显示仪表板。

    请注意:
    如果之前已注销,那么会出现登陆屏幕,您需要输入 Workload Deployer 用户名和密码,并单击 Login
  3. 从仪表板顶部的工具栏中选择 Instances 旁的三角形图标(向下箭头),然后从下拉菜单中选择 Virtual Applications
图 13. 从工具栏选择 Instances > Virtual Application
查看虚拟应用程序实例的菜单
  1. 选择 Survey from RAD
  2. 单击 Role Status 列 WAS 下方的 Endpoint
  3. 单击 Endpoint Information 弹出菜单中的 URL,启动应用程序。
图 14. 通过终点 URL 运行应用程序
显示此示例的终点 URL
  1. 应用程序应该启动,并显示如图 15 所示的屏幕。
图 15. 应用程序登录屏幕
登录到已部署的应用程序
  1. 输入用户 ID clouduser1 和密码 password,然后单击 Logon
  2. 从随后的调查列表中,您可以通过选择相应链接来输入对某个调查的回应。
图 16. 调查列表
显示可用调查列表

在 Rational Application Developer 使用数据库

在数据库实例的配给中部署包含 database 组件的云应用程序。在本例中,Survey.sql 文件包含了与 Survey 虚拟应用程序模式的数据库组件相关联的数据库定义。在配给过程中,执行了数据库定义,从而创建了指定的表和列。在开发云应用程序过程中,您可能需要查看实际配给数据库的内容,从而验证业务逻辑或操作数据库内容。

Rational Application Developer 包含了可用来操作供应数据库的工具。就像企业应用程序的终点公开给包含 WebSphere Application Server 的供应服务器一样,数据库终点也公开给对应的数据库服务器。

在 Workload Deployer 仪表板中

对于正在运行的数据库 VM(虚拟机),选择并复制终点 URL:

  1. 从 Workload Deployer 仪表板的工具栏中选择 Instances 旁的三角形图标(向下箭头),然后选择 Virtual Applications
  2. 在随后出现的屏幕中,选择 Survey from RAD
  3. 在 Role Status 列的 DB2 下方,单击 Endpoint(见图 17)。
  4. 选择 Endpoint Information 弹出视图中的 Appuser URL:复制整个 URL,从 jdbc:db2 开始。该 URL 包含了访问数据库所需的全部信息。
图 17. 定位数据库终点
显示如何找到数据库的终点

在 Rational Application Developer 中

现在,启用并查看 Rational Application Developer 数据库工具:

  1. 切换到 Rational Application Developer 中的 Database Development 视图。
  2. Data Source Explorer 视图中,创建新的数据库连接。
  3. 在连接参数中,选择 DB2 for Linux, UNIX and Windows
  4. 默认驱动程序是 IBM Data Server Driver for JDBC and SQL (JDBC4.0)
    小提示:
    保持此默认驱动程序。它是由 Rational Application Developer 提供。
  5. 断开之前复制的终点 JDBC URL 连接,并在数据库连接向导中输入对应的值。
图 18. 转换终点以定位数据库终点
数据库终点被分解成相关的几个部分

最终的连接信息应该如 Connection Parameter 视图所示(见图 19)。

图 19. Database Connection Parameters 对话窗口
参数使用数据库终点信息

您可以使用数据源浏览器视图(见图 20)来查看活动的数据库连接、具体表和其他数据库属性。

图 20. 数据源浏览器窗口
连接成功后的数据库内容

您还可以查看表目录,并在工具内运行任何支持的 SQL 语句。这些特性可在 Database Development 视图内使用。要获得关于数据库特性的更多辅助信息,请参阅 Rational Application Developer 信息中心的 “开发数据库访问应用程序” 一节(见 参考资料 中的链接)。


致谢

本作者非常感谢 Chris Brealey 和 Robert Taniwa 对本文的评审与反馈。还要感谢 Ken McClamroch,他是 Survey 应用程序最初的设计师和开发者。


下载

描述名字大小
导入和部署的调查应用程序SurveyEJBEAR.zip97KB
数据库定义文件Survey.zip2KB

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=830341
ArticleTitle=如何将云应用程序部署到 IBM Workload Deployer
publish-date=08132012