使用 TSAM 扩展来部署 J2EE 应用程序

安全地向云中部署三层式的企业应用程序

IBM® Tivoli® Service Automation Manager (TSAM) 7.2.2 引入了扩展的概念,TSAM 扩展是一组 TSAM 软件组件,可实现新的 IT 服务自动化解决方案(称为服务定义)或向现有的服务定义添加功能。在本文中,作者将定义一个场景,希望在其中安全地向云部署一个三层式企业应用程序(在本例中为 J2EE)。本文将演示如何设置和配置 TSAM 中的扩展,将这些作为完成上述任务的第一步。

Michele Crudele, 软件架构师, IBM

Michele Crudele 在罗马的 IBM 软件部 Tivoli 实验室担任软件架构师。他拥有 20 年的 IT 从业经验,主要从事系统管理产品和解决方案的开发工作。Michele 曾从事过不同类别的工作,拥有广泛的技术经验,比如变更配置管理、监视和可用性管理、IBM 自主计算技术及出版行业的数字资产管理。Michele 目前致力于云计算解决方案的开发,是 TSAM 扩展的首席架构师。



Fabio Cerri, 软件设计师, IBM

Fabio Cerri 在罗马的 IBM 软件部 Tivoli 实验室担任软件设计师。他拥有 12 年的 IT 从业经验,主要从事系统管理产品和解决方案的开发工作。Fabio 曾从事过不同类别的工作,拥有广泛的技术经验,比如变更/配置管理、软件许可管理和云计算解决方案,目前是 TSAM 网络和存储扩展的首席设计师。



2012 年 3 月 12 日

Tivoli Service Automation Manager (TSAM) 7.2.2 引入了扩展的概念,TSAM 扩展是一组向 TSAM 平台添加更多功能的 TSAM 软件组件。该扩展通常(但不限于):

  • 能够实现一个新的 IT 服务自动化解决方案,这在 TSAM 中称为服务定义;例如,一个向大学学生提供主目录的存储即服务解决方案。
  • 能够向现有的服务定义添加功能;例如,以服务解决方案的形式开箱即用地扩展 TSAM,使它能够将引导磁盘以外的其他磁盘附加到虚拟机中。

TSAM 扩展是 IBM 或客户服务团队在 TSAM 开发周期以外的时间内开发和发布的。IBM 开发的 TSAM 扩展在集成服务管理库 (Integrated Service Management Library) 中向 TSAM 客户免费发布;它们附带了安装和配置文档,以及一个符合 IBM 标准的用户指南。IBM Tivoli Service Automation Manager 信息中心是 IBM 发布的在线文档的访问地点。(参阅 参考资料。)

其中,IBM 发布了以下两个扩展,这些扩展允许管理网络设备的配置,向使用 TSAM 创建的虚拟服务器项目添加安全性、可伸缩性和冗余:

  • IBM Tivoli Service Automation Manager 7.2.2 Juniper SRX Firewall 扩展
  • IBM Tivoli Service Automation Manager 7.2.2 F5 BIG-IP Load Balancer 扩展

Juniper SRX Firewall 扩展可以将使 TSAM 项目配备的虚拟服务器自动限制在 Juniper SRX 企业防火墙使用一组默认规则保护的 “VLAN/子网” 中。通过在项目生命周期中使用 Modify Firewall Rules 扩展所提供的一项服务,云管理员可以进一步细化防火墙规则。

在扩展的初始设置期间,可以以客户需求为基础来自定义默认规则(参见图 1)。

图 1. 防火墙和负载均衡器扩展
防火墙和负载均衡器扩展

F5 BIG-IP Load Balancer 扩展支持在一个 TSAM 项目所配备的虚拟服务器背后放置一个 “虚拟负载均衡器”,以增强在服务器上安装的应用程序的可伸缩性和冗余。用户可以创建一个负载均衡器策略,在 TSAM 项目的 “VLAN/子网” 中的某个公共虚拟 IP 地址 (VIP) 上公布它。

负载均衡器策略通过连接到应用程序的 VIP:Port 来识别,也可由运行应用程序的 TSAM 项目的虚拟服务器集群来表示(参见图 1)。

