确认整个部署过程可以通过自动化的脚本调用,基于工作流来实现后,我们可以提出系统资源快速部署的方案架构,如下图:
图1 系统资源快速部署方案架构
其中,工作流引擎和数据模型是我们在系统部署管理工具中涉及的功能模块,通过将具体的软硬件甚至逻辑概念定义在数据模型中,管理工具可以标识并在工作流中调度这些组件资产,实现各类管理功能。工作流引擎是调用和触发工作流,实现部署自动化的核心机制,自动将不同种类的脚本流程整合至一个集中、强健、可重复使用的工作流数据库中。
通常测试中心对业务系统的测试都只是涉及到被测系统软件,对硬件的要求仅限于性能和容量,所以我们在此不对硬件资源部署做详细的描述。同时由于应用系统软件数量庞杂,本文将主要关注于操作系统层面的自动化资源部署。
2.3操作系统管理工具
专用操作系统管理工具
考虑操作系统的自动部署,各个操作系统提供商针对其客户可能存在的大批量操作系统安装配置的需求,分别提供了其操作系统专用的系统资源管理工具。
UNIX操作系统的提供商,IBM,HP和SUN,在提供工作站,服务器甚至大型并行超级计算机硬件设备和操作系统的同时,为了支持如大型测试中心这样拥有大量该厂商设备的企业用户对系统和应用软件进行安装、升级和维护会耗费大量资源的情况,也开发了通过网络进行系统安装的管理工具。提供一种简便、有效的方式,减少停机时间,支持多台服务器并发操作。其中IBM对于AIX操作系统提供了NIM网络安装管理工具;HP对于HPUX操作系统提供了Ignite-UX管理工具;JumpStart 技术是 Sun 基于网络的 Solaris OS 安装机制。
对于Linux操作系统,Redhat开创了kickstart技术实现操作系统部署功能。
开放系统资源管理工具
在企业测试中心这样拥有大量设备,异构复杂的IT环境中,测试人员面临不断变化的测试,往往需要涉及不同种类,不同时期的操作系统。在测试人员有限的情况下,借助于专用操作系统管理工具,大大简化了部署工作。但测试工作人员仍然需要熟悉这些分立的管理工具。面对这种情况,一套能够集成管理各类操作系统,为测试人员提供统一的管理界面,屏蔽底层环境异构性的系统资源管理工具就成为企业测试中心等异构环境用户的首选。
IBM Tivoli Provisioning Manager产品家族就提供了这样的开放系统资源管理工具。支持对Windows,主流UNIX和Linux各类平台的统一管理,包括操作系统部署,镜像管理,应用软件安装和配置等功能,甚至可以对服务器的软硬件资产进行扫描,配合企业IT资产管理和补丁分发等系统管理的重要功能。