私有云平台建设之:虚拟平台的自动化管理

在过去的几年中,虚拟化通过降低CAPEX成为数据中心转化的催化剂。面对由此带来的技术和管理复杂性,自动化管理被导入以进一步优化OPEX和业务敏捷性。自动化管理(Automated Provisioning)是云计算的重要特征之一,定义了自助式服务请求,准实时部署、动态和细化的扩展能力。

许多组织发现,由于信息的规模和类型快速增加,其数据中心的运行复杂程度也迅速增加。Web 服务和复合应用环境也带来了更多的复杂性。IT团队需要管理的节点数量不断增加,节点上每天产生的告警、变更以及管理数据也在不断增加,并且工作请求的数量也在同步增加,这些都给IT团队带来更大的工作量。使用手动或特设的流程,无法跟上这些信息增长的节奏。

在云交付模型中,云服务提供者(包括但不限于IT团队)还需要基于策略交付可扩展的计算能力,并区分关键业务和非关键业务的正常运行时间和可用性。IT管理越来越需要自动化来整合物理和虚拟系统管理、并提高 IT 资源的总体利用率和端到端的解决能力。IDC相信,自动化的基础架构配置、交付和资产管理能力将帮助云服务提供者更准确更快速地响应应用的变化,提高容量规划能力,同时有效控制成本。

自动化是一整套IT策略,而不仅仅是一套软件或一个功能。通常,自动化需要通过实施整体解决方案来实现。对于云计算平台来说,以下几点是实现自动化的关键:

监控

为保证云计算平台正常运行,系统必须对整个云计算架构进行全面的监控,使得系统管理员能够时刻掌控整个架构,从而能够及时优化资源性能和可用性。监控通常是通过监控软件来实现的。通过对重要系统资源的监控,检测出瓶颈和潜在的问题并在严重的情况下进行自动恢复,才可以支撑云计算平台的灵活性和高可用性。监控的对象包括系统硬件设备(服务器、存储、网络等),也包括软件(应用程序、数据库、中间件等)。例如,系统必须监控CPU分配、使用率和负载的实时情况,才有可能在某一应用的工作负载发生变化时及时给予分配。如前所述,云计算平台通常会包括多种类型、多种结构以及多种品牌的硬件和软件,能够支撑云计算平台的监控软件需要较高的兼容性,能够同时监控异构的硬件设备和软件。

监控所产生的结果可以提供给系统管理员,也可以通过系统自动进行处理。监控软件必须具备完整的监控流程管理功能。能够完成设定性能阀值,超过阀值后自动发出警报信息,跟踪警报的原因,并发出相应的管理指令,采取相应的操作等一系列工作,使得系统监控处理不需要一定通过系统管理员来执行。

此外,监控功能还需具备一定的预测能力,通过历史数据分析云计算资源池中的资源消耗趋势、预测和避免问题发生。

动态应用迁移

为了支撑云计算平台的灵活性和高可用性,以及严格的服务水平协议(SLA),云平台上的业务应用需要能够动态的在虚拟机之间迁移。例如,对于一个重要应用程序的资源需求,如果出现了意料之外的峰值,并且同时出现了对资源的争用。系统可以将它移动到一台更大的服务器,或者将其他的、不重要的应用移动到不同的服务器,并使用所释放的资源来满足这个峰值。

由于应用程序需求经常发生变化,使得它们所依赖的基础设施必须能够在很短的时间内适应新的需求,但应该尽可能对服务水平产生最小的影响。这就需要一种简单和安全的方式来应用配置更改,无需管理员进行过多的干预,以减少变更管理的成本,并降低相关的风险。

如果没有提供动态迁移方法,那么大部分资源的再分配都需要经过认真规划,由技术人员来执行,并且导致一定的停机时间,这种情况将会严重影响服务水平(SLA)。

动态应用迁移允许对系统进行无干扰的维护或者更改。这减轻了需要临时关闭系统或应用程序所导致的影响。动态应用迁移操作必须不但可以在应用空闲(非活动状态)时执行,也可以在应用正在提供服务的时候(活动状态)执行。

在动态应用迁移期间,不会对系统操作或用户服务产生任何影响。例如,可以将承载动态生产数据库(包含常规的用户活动)迁移到另一个虚拟机上,而不会损失任何数据和连接性,也不会对正在运行的事务产生任何影响。

自动化部署

自动化部署也是支撑云计算平台的重要功能之一。传统的手工应用部署是一个费时费力的过程,通常由多个复杂的步骤组成。包括软件的安装、配置,以及为软件分配硬件资源等。由于定制化的业务应用通常具有特殊的安装和配置步骤,使得应用软件的部署更是成为了复杂的过程。这些因素都使得自动化部署成为以云计算平台管理这些任务的关键。只有通过动态的部署业务应用,才能够真正实现云计算平台的灵活性。

云计算平台执行最频繁的两项任务就是业务应用的装载和卸载。装载过程将操作系统及其他软件安装到服务器的适当位置并对它们进行配置,使其能发挥效用。卸载过程指自动回收服务器以作他用时所需执行的步骤。

自动化部署软件需要能够及时发现并跟踪云计算平台的资源,实现准确的服务器设置和软件部署。软件部署实际上是一套IT策略和流程,而自动化部署软件就需要支持系统管理员制定策略、编写流程和设定配置,并据此快速高效地构造和管理 IT 资源。

此外,由于云计算平台的异构性,自动化部署软件还应该能够支持业务应用在不同硬件平台、不同操作系统上面的部署。

在实际应用中,自动化管理功能远远不止监控、动态迁移、自动化部署这几项功能,还应包括服务请求的自动化管理、资源分配管理、容量规划管理、自助服务管理等。企业应根据自身业务应用情况搭建自动化管理平台。

IDC调研显示,自动化管理在为企业降低成本的同时,可以提供更好更标准化的交付服务,并且更灵活的响应变更。IDC预计,更多的中国企业将会对基础设施运营和资源分配进行虚拟化和自动化——从而创建私有云计算环境。同时,随着智能资产在各个行业和流程中日渐广泛地应用,组织将有机会把IT资产优化和自动化工作中积累的经验推广到企业资产优化的过程中。