这些特性使企业客户能够以一种快速、可再现、安全、可扩展、冗余的方式,向其分支办公室、业务合作伙伴和客户部署分层式业务应用程序(比如 J2EE 应用程序)。

本文将介绍如何利用针对防火墙和负载均衡器的 TSAM 扩展的现有功能,配备一个三层式 J2EE 应用程序,该应用程序将分析一个典型用例。TSAM 不一定会提供工具来定制一个自定义解决方案,从而处理客户的需求。本文会重点介绍现有的功能,演示客户如何快速使用 TSAM 平台设置私有云解决方案。

场景

客户 ABC 是一家运行着一个基于 TSAM 7.2.2、Juniper SRX Firewall 和 BIG-IP F5 Load Balancer 扩展的私有(内部)云解决方案的企业。ABC 通过 TSAM 平台向分支办公室、业务合作伙伴和客户提供服务。具体来讲,ABC 主要依靠该平台的现有功能来配备客户可通过 http/https 标准协议访问的 Web 应用程序。

ABC 使用的一个典型的 Web 应用程序是一个三层式 J2EE 应用程序,它有一个 HTTP 服务器、应用服务器和数据库服务器。在传统部署中,这些服务器在逻辑上由路由器和防火墙彼此隔离,限制了网络连接和对服务器的访问。数据库服务器通常从一个安全的存储区域访问它的数据(参见图 2)。

图 2. 典型的 J2EE 应用程序部署
典型的 J2EE 应用程序部署

如果没有下载防火墙和负载均衡器扩展,那么 ABC 必须设置自己的进程来隔离不同网段上的服务器,以便均衡针对通常部署为一个集群的应用服务器的请求。但是 ABC 是一个非常聪明的客户,因为它已经拥有 BIG-IP F5 和 Juniper SRX 网络设备,所以它决定设置这些 TSAM 扩展,以标准化其 Web 应用程序的布局(如图 3 所示)。

图 3. J2EE 应用程序部署的标准化模型
J2EE 应用程序部署的标准化模型

在标准化的模型中:

  • 所有服务器都配置为一个 TSAM 虚拟服务器项目的一部分,基于不同的虚拟映像,比如应用服务器和数据库服务器。
  • 数据库服务器在内部 “VLAN/子网” 上配置,它在 ABC 网络上是惟一的,因为它不可路由也没有防火墙保护。它还在 “存储 VLAN/子网” 中配置了一个 vNIC 来访问数据磁盘。
  • 应用服务器在一个 “VLAN/子网” 上被配置,并在创建托管 Web 应用程序的 TSAM 项目 - “VLAN/子网” 时会自动保留。当创建 TSAM 项目时,会在 “VLAN/子网” 项目上保留 Web 应用程序的 VIP,还会将默认防火墙规则设置为将该 VIP 与其他网段隔开。仅允许采用来自 DMZ 的 HTTP 流量。每项操作都由针对防火墙和负载均衡器的 TSAM 扩展自动完成。
  • 应用程序服务器也在数据库服务器所在的内部 “VLAN/子网” 上配置了一个 vNIC。
  • 最后,请注意,无需部署负载均衡软件设备:可以使用 BIG-IP F5 来代替它,它会在配置 TSAM 项目期间自动配置。

任何时候,由于开发和质量保证活动,ABC 必须向其客户部署新应用程序 XYZ,QA 团队都会准备数据库和应用服务器的虚拟映像(通过从物理服务器捕获虚拟映像),并向 TSAM 注册它们(此活动的详细信息将在本文后面介绍):XYZ 数据库服务器、XYZ 应用服务器。

备注:可以使用同一个 TSAM 实例,利用多租户功能设置一个虚拟开发和 QA 环境。ABC 可以创建一个租户(在 TSAM 术语中称为客户)来托管内部开发和测试项目。Juniper SRX Firewall 的 TSAM 扩展会在防火墙上自动创建一个安全区域,以便将所有开发项目与外部世界、生产项目和面向 Internet 的项目隔离。使用这一设置,QA 团队可以只需向(我们所谓的)生产租户提供虚拟映像即可。从那时起,XYZ 数据库服务器和 XYZ 应用服务器虚拟映像就可以供下一步使用了。

