摘要
BEA WebLogic Platform应用程序供给(PRovisionin)是一个这样的过程:预备提供一个有效的WebLogic Platform环境来支持已部署好的应用程序的后续应用。在前一篇文章中,我们介绍了经过几个阶段将WebLogic Platform 8.1应用程序从开发升级到生产阶段时,我们能从中获得什么。在本文中,研究的重点是使用可用于WebLogic Platform产品的工具来自动化每个阶段的应用程序供给。这将答应您自动创建运行WebLogic应用程序所需的环境。
简介
BEA WebLogic Platform应用程序供给是一个这样的过程:预备提供一个有效的WebLogic Platform环境来支持已部署好的应用程序的后续应用。WebLogic Platform环境通常由三种资源组成:域级别的资源(如JDBC Connection Pool和DataSources)、客户应用程序和生产数据(如安全角色、缓存策略、门户元数据和贸易合作伙伴治理数据等)。在经过几个阶段将WebLogic应用程序从开发阶段升级到生产阶段时,需要在每个阶段适当地供给这些资源。考虑到配置域级别和应用程序级资源的复杂性,应用程序供给不是一个普通的过程,它经常需要大量的手工劳动并且很轻易出错。所以,人们非常期待通过自动化供给过程来提高生产效率和可靠性,同时降低IT成本。
本文首先将讨论自动化应用程序供给过程中面临的挑战。然后对可以在WebLogic Platform中使用的供给工具进行概括。通过对一些常见场景的案例分析,比如从开发阶段升级到生产阶段、快速生产复制、生产数据配置和差量供给,本文将演示如何有效使用这些供给工具来自动化供给过程。
本文提供的示例均摘自一些实际的客户供给场景。文中引用的WebLogic Scripting Tool(WLST)示例脚本和域模板都已经在WebLogic Platform 8.1 Service Pack 4上开发并通过测试。在即将推出的WebLogic Platform版本中,还将支持JSR-88。因此,目前已经配置好的域级别的一些资源将作为应用程序级资源打包。随着应用程序供给的自动化,我们的生活会更轻松一些。
注重,本文并不打算成为一篇关于如何使用供给工具(如Domain Template Builder,或DTB)的教程。通过“参考资料”部分中提供的链接,您可以找到关于这些工具的更多信息。
挑战
要运行WebLogic Platform应用程序,就必须创建一个包括适当WebLogic Platform组件和应用程序级资源的域。图1提供了一个升级过程的例子,在这个过程中,应用程序要经历4个阶段:开发、集成、QA/分级测试和生产。在生产阶段,WebLogic Platform应用程序供给还包括为每个应用程序供给需求设置一个集群子网和代理。
图 1. 从开发阶段升级到生产阶段的应用程序升级过程
在典型的开发阶段,几个开发人员将同时为一个项目工作,每个开发人员从事不同的模块研究。这些开发人员可能拥有作为沙箱的自己的工作域(开发模式、带有本地数据库的单服务器),并且可以使用源代码控制工具来促进团队开发。在开发模式域中,BEA WebLogic Server和BEA WebLogic Workshop将自动供给一些应用程序资源,比如 Entity Bean表、AsyncDispatcher队列和会话状态表。在生产模式域中,必须显式供给这些资源。QA/分级测试环境通常会模拟真实的生产环境,该环境一般由一个或多个集群域以及一些专用的数据库服务器、负载平衡器和商业证书组成。安全性和高可用性在生产阶段很重要,因为它们可能是开发环境中完全缺乏的东西。此外,假如在生产阶段对托管服务器使用不同的IP地址或端口,那么还需要更新应用程序模块,为定制部署重新生成EAR文件。
当经过几个阶段将WebLogic Platform应用程序从开发阶段升级到生产阶段时,自动化这个过程对确保成功实现生产部署很要害。配置自动化所面临的一个主要挑战是识别和捕捉正确的配置需要,支持正确的应用程序部署,并将这一点贯彻到每个阶段,然后进行目标环境所需的任何配置定制。
WebLogic Platform提供了大量系统工具来促进供给自动化,这些工具包括Configuration Wizard、Domain Template Builder和WebLogic Scripting Tool(WLST)等。关于这些工具的完整列表,请参阅WebLogic Platform Deployment Guide。WebLogic Platform还提供了许多帮助客户完成初始的域配置的预定义域模板、一组用来添加定义良好的应用程序的模板,以及维护现有域的一些服务。根据各种供给场景的特点,可以将供给方法分成基于模板的方法和基于WLST的方法。注重,可以有效组合这些方法来应对复杂的供给场景。
基于模板的供给
预定义域和扩展模板包含构建或扩展非凡WebLogic域所需的主要属性和文件。在向域中添加了新的资源和应用程序之后,就可以使用Domain Template Builder来创建定制域模板,稍后可以使用该模板,通过Configuration Wizard创建一个目标域。
基于模板的方法利用Domain Template Builder功能来捕捉当前域的各种配置细节和工件。为了使用基于模板的方法,将从一个运行中的域开始。这个域可以是一个服务器开发域,也可以是一个集群的生产域。此外,应该完全了解现有域,这样才不会在创建模板时错过要害配置信息。在创建模板时,有一个定制域资源设置的机会,但也可以在以后某个阶段实现定制,即在使用已创建的模板实际配置该域的时候。
基于WLST的供给