扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
来源:IT专家网 2010年8月20日
关键字: 虚拟机
面向SOA现在不仅仅包含有松散耦合的商业功能组成的混合应用程序。然而,“软件服务”受到了许多关注的同时,虚拟化有必要关注“硬件服务”。SOA现在把计算资源作为服务的组件。这增加了类似于管理软件服务的管理挑战。
虚拟化是目前穿着耀眼的盔甲的“绿色”骑士,显著减少了电源、硬件和不动产成本。然而,由于这些效率的提升大量增加了复杂性,因此威胁到了重要任务的商业处理。有一种解决这个问题的办法吗?企业调度程序提供的自动化能力是这个问题的解决方案。
企业调度程序自动化能力
面向服务的架构(SOA)现在不仅仅包含有松散耦合的商业功能组成的混合应用程序。然而,“软件服务”受到了许多关注的同时,虚拟化有必要关注“硬件服务”。SOA现在把计算资源作为服务的组件。这增加了类似于管理软件服务的管理挑战。但是,总的来说,这些都成倍增加了复杂性。
按照定义,基于SOA的部署是流动的、动态的和透明的(也许太透明了)。这使跟踪和管理依靠那个环境的商务流程非常困难。管理支持这些应用程序的虚拟基础设施的复杂性将使你遭遇恶梦,减少环保的虚拟数据中心承诺的高级的好处。
并不是只有当前虚拟化环境的流动和动态的方面让管理性更加困难。实时了解主服务器和及其虚拟客户机的电源和性能状态是非常重要的。这是保证在恰当的时间和恰当的地方有恰当的资源为现在的商业需求服务的唯一方法。这个过程是复杂的,因为这并不是由分布在大量物理服务器上的数百个或者数千个虚拟服务器组成的普通的虚拟化环境。虽然它们比非虚拟化环境小很多,但是,它们仍然是很庞大的。每一个虚拟实体的电源状态都需要像它们的机器状态一样进行管理。这也许需要保存、恢复和/或者通过快照和模板进行复制。这个环境中的许多服务器也许要根据需要进行重新设置以支持具体的任务。
一般来说,虚拟化环境是由IT专业人员组成的专门团队通过许多人工干预进行管理的。这种做法通常称作“转椅集成”。这种耗费时间的人工工作减缓了流程的速度,有时候速度会非常慢。在这方面,人类的错误率是非常高的,需要更多的人类干预清除这些错误,让系统恢复正常运行。更糟糕的是负责管理虚拟机的基础设施小组通常是与负责管理和运行商务流程的操作小组分开的。这种情况可能导致吞吐量效率下降和更容易引起错误。
需要一种方法从一个窗口统一进行控制以提供一个单一的控制点。当前的虚拟化环境很像是一个没有指挥家的世界级乐队演奏。它有巨大的潜力,但是,在建立精确的协调之前,性能并不是令人非常满意。
幸运的是,当前的企业调度程序正在熟悉虚拟化和解决单点控制和协调问题。他们通过为商务流程自动化和虚拟化环境提供重要的单点控制和自动化来实现这个目的。这对于成功地运行这些流程是非常重要的。这种精确的调谐使它能够充分利用这个环境中的每一点生产率和效率。
企业调度程序提供的最重要的功能也许是管理所有的工作,包括主动的工作和即将进行的工作以及整合虚拟化环境的实际状态。一个设计良好的企业调度程序能够让工作流程与需要的资源相匹配,在一个指定的流程需要之前,一台服务器(或者一些服务器)将处于关机状态。调度程序能够及时启动这个资源以支持这个流程,然后在下一个流程需要这个资源之前关闭它的电源。同样的功能可以用于在重要的检查点上进行快照,以便用于重新启动和恢复。
一般的虚拟化环境有许多这种管理活动一直在运行。有时候,这些管理活动是自动化的,有时候不是自动化的。不过,这些管理任务通常是在不知道对商务流程的影响的情况下完成的(或者忽略了执行这些任务)。典型的虚拟数据中心任务必须以符合商务流程的方式进行监视和执行。这些商务流程包括虚拟机配置、电源管理、热和冷移植、性能熟悉、快照管理、机器重新配置和主机维护。
实例分析
下面是一些典型活动的例子。企业调度程序在商务流程要求的条件下管理和自动执行这些活动。
在虚拟机运行的时候把虚拟机从一个主机“实时”移植到另一个主机的能力是超越明显的负载平衡的许多强大的使用实例。例如,当数百台、甚至数千台机器没有一直使用的时候,当这些机器处于待机状态时,可以把这些机器移植到一台担任被动主机的服务器上。这些机器仍然开着电源并且准备运行,但是,这些机器不消耗一台“主动”主机的任何资源。“主动”主机是主动完成任务的服务器。只要需要这些待机的机器执行一个具体流程的时候,它们就能够移植到拥有完成这个任务所需要的充足资源的“主动”主机。一旦完成这个流程,这个机器将重新移植到“被动”主机,并且在那里等待未来的调用。
这个过程能够连续不断地进行,夜以继日的进行和在许多机器上进行。这种主动/被动的情况将减少整个时间的机器耗电量并且通过让机器处于待命状态提高商务流程的吞吐量。这里的关键是知道机器什么时候需要成为主动状态并且移植到适当的主机。采用自动化调度方式,这个功能将建在商务流程中。那里的虚拟机在开始的时候移植到“主动”主机,在结束的时候移植到被动主机。
因为虚拟机不需要有人物理地在现场按下打开和关闭的按钮,有时候管理员打开和关闭机器电源是非常容易的。这项工作通常是虚拟基础设施技术支持人员在不知道对当前商务流程调度要求的影响的情况下完成的。对于负责调度的那些人来说,重要的是知道重要的或者调度的流程所需要的虚拟机是否关闭了电源。一个企业调度程序经过设置之后能够发出警告,提示一个重要流程使用的虚拟机是否打开了电源,甚至能够在一个重要的流程需要的时候自动打开机器的电源。
设置瞬时虚拟机支持一项任务是调度的另一个有趣的案例。这个工作是使用一个模板克隆虚拟机来完成的。这个模板是一个支持一项具体任务的镜像配置一个虚拟机,这个虚拟机在完成任务之后将被销毁或者用作新的模板。企业调度程序能够在一个流程需要虚拟机之前自动准备好虚拟机,并且在这个过程结束之后撤销这个克隆的虚拟机。
无论企业的调度能力如何,在处理一个具体的商务流程的时候都会出现例外的情况。通过建立检查点“快照”能够解决这些问题,有时候,企业调度程序能够自动进行管理。这些快照需要在指定商务流程的精确点上创建,以实现高效率的重新启动和恢复,消除代价昂贵和耗费时间的从头开始运行。当一个流程在任何指定时间段终止的时候,这些快照还用于把这个环境中的任何虚拟机恢复到具体内存和数据状态。例如,一个仅用于月末处理的机器能够每个月恢复一次,恢复到上个月处理结束时捕捉的快照状态。
影响虚拟化环境的整体效率的另一个问题是一个虚拟机放在其主机上的工作量需求。如果某些主机的工作量太高,企业调度程序能够检测到性能状态并且做出反应,减少这些机器上的计划的工作或者把这些工作转交给其它虚拟机。这种独特的能力需要企业调度程序全面理解在整个环境中运行的流程内部和流程之间所有的相互依赖性。事实上,当评估企业调度程序的时候,保证这些调度程序能够处理可用性和性能依赖性以及应用程序本身的依赖性是非常重要的。依赖性管理是协调虚拟化环境中队列事件的一个关键因素。
除了管理复杂的依赖性之外,企业调度程序能够监视虚拟机工作负荷以提供“负载均衡”能力。虚拟化基础设施管理员一般都要善于自动使用基于性能标准的规则移动虚拟机或者推荐集群中的可用主机。这些管理员不足的地方是在这些规则必须要包括到正在运行的和优先等级相对较高的实际流程中。虽然优先等级可以分配给虚拟基础设施中的资源池,但是,一个企业计划要考虑在这些池中运行的实际流程的优先等级。例如,当主机使用达到具体的性能门槛的时候,一个企业调度程序在知道在这些虚拟机上运行的流程不重要的时候能够暂停或者移动虚拟机,并且在资源恢复到正常水平的时候恢复这些虚拟机的运行。这是一个企业调度程序能够微调虚拟环境的性能的另一种方法。
有时候,一个具体流程或者任务比为这个机器安排的其它流程需要更多的资源。为了准备完成这个任务,一个企业调度程序能够自动配置这个机器的内存和/或者CPU分配达到正常以上的水平。在完成这个任务或者一组任务之后,企业调度程序将自动设置这个虚拟机恢复到正常的设置水平。
人们一直把重点放在缓解部署和运行大量的虚拟机方面。然而,我们不能忽略一项日益重要的任务,这就是维护支持这些虚拟机的物理主机。虚拟基础设施管理员能够简单地拖放鼠标就可以关闭托管的虚拟机的电源或者把虚拟机移动到其它主机,从而轻松地让主机离线进行维护。然而,手工干预需要启动或者跟踪一个主动流程的完成状况和评估所有的虚拟机。这对于确定何时进入维护模式是非常重要的。
使用一种熟悉虚拟化的企业调度程序,维护的准备工作能够完全实现自动化。这是通过在没有计划任务的时候安排关机和/或者转移虚拟机来实现的。当主机上没有活动的虚拟机的时候和当所有的工作处于等待的状态的时候,这个调度程序能够自动让主机处于维护模式。当维护完成的时候,这个调度程序能够让主机退出维护模式,恢复虚拟机的运行和发布等待完成的任务表。
正如这些例子展示的那样,当前的高级企业调度程序已经远远超过了简单地在虚拟化环境中调度流程以实现虚拟化管理任务自动化。通过提供虚拟化环境中的重要流程的自动化控制,他们实际上能够让一个环境吵杂声变成一个精细调整的乐器,从而使自动化和效率提高到一个新的水平。虚拟化领域中的生活大概就是这个样子。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者