正确设置了虚拟映像后,就可以通过 TSAM 标准服务产品来请求 Web 应用程序 XYZ,如下所示:

  • 请求一个名为 “XYZ 应用程序” 的虚拟服务器项目,并基于虚拟映像(例如 Linux® Red Hat、DB2®、XYZ 数据库实例预配置软件栈)来添加数据库服务器。
  • 请求履行任务后(保留项目“ VLAN/子网” 并在防火墙上正确配置,配备了数据库服务器),基于 XYZ 应用服务器映像向 XYZ 应用程序项目添加一个或多个虚拟服务器。
  • 最后,请求履行任务(配置了应用服务器)后,通过创建与配置的 XYZ 应用服务器关联的负载均衡器策略,VIP:Port 向 Web 公开 XYZ 应用程序。

这就是本文的剩余部分将要详细介绍的内容。首先,让我们谈谈网络、安全性、可伸缩性和冗余设计。

网络设计

我们提出的网络设计是一种部署多层应用程序的常见模式;该模式的目标是在实现各层的不同组件之间保持良好的隔离水平,实现使用自己具体的网络连接配置每个组件的能力。

企业网络划分为 5 个主要区域,它们托管不同的服务,实现不同的连接和安全需求。由于路由器和防火墙配置限制,它们不是设计用于彼此通信的。网络区域表示 5 种不同的总线服务。当客户需要使用来自某个区域的服务时,它必须配置一个 vNIC 来连接该区域总线。

以下是 5 个网络区域的规范:

  • DMZ:这个网络区域将 Internet 与内部企业网络隔离开,它包含到 Internet 的路由。所有能够连接 DMZ 的客户端都能够访问 Internet。
  • 公共网络区域:这个网络区域路由到 DMZ,然后路由到 Internet。与 DMZ 之间的主要区别在于,这个网络区域包含供 TSAM 项目用于以专用防火墙的方式控制它们的 Internet 访问的 VLAN/子网。这种设计假设要为每个 TSAM 项目设计一个专用 VLAN/子网。
  • 私有网络区域:这个网络区域不能路由到 DMZ;它授予访问关键和敏感数据的权限。该设计假设要为所有访问私有区域的客户配置单个 VLAN/子网。结果是,由 TSAM 配置并且需要通过私有总线访问的虚拟服务器在这个子网中会有一个 vNIC,即使它们属于不同的项目。
  • 存储网络区域:这个网络区域不能路由到 DMZ;它授予对存储服务的访问权限。常见模式是拥有一个专用的存储网络,因为它允许更好地控制存储资源的访问和使用,还因为存储网络对性能有独特的需求。该设计假设需要为所有访问存储区域的数据库服务器配置单个 VLAN/子网。
  • 管理网络区域:TSAM 需要这个网络区域来访问可管理的实体;虚拟机管理程序、虚拟服务器以及防火墙和负载均衡器设备必须连接到管理网络。这个网络区域不能路由到 DMZ。该设计假设需要两个可路由的 VLAN/子网来构建该网络区域:第一个 VLAN/子网专门用于配置所有静态设备(TSAM 服务器、负载均衡器、防火墙和虚拟机管理程序);第二个 VLAN/子网用于托管所有配置的服务。

包含所需的管理元素之后,在图 3 中看到的标准化部署模型的图像也就完整了。图 4 给出了完整的模型。

图 4. 部署标准化 J2EE 应用程序的 TSAM 解决方案的完整网络设计
部署标准化 J2EE 应用程序的 TSAM 解决方案的完整网络设计

一定要注意,这个现成的解决方案利用了网络资源(子网、VLAN 等)来部署和配置多层应用程序,但没有配备它们。子网和 VLAN 必须在网络基础架构中预先配置,然后代表解决方案向 TSAM 注册。

这不是 TSAM 支持的惟一选项。可进一步扩展 TSAM,插入自定义代码来动态地分配和注册这些资源。这已超出本文的范围。

表 1 总结了不同子网之间的路由。

表 1. 不同子网之间的路由总结
子网公共私有管理存储DMZ (Internet)
公共
私有
管理
存储
DMZ (Internet)

表 2 总结了解决方案的每个组件所需的网络接口(子网上的 IP)。

表 2. 每个组件需要的网络接口
应用服务器数据库服务器TSAM防火墙负载均衡器
公共
私有
管理
存储

最后,图 5 给出了实现所描述的网络设计的物理配置。

图 5. 物理网络布局
物理网络布局

安全设计

解决方案的安全设计主要用于控制和管理托管 Web 应用服务器的子网内部和外部的网络流量。

在网络设计部分,我们确定了 5 个表示 “网络域” 的不同的网络区域,每个区域提供了不同的服务。该设计假设需要拥有彼此不通信的网络区域。一个客户端要访问一个网络区域提供的服务,只能将一个 vNIC 连接到它(一个子网中的 IP 表示一个区域,如表 2 中所示)。

这一安全需求可通过不同的方式来实现:

  • 将网络基础架构的路由器配置为无法在各个区域之间路由。
  • 使用防火墙在可路由的区域之间实现隔离。

取决于实际的网络设计,这两个选项的某种组合将是最佳的选择。我们使用了防火墙来在网络区域之间实现隔离。

定义安全区之后,解决方案的安全需求就可以转换为 5 个不同安全区中的 5 个网络区域,如图 6 所示。该图演示了安全区与网络区域之间的对应关系,重点展示了如何定义规则来控制两个区之间的流量。

图 6. 5 个安全区
5 个安全区

安全区定义流量在数据流到达另一个网络范围时受到策略限制的边界。更具体来讲,安全区是一个或多个需要通过策略来控制入站和出站流量的网段的集合。安全区始终是成对工作的,因为控制是在从一个区流向另一个区的流量基础上建立的。

为了简化解决方案,我们假设 DMZ 与公共网络区域之间的边界对实现良好的安全保护至关重要。它还关系到是否允许我们轻松而又频繁地更改这两个区之间的流量规则配置,从而满足不同 Web 应用程序的需求。

但是,我们还假设,所有其他区都可以使用一组预定义的流量规则静态地进行配置,我们只在极少的情形下更改这些规则,换句话说,会在最合理的情况下同时使用两种方法。此方法允许我们仅在公共网络区域与 DMZ 组成的两个安全区中接受 TSAM 防火墙扩展的控制。

您也可以让其他这样的两个安全区接受 TSAM 防火墙的控制,从而克服这种简单性。这些区的配置采用的步骤与简化的情形所描述的步骤相同。

可伸缩性和冗余设计

多层应用程序的一种常见用途是实现 Internet 服务。可伸缩性和冗余是推广 Internet 服务的应用程序的关键要求,用户会采用一些常见的不同设计模式来实现它们。

在设计可伸缩性和冗余时涉及到多层解决方案中的不同组件,最重要的两个组件是持久性层(主要是数据库)和业务逻辑层(主要在一个应用服务器上运行)。

我们将重点介绍业务逻辑层,执行它通常很耗资源,并且这是性能要求很高的操作。

再次声明,我们采用的是在真实场景中广泛使用的一种常见模式:负载均衡器前端接受来自应用程序的传入请求,将这些请求转发给业务逻辑层。然后由业务逻辑层通过更多节点来实现这些请求,每个节点都是一个运行相同软件栈的虚拟服务器(包括应用服务器和具体的应用软件)。

在 Internet 用户访问指向负载均衡器所公开的公共 IP (VIP) 的应用程序的公开 URL 时,负载均衡器本身可将请求分散在多个虚拟服务器上。

负载均衡器的 TSAM 扩展支持设计和实现一个可扩展且冗余的多层式应用程序,自动化部署应用程序的负载均衡器层的任务;并会从 TSAM UI 创建一个负载均衡器策略来完成此项任务。

影响这些需求的关键参数包括:

  • 向策略注册的主机列表。这是负载均衡器用于分散请求的虚拟服务器列表。这个列表可通过添加和/或删除条目来动态更改,而无需停止应用程序。
  • 一个用于实现负载均衡的算法,比如 round-robin、workload 等。
  • 建立的连接的持久性。连接到虚拟服务器后,通信将在此通道上继续进行。
  • 监视组件以进行故障检测。

设置

现在,我们将介绍配置 TSAM 平台和网络扩展来实现设计解决方案的一次性步骤。我们主要介绍扩展的配置,您可以访问 TSAM 文档,了解有关基本配置的更多详细信息。

假设 F5 负载均衡器和 Juniper SRX 防火墙的的网络扩展和自动化包已安装在 TSAM 7.2.2 上,下方总结了配置步骤所需的顺序和操作:

  1. 创建 DCM 文件(数据中心模型),包括用于配置所配备服务器的连接的网络资源(子网和 VLAN)。
  2. 将网络资源导入 TSAM。
  3. 创建 DCM 文件来注册要由 TSAM 管理的防火墙和负载均衡器设备。
  4. 将网络设备导入 TSAM。
  5. 创建 TSAM 网络模板,描述设计的网络和所有涉及到的资源。
  6. 将网络模板导入 TSAM。
  7. 配置应用服务器和数据库服务器的映像的网络连接。

数据中心模型 (DCM) 是一个 Tivoli Provisioning Manager 组件,TSAM 将它用作维护资源的数据模型。数据可通过描述资源的 XML 文件的形式导入 DCM。让我们更深入地观察一下 DCM 文件。

网络资源 DCM 文件

此文件包含组成前面介绍的 5 个网络区域的 VLAN/子网池。不管什么时候创建一个新 TSAM 项目来托管业务应用程序,都会从公共 VLAN/子网池保留一个 VLAN/子网。任何时候向一个新应用服务器请求该项目,都会保留来自该项目的 VLAN 的一个 IP 地址。

私有 VLAN/子网也是如此:不管什么时候向一个新数据库服务器请求一个项目,都会保留一个来自私有 VLAN/子网的一个 IP 地址。

防火墙和负载均衡器以外的网络设备必须提前配置 VLAN/子网,但这些不是本文的 TSAM 扩展主题内容。

DCM 网络资源文件不包含 5 个区域的定义,它只是组成它们的 VLAN/子网的一个列表。DCM 允许您描述网络设计的构建块,而网络结构是在网络模板中进行描述的。

本文的 下载部分 中的 NetworkResources.zip 中的文件包含与此主题相关的信息:

  • ManagementSubnetworks.xml 文件描述会管理子网。默认路由用于允许将流量路由到基础管理网络。
  • 在不同的分支中,每个项目都有一个公共子网;DCM 文件将包含配备计划项目所需的所有资源。这已在名为 PublicSubnetworks.xml 的文件中描述。
  • 私有和存储子网在名为 BaseSubnetworks.xml 的文件中定义。

假设所有网络资源都已在 DCM 文件中描述,因此必须将它们从 TSAM UI 导入 DCM,如下所示:

  1. 以管理员身份登录到 TPAE UI。
  2. 访问 Cloud Network Administration 应用程序(路径为 Go To > Service Automation > Configuration)。
  3. 选择 Import DCM Network Objects 并导入描述 VLAN/子网的 DCM 文件。

网络设备 DCM 文件

负载均衡器和防火墙由 TSAM 扩展利用导入系统中的自动化包(F5 BIG-IP 和 Juniper SRX)所实现的 API 来管理。要支持使用这些 API,必须在 DCM 中定义防火墙和负载均衡器设备,必须链接到特定的 API 集。再次声明,NetworkResources.zip 包含本节中提到的所有文件:

  • DCM_F5_BIGIP.xml 文件包含解决方案中使用的负载均衡器的定义:该设备被声明为用于实现 CLF5BIGIPLoadBalancer 模型,从而将它链接到以前导入的一组 API。请注意,该文件包含负载均衡器设备的两个定义,因为存在可选的高可用性配置,该配置在 F5 BIG-IP 自动化包内部处理。
  • DCM_Juniper_SRX.xml 文件包含解决方案中使用的防火墙的定义:该设备被声明为用于实现 CLJuniperSRXFirewall 模型,从而将它链接到以前导入的一组 API。

要导入设备,必须按照与注册网络资源相同的步骤来执行配置:

  1. 以管理员身份登录到 TPAE UI。
  2. 访问 Cloud Network Administration 应用程序(Go To > Service Automation > Configuration)。
  3. 选择 Import DCM Network Objects 并导入描述网络设备的 DCM 文件。

网络模板

设计解决方案应该满足企业网络的需求。它不会将 TSAM 的内置特性视为多租户,多租户主要应用于服务提供商的场景(多客户环境)。以此假设为基础,我们可以考虑采用单个客户,比如在 TSAM 中配置的名为 PMRDPCUST 的默认客户;网络模板会将所设计的企业网络描述为与默认客户关联的网络。

网络模板以 TSAM 平台和扩展能够采用的方式描述所设计网络的结构。它将 DCM 文件中定义的资源结合在一起,强调为支持 TSAM 场景而建立的关系和协作。NetworkConfiguration.xml 文件为所设计的解决方案提供了一种示例网络配置。

图 7 给出了网络模板的分层结构(或网络配置);该图仅给出了与解决方案的网络设计相关的元素。

图 7. 网络模板的分层结构(或网络配置)
网络模板的分层结构(或网络配置)

网络配置由一组网段和一组 ANY 节(通用的 XML 条目)组成。网段包含虚拟服务器的单个网络接口的所有网络相关配置。它描述网络中具有共同需求的部分,比如相同防火墙和复杂均衡器所执行的安全措施和均衡。

所设计解决方案的网络模板将有 4 个网段,它们描述了不同的网络区域:管理网络、公共网络、存储和私有网络。

ANY 节包含与防火墙和负载均衡器设备相关的,特定于扩展的数据。可在网络配置中定义更多负载均衡器和防火墙类型的设备,用于表示一种复杂的网络部署。另外,每个网段可由一个防火墙和一个负载均衡器来管理;模板的网关元素用于表示这些设备。

一个网段中定义的子网元素列表表示组成该网段所实现的网络区域的子网池(例如,将与所配备的 TSAM 项目有关联的公共子网)。

最后,网段中的 Firewall 一节描述了托管防火墙的配置,该防火墙用于控制属于该网段的子网上的网络流量:

  • Interface 表示连接到所配备项目的 VLAN/子网的设备接口。
  • Security policy 表示所配备项目的 VLAN/子网的流量规则配置。

图 8 是从 NetworkConfiguration.xml 文件中摘录的一部分,描述了公共区与 “不受信任的” (DMZ) 区之间的默认防火墙规则,无论是入站还是出站流量:具体的配置仅允许端口 80 和端口 443(分别对应 http、https)上的流量。

图 8. 公共区与 DMZ 区之间的默认防火墙规则定义
公共区与 DMZ 区之间的默认防火墙规则定义

要导入网络模板,请执行以下操作:

  1. 以管理员身份登录到 TPAE UI。
  2. 访问 Cloud Network Administration 应用程序(Go To > Service Automation > Configuration)。
  3. 选择 Import Network Template xml 并导入描述网络模板的 XML 文件。
  4. 选择导入的模板,将属性 Status of this Network Configuration 的状态更改为 ACTIVE

导入网络模板后,您必须创建该模板的一个实例来表示企业网络。这可以通过将该模板分配给默认客户 PMRDPCUST 来完成,如下所示:

  • 必须启用 PMRDPCUST 才能开始使用 TSAM,然后以云管理员身份登录到 TSAM 自助服务 UI。
  • 选择 Create Customer 操作来启用默认客户。
  • 分配导入的网络模板作为客户的网络配置。
  • 提交请求。

配备

本节将详细介绍配备 XYZ Web 应用程序的步骤,任何时候 ABC 客户向其客户端提供这个新 Web 应用程序,都必须执行这些步骤。

步骤 1:配置网络连接的虚拟映像

要提供一个新的标准化 Web 应用程序,需要做的第一件事是向 TSAM 注册虚拟映像,这在 场景 一节中已介绍过。该操作可通过使用 TSAM 的 Register Image 服务产品来完成。因为注册虚拟映像的最关键的方面是正确设置网络接口,所以这一节将重点介绍具体的过程,读者可查阅 TSAM 文档,以了解整体任务。

云管理员注册虚拟映像的目的是,定义必须在依据网络设计从虚拟映像配备的虚拟服务器上配置的 vNIC 的数量和类型(参见 图 4)。然后,虚拟服务器的请求者的工作是恰当选择必须配置 vNIC 的网段,然后对所定义的每个 vNIC 进行配置。

TSAM 帮助云管理员简化云请求者的工作,对网段进行分类,并在注册虚拟映像时将一类网段与 vNIC 相关联。然后将云请求者引导至正确网段的选项,降低出现错误的几率。

TSAM 定义 4 种类型的网段:管理、存储、客户以及备份与还原。您必须在网络配置文件中使用其中一种类型来分类每个网段。

此外,可使用 TSAM 所称的 usage 来进一步分类网段。usage 是一种过滤器,通常由扩展定义来限定它们以某种方式管理的网段。网段可使用一个或多个 usage 来限定。防火墙扩展和负载均衡器扩展分别定义了 firewall_extensionloadbalancer_extension usage。

表 3 描述了为在本文中提出的网络模型中定义的网段指定的类型和 usage。

表 3. 为网段指定的类型和 usage
名称类型usage
Public-network客户firewall_extension
loadbalancer_extension
Private-network客户
Management-network管理
Storage-network存储

请注意,只有 Public-network 网段由扩展管理:防火墙扩展配置与 DMZ 相关的规则,负载均衡器扩展从网段保留 VIP。Private-network(数据库服务器位于其中)不由扩展管理。

最后,表 4 描述了云管理员应该如何配置虚拟映像来与网络设计相匹配。

表 4. 配置虚拟映像来与网络设计相匹配。
类型usage应用服务器映像上的 vNIC数据库服务器映像上的 vNIC
客户firewall_extension
loadbalancer_extension
客户
管理
存储

以应用服务器映像为例,这样一个虚拟服务器的请求者必须配置 3 个 vNIC:一个是 “管理” 类型,另外两个是 “客户” 类型。

因为 TSAM 可能仅表示与 vNIC 的关联类型和 usage 相匹配的网段,所以请求者必须为第一个网络接口选择 Management-network 网段,为第二个选择 Public-network 网段,最后它可为最后一个接口选择 Public-network 和 Private-network。提供这两个选择是因为,最后一个 vNIC 标记为 “客户” 类型,而且两个网段都匹配该类型。所以,对于最后一个接口,请求者必须选择 Private-network 来启用与数据库服务器的连接。

步骤 2:创建配备数据库服务器的 TSAM 项目

此任务的目标是创建一个 TSAM 项目来托管 Web 应用程序,配置防火墙来管理 Web 应用程序的网络流量,以及配备数据库服务器。要完成这些任务,请执行以下步骤:

  • 以管理员身份登录到自助服务 UI(云或客户/租户管理员)。
  • 选择 Create project with VMware servers 选项(可以选择 TSAM 支持的所有类型的服务器)。
  • 在 Project Details 窗格中,提供项目的名称(例如 Reimbursement expenses)、访问项目的群体,以及表示应用程序的项目的生命周期。
  • 在 Requested image 窗格中,指定将用于配备的资源组以及为应用程序的数据库服务器注册的映像。选择配备一台服务器。
  • 在 Server details 窗格中,指定执行数据库的性能需求的服务器资源。
  • Additional software 窗格可能需要提供输入参数,然后才能进入下一个窗格,具体情况取决于在数据库映像上部署和配置中间件的方式。
  • 在 Network configuration 窗格中,解决为数据库服务器指定的网络连接需求。如图 9 所示,3 个不同的 vNIC 绑定到合适的网络区域,用于指定关联的网段。
    图 9. vNIC 绑定到合适的网络区域
    vNIC 绑定到合适的网络区域
  • Network advanced 窗格(图 10)中,指定期望在项目中配备的虚拟服务器的数量:此信息用于选择在公共网络 池中为项目保留的子网大小。
    图 10. 期望将配备的虚拟服务器数量
    期望将配备的虚拟服务器数量
  • 勾选 Enable load balancing 复选框,然后指定保留一个 VIP 创建推广应用程序的负载均衡器策略。
  • 提交请求。

步骤 3:配备应用服务器

此任务的目的是部署必要的应用服务器,以便添加业务逻辑层与数据库进行交互。应用服务器部署到托管数据库的相同项目。

以下是完成此任务的步骤:

  1. 以管理员身份登录到自助服务 UI(云或客户/租户管理员)。
  2. 选择 Add VMware servers 选项。
  3. 选择刚刚创建的项目 (Reimbursement expenses)。
  4. 在 Requested image 窗格中,指定将用于配备的资源组以及为应用程序的应用服务器注册的映像。选择配备支持可预见的服务器请求最初所需的服务器数量(我们配备了 3 个服务器)。
  5. 在 Server details 窗格中,指定支持应用服务器的性能需求的服务器资源。
  6. Additional software 窗格可能需要提供输入参数,然后才能进入下一个窗格,具体情况取决于在数据库映像上部署和配置中间件的方式。
  7. 在 Network configuration 窗格中,解决为应用服务器指定的网络连接需求。如图 11 所示,有 4 个不同的 vNIC 绑定到合适的网络区域,它们用于指定关联的网段。
    图 11. vNIC 绑定到合适的网络区域
    vNIC 绑定到合适的网络区域
  8. 提交请求。

步骤 4:创建负载均衡器策略来推广应用程序

本任务的目标是在保留的虚拟 IP 上创建一个负载均衡器策略,以部署 Web 应用程序的 http 服务器和负载均衡层。要完成此任务,请执行以下步骤:

  1. 以管理员身份登录到自助服务 UI(云或客户/租户管理员)。
  2. 选择 Create Load Balancer Policy 选项(图 12)。
    图 12. 创建负载均衡器策略
    创建负载均衡器策略
  3. 从第一个窗格,选择刚创建的项目 (Reimbursement expenses),然后单击 Next
  4. 在 Main settings窗格中,提供策略的配置信息:
    1. 提供一个有意义的策略名称。
    2. 从保留的 IP 列表(在本例中,仅保留了一个 IP)选择虚拟 IP。
    3. 选择策略的性能参数类,比如服务器类型、连接池和会话持久性。
    4. 最后定义健康监视器参数。
  5. 选择将包含在策略的负载均衡中的虚拟服务器列表。对于每个虚拟服务器,可指定一个与策略所使用端口不同的端口来推广 Web 应用程序。
  6. 提交请求。

您将获得类似图 13 的响应;虚拟服务器列表包含在用于 Web 应用程序负载均衡的策略中。

图 13. 包含在 Web 应用程序负载均衡策略中的虚拟服务器列表
包含在 Web 应用程序负载均衡策略中的虚拟服务器列表

结束语

针对 Juniper SRX Firewall 和 BIG-IP F5 Load Balancer 的 TSAM 扩展使您能够在 TSAM 7.2.2 上部署复杂的拓扑结构,进而实现安全性、可伸缩性和冗余目标。在设计了您的网络布局并标准化了您的业务应用程序的拓扑结构之后,只需几个步骤即可将这些应用程序快速向客户公开。

有一篇类似文章解释了有关如何管理业务应用程序生命周期的以下(以及更多)细节:

  • 随着工作负载增加而添加服务器。
  • 调节负载均衡器的策略。
  • 修改防火墙规则。

下载

描述名字大小
本文的示例文件NetworkResources.zip6KB

参考资料

学习

获得产品和技术

讨论

条评论

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=Cloud computing, Tivoli, Java technology
ArticleID=801521
ArticleTitle=使用 TSAM 扩展来部署 J2EE 应用程序
publish-date=03122012