取得优化价值的配置分布式计算系统的元素的方法和系统的制作方法

文档序号:7875128阅读:160来源:国知局
专利名称:取得优化价值的配置分布式计算系统的元素的方法和系统的制作方法
技术领域
本发明一般涉及用于管理分布式计算环境的系统的领域,更具体地,涉及响应期望的价值回报(return of value),管理分布式计算资源的系统和方法。
现有技术一个分布式计算系统由多台以通信网络连接的计算机组成。计算机设备(被称作“节点”),一般不与其他节点共享存储器,并且仅通过消息传递来进行通信。P.H.Enslow,Jr.在名为“什么是‘分布式’数据处理系统?”(Computer,Vol.11,No.1,Jan.20 1978,PP.13-21)的著作中,列举了分布式数据处理系统的下列五个属性1)物理和逻辑通用资源组件的多样性,这些资源可以被动态分配给特定任务;2)物理和逻辑资源利用通信网络的物理分布;3)统一和集成对分布式组件的控制的高层操作系统;4)系统透明性,这允许仅通过名称请求服务;和,5)合作性自治,表征物理和逻辑资源工作和相互作用。
低成本的通用计算系统的可用性、网络技术的进步、资源共享软件(操作系统和中间件)的发展,以及增多的对数据通信的用户需求、计算资源和数据的共享,已推动了分布式计算的广泛使用。如今,几乎每台计算机都是某个更大的分布式系统的一个元素。
运行于分布式平台上的流行的应用包括电子邮件、ftp、web服务器、多媒体工具包和电子交易系统。另外,分布式计算系统是大规模并行计算和容错系统的优选平台。近来,新形式的分布式计算进入使用。例如,SETI@HOME从世界范围招募志愿者,在他们个人拥有的机器上运行计算,以便在对地外文明的搜索上有所进步。
分布式系统通常由不同种的硬件和软件元素的集合构成,一些节点专用于特定活动,例如名字或文件服务器。包含同种硬件和软件元素的集合的系统通常被称为集群并被用于并行计算。
网格计算是一种新兴的分布式计算方法。利用网格,标准资源汇总、发现和预约机制允许信息技术(“IT”)资源得以被千差万别的用户采用,用于千差万别的任务(如果没有网格的话,其中一些任务对于任何给定用户都无法完成),并且实现了虚拟组织的形成。直到最近,这仍是学术机构或非营利实验室的领域。现在,网格基础架构正开始被用于商业目的,例如生命科学公司寻求深度计算用于药物发现。许多企业和组织已经参与了制定这些开放标准。可在http://www.globus.org/research/papers/anatomy.pdf获取关于网格的描述和关于标准的指示性信息。Globus工程(http://www.globus.org)是正在开发建造计算网格所需的基础技术的组织。
网格是由网络连接并由整体调度进程控制的计算机的集合。如同其他分布式计算方法,资源管理是网格的高效性能的极其重要的方面。在网格计算中,调度程序元素负责监控每个网格计算机上的各种资源,并且保证没有过载。用于确定在哪台网格计算机上运行任务(或者该任务的一部分)的典型资源是CPU利用率、存储器可用性和磁盘空间。资源管理元素还可能考虑用于特定任务的资源的适用性-例如,编译器的可用性、CPU处理器类型、软件许可证和商业策略(例如,一个防止在公用工作站上运行工资名册程序的策略)。
所有分布式计算的必需组成部分是连接元素的网络。网络是潜在的故障点或性能退化点,并且其管理是一个专业化的领域。网络管理通常是指使用工具、应用程序和专业设备来协助员工维护网络,网络一般由不同种元素组成,例如路由器、计算机系统和交换机。网络管理可以允许不同的管理域,每一个域被单独地管理。网络管理的目标是性能管理(如将网络维持在可接受的水平);问题管理(如确定、避开或者修正问题);会计管理(如保证帐单与网络使用一致);配置管理(如跟踪配置及其对性能的影响)。网络管理寻求把关于网络的状态和性能的信息告知操作人员,并进而支持最小化例如拥塞的网络问题和最大化性能(如测得的吞吐量、最小化的延迟)的目标,这通过由日志、探测器或是推断所捕获的量度(metrics)测得。
用于最大化网络系统性能的系统的代表包括在名为“支持IP网络中服务层协定的体系结构”的No.6,459,682号美国专利中描述的系统,该专利教导了一种用于控制IP网络中的流量的方法。如在No.6,459,682号美国专利中描述的那样,该系统包括用于标识节点间连接并确定流量类别和流向,把数据包(packet)转化为关于流量类别的编码信息,并调节传输来满足性能目标的装置。该专利和网络管理中的其他专利教导了如何在不参考外部财务量度时在网络中达到性能目标。
服务水平协定(“SLA”)是最近新兴的一种管理可在IT基础架构上交付的服务的方法。SLA是客户和服务提供商之间的合同,它详细说明了每一方对合同的责任。它通常提供针对服务提供商的特定可度量条款和针对客户的简单的必须提供(must-provide)条款。如下可以是这种协定的一个例子“提供商每周在服务器上提供3小时的专用机时。客户必须提供工作程序。提供商将不调试客户代码。”SLA可以位于IT组织和它的同行商业客户之间,也可以位于多个企业之间。SLO是服务水平目标。SLO通常表明了提供服务的意图,但是缺少对违约的惩罚。
为了遵守SLA协定,已经开发了监控系统的方法来保证执行。名为“带有对下游任务影响警告的自动SLA执行分析监控器”的No.5,893,905号美国专利教导了一种系统和方法,用于监控选定的数据处理任务的执行,将实际执行和每一个被监控的任务所属的服务水平协定(SLA)比较,标识差异,并分析对于任务流中其他任务的影响。这允许更有效的遵守SLA条款。
在IT基础架构中,可能有必要在多个内部和外部客户之间平衡配置资源和优先权。策略管理软件旨在把商业策略和计算资源集成在一起。对企业更有价值的工作比价值较小的被给予更高的优先权,因此以此为基础分配计算资源。诸如Allot通信公司(http://www.allot.com/)的一些芬兰公司提供基于策略的SLA管理软件,其目标是最大化应用性能并且限制成本。
投资回报率(“ROI”)是一种财务分析,它帮助企业决定接受还是拒绝一个项目。有另外的可接受的度量投资回报率的方法。一种方法是基于会计收入。两种最传统的基于会计收入的量度是资本回报率和股本回报率。另一种度量投资回报率的方法是基于由被评估的项目所产生的现金流(输入和输出)。现金流被在税后债前估计,并且考虑到货币的时间价值通常会有折扣。传统的基于现金流的量度是纯现值、内部回报率和回收期。所有这些量度都有标准且广为接受的定义,这些定义可以在任何一本有关企业财务的教科书中找到。这些模型倾向于是静态的,输入的信息缓慢地变化。
当前的资源管理方法,无论是策略驱动还是SLA驱动的,都没有考虑对于企业价值的影响。网络管理专注于服务水平协定和相应的管理网络的方法,以便保持遵守。这些方法没有考虑诸如财务、人工工资率(labor rates)等因素。通常,它们是次优的。
需要的是增加价值而不是提高任何给定的IT量度,例如利用率的方法。
IT价值的财务模型提供了用于评估投资回报率、评估风险和其他传统的财政责任度量的方法。这些被基于静态输入计算,静态输入由所达到的实际的财政情况或是由预计数字形成。它们没有考虑采用可变(如按照需求)IT容量的能力,也没有考虑提供可变服务的能力。更进一步,它们没有自动验证利用当前量度的财务模型。
因此,人们非常期望提供一种系统,该系统包括可变IT容量和可变IT服务,以便验证利用当前IT量度的财务模型。
因此存在着对网络管理系统和用于配置分布式计算系统的元素的方法的需求,所述方法考虑了更广义的ROI,以确定采取何种动作。

发明内容
因此本发明的目的是提供一种方法和系统,用于根据对分布式计算系统元素的成本影响的评估,对其进行配置。
本发明的目的是提供一种方法和系统,根据对分布式计算系统元素的成本影响的评估,特别是根据对预计投资回报率(“ROI”)的评估,对其进行配置。
因此本发明的目的是提供一种方法和系统,用于根据对预计的ROI的评估,配置例如网格的分布式计算系统的元素-例如,确定哪些资源应该是网格的一部分,或者哪些任务应该被加入到运行队列中。
依照本发明的优选方案,提供了一种系统和方法,用于配置分布式计算系统的元素,包含步骤确定涉及配置的分布式环境的硬件和/或软件元素的一个或者多个系统量度;响应一个或者多个系统量度来确定系统价值,所述价值被根据一个或多个价值标准确定;和相应地,根据所述被确定的系统价值,重新配置所述分布式计算环境的元素。
分布式计算环境如企业网格的所有者可以方便地实施本发明,或者本发明也可作为由第三方提供的服务执行。


参考以下描述、所附权利要求和附图,可以更好地理解本发明的设备和方法的进一步特征、方案和优点,其中图1绘出了一个分布式计算系统,包括多个计算系统的网络连接;图2绘出了在本发明的系统和方法中使用的信息流;图3是流程图,绘出了本发明的方法;图4是流程图,绘出了所实施的用于根据本发明的方法确定系统量度的过程步骤;图5是框图,绘出了用于根据本发明的一个实施例确定分布式计算环境的价值的模型的部件;图6是流程图,绘出了利用当前资源分配,确定正在运行中的应用程序的价值的步骤;图7是流程图,绘出了确定合理(advisable)变更的步骤;
图8是流程图,绘出了使合理变更生效的步骤;和图9是表格,绘出了在评估环境价值时使用的企业财务数据的示例元素。
具体实施例本发明实质上涉及用于根据对分布式计算系统的元素的价值增加(value add)和成本影响的评估,对其进行配置的方法和系统。
图1描述了分布式计算系统100,包含多个通过通信网络110连接的计算系统(如120、130、140、150和160)。计算系统120、130和140被配置成运行分布式系统的用户所期望那样的任意(本地的或者分布式的)应用程序;这些应用程序可能包括电子邮件和ftp客户端、web浏览器、工程设计应用程序等等。计算系统150和160被配置成运行有限的应用程序的集合,实际上由这些应用程序专用,这些应用程序由分布式系统的管理员选择。这些应用程序包括电子邮件、文件系统、ftp、web代理服务器,企业工资名册,并且通常被称作系统应用程序。一般说来,系统管理员控制专用计算系统150和160上的所有计算机帐户。通过通用系统120、130和140上运行的客户端应用程序,分布式系统的用户可以间接访问运行在专用系统150和160上的系统应用程序。通过分布式通信协议,这些应用程序可以访问专用系统150和160上的资源,所述通信协议基于通信网络110中的消息交换。
图1中还示出了提供网络管理模块151。该软件元素被示出在专用系统150上运行,它从系统的其他元素接收网络管理信息,并且提供对网络110进行任意变更的控制功能。例如网络管理模块151可能接收到来自系统140和160的警告,每一个均指示与系统130通信有困难。网络管理模块151可以断定出系统130通信中断并通知操作人员。
应该理解,计算机系统120、130、140、150和160不必使用同样的处理器或I/O体系结构,并且不必是同一个销售商制造的,也不必运行同一个销售商制造的软件。运行在这些系统上的软件组件,例如操作系统和中间件,在事先商定的独立于系统的数据表示和本地数据表示之间相互转化,因此实现了在具有非常不同的特性的系统之间的通信。
图2绘出了系统200及本发明的方法中使用的信息流。在图2中绘出的系统200的分布式计算环境中指示的是资源210,它包括硬件和软件元素。代表诸如配置属性、资源、性能、利用率、硬件和软件活动描述(activity profile)和利用率等信息的量度由这些系统确定,并且把该信息提供给发明系统200的其他元素。
例如如图2中所示,来自资源210的信息和来自其他系统元素的信息,诸如来自资源220的企业财务数据信息、来自资源230的IT数据和来自外部资源250的数据,都被提供给由磁盘/数据库元素240代表的汇总点。作为一种选择,这些信息流中的一条或者多条可以被直接提供给实施确定环境价值的过程的价值确定元素260,或者可以在子汇总元素(未示出)中和其他数据汇总。
至于可以被汇总的数据类型,企业财务数据220可以包括例如以下几项,但不限于此劳动力成本、不动产、电力、SLA违约惩罚、税金信息、自由现金流、维护人员加班的连续天数、访问非企业分布式计算资源的成本(例如从公用网格购买计算)等。更具体地,图9的表格绘出了在评估环境价值时可以使用的企业财务数据的示例元素。应该理解,在评估环境时还可以使用很多其他的财务数据元素。在图9的表格中,字段705-730示出了与单个地点关联的财务数据,此例中字段705指定的是纽约。字段710和715示出了一天不同时间的示例电费。在大多数情况,根据峰值负荷时间和其他时间区分方法来区分电费是明智的。字段720到730逐个示出了IT操作人员的人工工资率。很多其他人工工资率对于评估系统可能有用,包括保安人员、系统工程师,经理等人员的人工工资率。除了所示出的字段,很多其他的财务细节可以被用来评估环境,比如租金率,影响费和当地税率等等。字段735到740指示很多其他地点也可以被代表。字段745到755代表采购额外IT资源的示例费率。字段745示出了在按照需要模型中采购时示例存储的价格。类似地,字段750和755示出了带宽和计算周期的示例价格。字段760示出了库存现金,并且,字段765-770代表各种客户的示例应收帐款的价值。这可以被用作和这些客户可以请求或要求的应用程序或其他任务关联的优先考量和价值声明的一部分。类似地,字段775到785示出了和可用性和不达到根据合同测量的性能关联的示例惩罚。字段790到798示出了期望的货币交易费用和货币成本。这些是财务数据的例子,显然很多其他字段也是有用的。
回到图2,这个信息被示出提供给汇总点240,但是也可以直接提供给价值确定元素260、变更确定元素270,变更确定元素270实施用于确定环境中的某个变更是否是合理的过程,或者,信息还可以在子汇总元素中和其它数据汇总。
IT数据230可以包括例如以下几项,但不限于此例如额外的资源信息的数据、历史性能或日志、SLA、资源管理策略、问题确定策略。另外,该IT数据可能包括表示企业环境之外的IT资源的数据,例如代表公用网格的数据,还有涉及企业IT环境的数据。数据被提供给汇总点240,但是也可以被直接提供给价值确定元素260、变更确定元素270,或者,信息还可以在子汇总元素中和其它数据汇总。
外部提供的数据,即由数据250代表的,可以在网络上从许多来源获得,例如包括以下这些,但不限于此万维网上可以访问的资源、来自第三方服务供应商,或来自企业功能。数据可以包括以下几项,但不局限于此例如一般可用利率、承包人人工工资率、公用计算容量成本、从经销商处购得的服务器价格、按需商业服务价格、IT资源的买家和卖家的市场信息等的财务数据。此外,数据还可能包括以下几项,但不限于此例如可用于服务的任务、开价、所需资源配置(例如需要资源的任务)、可用web服务和价格等IT信息。数据被示出提供给汇总点240,但是也可以被直接提供给价值确定元素260、变更确定元素270,或者,信息还可以在子汇总元素中和其它数据汇总。
如图2所示,汇总元素240代表源自其他地方的数据的汇总点。该汇总点可能包含服务器或者数据存储设施,被直接连接或者通过网络连接,并且可作为企业环境的一部分,或者作为第三方提供的服务。此外应该理解,汇总元素240对于系统是可以被选择性地提供的。此外要注意到在优选实施例中,来自其他元素处的数据被获取而没有事先请求。但是,在其他实施例,至少一种数据元素被通过请求数据元素来源获得。
在图2中还绘出了被作为元素260绘出的价值确定过程。该元素可与IT资源元素210放在一起,或者也可以位于别处。它可由企业、共同体或者第三方服务提供商操作。价值确定过程可以使用被提供的部分或者全部数据,可包括估计价值,可执行算法计算,并且可能需要从前面的资源之一或者其他外部资源请求额外的数据。它可以与元素270,即变更确定过程结合。即,元素270响应元素260确定的价值,元素270实施变更确定过程,用于确定环境中的变更是否合理。变更确定可能包括以下几项,但是不限于此执行优化算法、执行多价值计算、和第三方协商惩罚(例如尝试通过电子或者非电子协商通信来降低潜在的SLA惩罚)。变更确定可以是实时的,近似实时的或者非实时的。它可以包括通知评定人员,或者和外部或内部合作者的个人协商。变更确定可能包括如下过程确定并指定要实行的变更、指定其间变更应该生效的生效时间周期,以及指定过程或者人员监控变更的后果。虽然没有被示出,但是应该理解,提供了用于使得任何被确定的变更生效的过程,并且,该用于生效的过程可以是半自动或者全自动的。
优化算法的实施在本领域是公知的。例如,可从本发明的受让人IBM公司处获得的优化解决方案和库(OSL)是用于操纵和分析优化问题的系列产品。单独OSL组件用代码实施最新技术算法,所述代码利用了它们在其上运行的平台特性的特别优点,这些平台包括但不限于IBM大型机和工作站、PC以及来自其他制造商的工作站。OSL组件可以被结合进简单得像是“输入、解决、输出”的应用程序,也可以被结合进像是有渊博知识的从业者可以创立的应用程序。在OSL主页上可以找到更多详细信息的链接,它位于http://www.research.ibm.com/osl。
图3是流程图,绘出了本发明的方法300。该方法以步骤310开始,步骤310用来确定与分布式计算环境中的系统之一有关的至少一个系统量度。在优选实施例中,分布式计算环境的一个或多个元素上装备了硬件或软件探测器(probe)。硬件探测器是一些装置,经常与检测操作错误(例如故障)和性能信息(数据传输时间、执行时间)的设备集成在一起。它们可以作为标准特征内建于硬件元素中(例如,磁盘驱动器、网络接口、交换机)。被类似地定义的软件探测器是监控诸如队列长度(任务的集合,例如要求系统执行的应用程序)、存储器使用、处理时间等软件量度的软件组件。应该理解,这些探测器可以不是应用的一部分,但是可以被以后添加或者单独添加。特别地这些探测器使得可以收集例如处理器利用率、存储器利用率和通信带宽利用率的信息,并且可以把信息直接提供给价值确定过程,或者可以把信息提供给系统管理过程。或者,数据可以被记录,用于稍后近似实时处理,或者完全异步地后处理。
例如,在本发明的一个实施例中,在潜在的网格资源上布置了监控工具来监视应用程序层和服务器层使用信息,诸如最大和最小利用率、应用程序需求模式、可用和需要的盘、存储器、网络带宽的大小等。这些工具可以是非侵入式的,特别是对于并非任何分布式计算环境的一部分的那些资源,或者它们也可以是侵入式的,例如需要在IT资源上安装代理。在一个实施例中,监控工具被用来后处理日志文件。
更具体地,根据本发明,诸如全局/服务器CPU和存储器利用率的系统量度是非常重要的系统量度。对于要求最高的应用程序,最好获得相同的每个应用程序的量度。因为企业应用程序包含进程的集合,并且系统提供了每个进程的资源利用率,所以对于要被监视的要求最高的应用程序产生了进程树。进程树通常被基于其根节点确定,根节点由与已经被启动的应用程序关联的信息(例如名称、盘上的可执行文件)来标识。此外重要的量度是存储和网络I/O活动。对于存储I/O活动,页面调度活动和常规的文件I/O被区分开来,因为由于内部存储器短缺所致的过度存储器页面调度具有重大(负面)性能影响。另外,用太多应用程序使服务器过载将会产生过度页面调度(超线性盘活动),而常规的文件I/O会随着应用程序数目自然增长。一般地,监控工具区分这两类磁盘活动,因为页面调度会涉及特殊的(页面调度)磁盘分区。
对于网络I/O活动,收集与网络活动性能(例如发送/接收到的数据包,发送/接收到的字节)和网络活动‘质量’(重发的包、连接复位、断开、重发的包、收到重复的ACK)有关的数据。
其他可以被作为潜在量度监控的活动包括系统中进程数目(所有系统都有一个极限);打开文件和连接数目;不同文件系统中可用于(a)系统日志和(b)应用程序日志的空间。最好避免达到系统的任何硬性限制,因为操作系统可能中止有价值的进程,或者因为缺乏所需的资源,例如文件或者连接而导致正在运行的进程失败。
某些量度,例如应用程序启动,可以被更容易由非侵入式方式估计。系统量度的估计可以通过先前的性能、先前收集的日志或与负责IT管理的人员面谈等得到。这些估计可直接代替收集的量度使用,或者可以被用作这种量度的初始条件,要通过其他方式被细化。
如图3中所示,方法继续到步骤320,其中,为分布式计算环境确定了一个价值,例如投资回报率价值(ROI)。该价值可以考虑在步骤310收集的量度,以及硬件、软件、网络和管理的成本,还有当前正在运行的应用程序和其他应用的价值。但是应该理解,也可以把其他因素计入考虑。例如,在步骤310中收集到的一个量度可能涉及网络流量;这又可能影响网络支持应用程序的成本。在优选实施例中,该价值代表了投资回报率。该价值可以响应外部财务量度被计算,外部财务量度诸如现行利率、不动产成本和人工工资率。注意,价值确定可以由第三方(3rd)作为服务提供,或者可以由分布式计算环境的所有者操作。步骤320中其他可以被针对分布式计算环境的价值确定的价值量度包括内部回报率(IRR)、纯现值(NPV)和所有权总成本(TCO)。
继续到图3中的步骤330,响应步骤310中收集到的量度及步骤320中确定的价值,确定分布式计算环境中的变更是否合理(advisable)。在优选实施例中,根据对分布式计算工作量的潜在变更(例如,在特定地点添加或者删除特定应用程序任务)、配置修改(例如,从网格中添加或者移除资源)和最终收入增加、成本降低的经济后果和潜在的SLA惩罚来确定另外的价值。如果所述另外的价值指示可能会获得更高的价值,则做出改变环境的决策。注意,变更确定过程可以由第三方作为服务提供,或者可以由分布式计算环境的所有者操作。
从下面的情况可以理解两个说明性例子在第一个说明性例子中,企业维护着一个企业网格,该网格由区域中的服务器和存储资源组成。利用率被监控并基于该负荷,并且,从当前运行的应用程序的价值,确定可以接受外部的计算工作进入该企业网格而不影响在被运行的应用程序的结果。在第二个说明性例子中,企业维护着同样的企业网格。应用程序A运行在服务器1和2上。应用程序B运行在服务器2和3。监控利用率。基于负荷和当前运行的应用程序的价值,应用程序A被提前终止,应用程序B被转移到服务器3上单独运行,并且服务器1和2被关闭,使得由服务器1和2代表的地点的电力和人员成本得以降低。在价值上,成本节省超过了提前终止应用程序A的惩罚。
参考图3,如果在步骤330确定没有合理的环境修改,则方法从步骤310重新开始。如果指示了修改,则在步骤340中使变更生效。步骤340中所做的变更可以包括终止或者开始应用程序,对可从分布式计算环境外部访问的服务目录的修改(例如待售广告空间)、关于站点关闭的人员通知、网格配置变更、任务队列变更,等等。
图4是流程图,绘出了根据在图3的步骤310绘出的本发明的方法实施的用于确定系统量度的过程步骤400。在图4中,首先,步骤400包括对所有感兴趣的系统量度进行可选的排序。剩余的步骤430、440、450和460被针对每一个在步骤410排序的感兴趣的量度执行。对于每个感兴趣的量度,过程前进到步骤430,在步骤430确定在分布式计算环境中该量度是否是可观测的。在一个优选实施例中,过程具有一个至少在某些时间可从系统获得的可用量度列表。例如,它可能包括处理器利用率,只有在系统是工作的并且被连接到网络时才可获得该利用率。因此该量度虽然在某些时间可获得,但是并非在任何给定时刻都可获得。因此在步骤430中,要确定量度此时是否可获得。如果该量度可观测,则过程前进到步骤440。如果该量度不可观测,则过程前进到步骤450,在步骤450中要进一步确定该量度是否可以在系统中导出。量度可能可以通过历史价值、结合其他量度或者从其他与事件结合的量度推导而导出。如果评估的结果是该量度可以被导出,则过程前进到步骤440。如果评估的结果是无法被导出,则过程前进到步骤460,在步骤460确定该量度是否可以手工获得。该确定可以是表格驱动的,例如,可以使用一个某些时候可以手工获得的量度的表格来做出确定。一些量度某些时候(例如有人看管操作时)是可以手工获得的,但是并非所有时间都可以(例如当系统操作无人看管时)。如果确定的结果是否定的,则过程前进到步骤420,在步骤420,可以执行无法获得该量度的通知或者日志记录。这种通知可能是正常的处理,或者也可能会导致错误状况,比如向合适的错误恢复过程发出信号。方法从420继续到410。返回到步骤460,如果步骤460中评估结果是肯定的,则过程前进到步骤440,在步骤440执行收集量度信息的功能。通过观测、轮询、估计、通过例如请求和键盘输入等对操作人员的询问等,可以执行该量度收集操作。如步骤470所示,使得所有信息可用之后,如返回步骤410的循环所示,针对所有感兴趣的量度收集该信息。使得可用包括但不限于日志记录、把信息发送给确定过程、在网络中传输信息和打印。在步骤470之后,过程返回到步骤410,在步骤410,再次重新开始用于确定量度的步骤。
图5是流程图,绘出了用于根据本发明的一个实施例,确定正在运行的应用程序的价值的过程500。图5中绘出的过程500以步骤520开始,步骤520用于利用当前的资源分配确定正在运行的应用程序的价值。将针对图6描述有关该步骤的进一步的细节。过程继续到步骤530,在步骤530,和正在运行的应用程序的操作关联的成本被确定。这些成本可以包括以下几项,但不限于此网络成本(例如传输成本)、存储成本,特别是如果存储被作为网络连接的存储而获得,和许可成本(例如,按照合同,软件的许可证成本可以由以下参数确定,但不限于此使用该软件的机位数目、系统数目,或者站点数目)。一旦确定了与正在运行的应用程序的操作直接关联的成本,则过程前进到步骤540,在该步骤确定使用的IT基础架构的成本。IT基础架构的成本包括并非针对特定的应用程序,但是针对特定系统和站点的项目,包括但不限于电力、人工操作人员和保安人员。该成本可能包括在地理上确定的价值,例如劳动力成本和电力成本,并且可能对时间敏感。例如,在非工作日的劳动力成本可能较高。
继续到步骤550,那里绘出了通过计算正在运行的应用程序的价值与在步骤530和540中确定的成本之间的差值来确定环境的价值的步骤。在下一步骤560中,有一个可被选择调用的过程,用于归一化在步骤550计算的结果价值。在优选实施例中,该步骤可能包括调用用于把所有货币换算成美元的算法,例如,把货币交易成本包含在内,并且可能包括与商业有关的元素,例如在和经济周期有关的日期货币交换的风险因素(例如周一上午的期望币值)。该步骤还可以包括把一系列有效的价值和成本应用到在先前步骤(例如,应用到确定正在运行的应用程序价值上)中执行的计算,以提供一个范围而非单个价值当作最终结果。过程以将针对图7描述的方式继续。
现在参考图6,绘出了图5的第一步骤520的详细的流程图,步骤520利用当前资源分配来确定正在运行的应用程序的价值。应该理解,在图6中绘出的用于确定正在运行的应用程序的价值的步骤被针对所有正在运行的应用程序执行。在第一个步骤565,确定所考虑的应用程序是否正为了合同中指定的收入被代表另一个实体(例如另一个企业)执行。这可以通过执行检查电子合同、通过检查应用程序描述、通过检查应用程序的调用参数、通过日志条目,或者通过其他方式执行。如果确定应用程序正为了合同中指定的收入被代表另一个实体执行,则过程前进到步骤580,在该步骤把该应用程序运行的合同收入作为该应用程序的价值分配。注意,根据性能、完成时间或者其他因素,合同可能会提供奖励或是惩罚。这些因素可被作为在块580中分配价值的步骤的一部分,用来确定生效合同价值。从步骤580继续,下一步执行步骤592,该步骤基于正在运行的应用程序完成的百分比给出一个价值加权,这将被更详细地解释。
回到步骤565,如果确定所考虑的应用程序不是正被代表另一实体执行,则过程继续到步骤570,在该步骤确定是否有与该应用程序关联的价值描述(value profile)。价值描述可能包括以下几项,但不限于此数字价值、计算价值的算法、价值排名(例如高、中、低或者类似的数字排名)和诸如性能、完成时间和并发用户数目等因素。如果在步骤570中确定所考虑的应用程序与一个价值描述关联,则过程继续到步骤585,在该步骤,基于该价值描述分配应用程序的价值。价值描述中存在的因素可以被用来确定有效价值,作为块585中分配价值的步骤的一部分。从步骤585继续,或者,如果步骤570的结果是否定的,则过程前进到步骤575,在该步骤,根据应用程序是否时间关键(time critical)给出一个价值加权。确定可以被基于应用程序描述、手工输入、对期望输出的评估或者其他方式。如果没有时间关键信息可用,则该加权可以是缺省值,最可能为中性值。之后,过程前进到步骤590,在该步骤基于应用程序是否是任务关键的(mission critical)给出一个价值加权。确定可以被基于应用程序描述、手工输入、对期望输出的评估、与其他任务关键应用程序的接口,或者其他方式。如果没有任务关键信息可用,则该加权可以是缺省值,最可能为中性值。例如,保安公司的一个任务关键应用程序可能包括数字视频输入;对于制造公司,任务关键应用程序可能包括生产线上的品质保证。也就是说,在制造操作中,品质量度可以被看作任务关键应用程序。这可以包括对被制造设备的例行测试、子系统的性能分析,以及保证被制造的零件处在可接受容限内的量度。进一步的任务关键例子包括对于电信公司和web零售商,网络问题分析和电子目录可能是任务关键的。
无论是执行了将应用程序运行的合同收入作为该应用程序的价值分配的步骤580,或者从步骤590直接前进,接着执行步骤592,基于应用程序执行的进度,给出一个价值加权。例如,可以认为已确定完成90%的应用程序比完成10%的应用程序具有更多的价值。可以基于应用程序描述、或基于从过程实例化开始的时间、或基于手工输入产生的输出,或者通过其他方式来做出确定。如果没有可辨别信息,则可以分配一个缺省的加权。接下来,继续到步骤594,如果先前还没有分配价值,则执行分配缺省价值和将加权因子应用到价值的步骤。最后在步骤598中,过程返回图5的过程步骤530。
现在参考图7,绘出了描绘用于确定合理变更的方法的详细流程图。图7以第一步骤610开始,该步骤描述了潜在变更的集合,步骤620、630和640将被针对这些变更以“循环”方式重复地执行。步骤610特别定义了作为对环境的潜在变更的循环范围。这些变更可以被基于以下至少一项环境本身(例如运行的应用程序)、环境中的变更(例如,被运行的应用程序完成);对资源或工作的内部或者外部请求;外部因素(例如一天中的时间、换班)。这些变更可以被基于表格条目、管理元素状态,队列状态,算法等阐明。算法上建议变更的一个例子中,可以考虑删除和逾期最多的应收帐款的企业关联的应用程序任务。例如,变更可以基于和发起人相关的应收资产的计算(例如,如果客户没有付款,则不运行他们的程序),低于指定数目的债务暴露变更,债务暴露和风险因素结合等。再举一个例子,在任何时刻都可以做出一些潜在变更来取消正在运行的每项任务。这个例子可以捕获也许在业余时间期间负荷较低的系统可以被关闭,以利于在以后的时间运行它们的应用程序负荷的状况。在又一个例子中,从历史数据可以确定潜在变更表,并且该表在这一步骤中被再次检查,看在当前时间这些变更是否合理。在又一个例子中,被管理的元素(例如数据库)的性能可以指示拥塞,并且,从作为繁重的数据库用户的应用程序中可以评估出变更(例如,给认定为最有价值的应用程序更多的数据库优先权)。例如,如果认为应用程序引起了数据库拥塞,则降低它的优先权可能是有益的,并且优先执行对该资源具有较少要求的应用程序(例如计算繁重而非I/O繁重的)。
对于在图7步骤610中确定的每一个潜在变更,执行循环的下一个过程步骤620来确定什么需要被变更。这可能包括以下几项,但不限于此配置变更、运行时间环境变更、为释放资源异常结束其他应用程序、释放或者获得带宽承诺、获得或者释放软件许可证等。在示例实施例中,由以下几项中的至少一项来确定这些变更表、来自历史数据、来自应用程序描述,或者来自用户输入。继续到步骤630,绘出了评估变更成本的步骤。变更成本可能包括以下几项,但不限于此为异常终止存取和支付的惩罚,为未履行SLA存取和支付的惩罚、为提前释放带宽存取和支付的惩罚,为快速获得带宽支付的额外费用、释放资源(例如在存储区域网络(SAN)不可用时对其重新配置可能要求可观的时间)花费的时间的机会成本、获取资源所花费时间的机会成本、设置所需的操作人员时间等。
因此,在这里要理解,对于每个潜在变更,做出变更必须要做什么以及“设置”成本将是什么样的。注意,在优选实施例中,这与变更的操作成本是不同的。该步骤覆盖了做出变更的成本(例如,快速获得带宽);但是,它没有覆盖进一步操作(例如,在某个带宽密集应用程序执行期间带宽的运营成本)的成本。接着继续到步骤640,绘出了评估新环境的价值的步骤,假设做出了环境变更。在优选实施例中,步骤640根据图5中所示的步骤细化,即,确定环境价值。也就是说,潜在环境的价值被以与根据图5、图6确定当前环境的价值相同的方式确定。接着继续到步骤650,绘出了选择合理变更的步骤。在优选实施例中,导致和当前环境的价值相比更高的新环境价值的变更是合理变更。例如,可以通过算法、收入影响和联合协定来选择合理变更,但是,还可以利用其他方法用于建议变更。在一个优选实施例中,合理变更是不会减少美元收入的变更。应该理解,可以选择多个合理变更。进一步前进到图7步骤660,这些变更的指示被提供给生效器(effeetor)步骤,这将根据图8被更详细地说明。
图8是流程图,绘出了使合理变更生效的步骤。在图8中,第一个过程步骤665被绘出,该步骤涉及聚集从图7中确定的合理变更。在步骤670中,包括步骤675、680和685的循环范围被描述成是先前所确定的全部合理变更,它们可以被选择性地按照优先权排序。在优选实施例中,优先权被按照环境价值来确定,但是,优先权还可以根据以下几项确定,不限于此美元收入、对有价值客户的影响、对任务关键操作的影响,或是上述的结合。此外,优先权可以被根据以下几项确定,但不限于此通过算法确定、通过表格、通过用户输入或是通过历史数据。继续到步骤675,评估合理变更的可行性。例如,由于物理约束(例如已有的操作人员、系统中断,通信中断等),在当前时间,使变更生效的必需步骤有可能或者不可能。因此在步骤675中,要对变更是否可行做出决策。如果确定变更不可行,则过程继续到步骤685,该步骤是一个报告变更不可行的可选步骤。报告可能给日志、操作人员或者变更的预期受益者(例如要求应用程序被执行的企业)。在报告之后,从合理变更集合中移去该变更。如果在步骤675确定变更可行,则过程继续到步骤680,在该步骤开始使得变更生效的必需动作,并且报告变更已经完成,报告是可选的。报告可能给日志、操作人员或者变更的预期受益者,或者给与该变更关联的出资人(例如被异常终止的应用程序的所有者)。接着前进到步骤690,绘出了收集有关变更部署和对其进行记录的步骤。在步骤695,过程退出并返回到图3的方法步骤310。
虽然已经针对本发明的说明性和被实施的实施例具体示出和描述了本发明,但是,本领域熟练技术人员将理解,不脱离本发明的精神和范围,可以在形式和细节方面做上述及其他修改,本发明仅受所附权利要求的范围限制。
权利要求
1.一种用于配置分布式计算系统的元素的方法,包含步骤a)确定一个或多个涉及被配置的分布式环境的元素的系统量度;b)响应一个或多个系统量度,确定系统价值,所述价值根据一个或多个价值标准确定;和c)根据所述被确定的系统价值,重新配置所述分布式计算环境的元素。
2.如权利要求1所述的用于配置元素的方法,其中,步骤c)包括以下步骤根据所述被确定的系统价值,确定分布式计算环境中的一个或多个潜在的变更。
3.如权利要求1所述的用于配置元素的方法,其中,步骤c)还包括根据至少一个被确定的潜在变更来确定另外的系统价值,所述另外的系统价值反映了经济后果,包括但不限于由潜在的变更导致的增加的收入,或降低的成本。
4.如权利要求2所述的用于配置元素的方法,其中,潜在的变更包括对分布式计算工作量的变更。
5.如权利要求1所述的用于配置元素的方法,其中,所述重新配置包括在所述分布式计算环境的特定地点增加或者删除特定的应用程序任务。
6.如权利要求1所述的用于配置元素的方法,其中,所述重新配置包括对分布式计算环境的配置修改。
7.如权利要求1所述的用于配置元素的方法,其中,分布式计算环境是网格。
8.如权利要求7所述的用于配置元素的方法,其中,所述重新配置包括包含从所述网格增加或者移去资源的配置修改。
9.如权利要求2所述的用于配置元素的方法,其中,确定潜在的变更被作为服务由第三方执行。
10.如权利要求1所述的用于配置元素的方法,其中,系统量度代表包括一个或多个从下面的组中选择的信息配置属性、计算和数据存储资源、性能、利用率、硬件和软件活动描述和利用率。
11.如权利要求1所述的用于配置元素的方法,其中,所述价值标准包含从包含下列内容的组中选择的一个或多个数据硬件、软件、网络和管理的成本、当前正在运行的应用程序和其他应用的价值、外部财务量度,包括当前利率、不动产成本和人工工资率,以及它们的结合。
12.如权利要求11所述的用于配置元素的方法,其中,确定系统价值的所述步骤b)包括评估系统投资回报率。
13.如权利要求11所述的用于配置元素的方法,其中,所述分布式计算网络是由一个或多个服务器和数据存储资源组成的企业网格,确定一个或多个系统量度的所述步骤a)包括监视这些服务器和数据存储资源的利用率,并从当前运行的应用程序的价值确定额外的应用程序是否可以被添加到所述企业网格而不影响正被运行的当前应用程序的结果。
14.如权利要求11所述的用于配置元素的方法,其中,根据所述被确定的系统价值重新配置所述分布式计算环境的元素的所述步骤包括一个或多个从包含下列内容的组中选择的步骤终止或者开始应用程序;配置变更;任务队列变更;把应用程序的执行转移到在相同或不同地点的其他设备。
15.如权利要求1所述的用于配置元素的方法,其中,确定涉及计算元素的至少一个系统量度的所述步骤包括确定系统量度是否是从所述系统可观测的。
16.如权利要求1所述的用于配置元素的方法,其中,确定涉及计算元素的至少一个系统量度的所述步骤包括确定系统量度是否是从所述系统可导出的。
17.如权利要求16所述的用于配置元素的方法,其中,所述量度可以从由包含下列内容的组中选择的一个或多个导出历史价值、结合其他量度、从其他量度推导,或从与事件结合的其他量度推导。
18.如权利要求1所述的用于配置元素的方法,其中,确定系统价值的所述步骤b)包括步骤利用当前资源分配来确定正在运行的应用程序的价值;确定和正在运行的应用程序的操作关联的成本;其中,所述系统价值被确定为正在运行的应用程序的价值和被确定的成本之间的差值。
19.如权利要求18所述的用于配置元素的方法,其中,确定关联成本的所述步骤包括确定操作使用中的信息技术(IT)基础架构的成本。
20.如权利要求18所述的用于配置元素的方法,其中,利用当前资源分配来确定正在运行的应用程序的价值的所述步骤包括步骤确定考虑中的应用程序是否正为了合同中规定的收入而代表另一个实体被执行,并把该应用程序运行的合同收入分配为应用程序的价值。
21.如权利要求18所述的用于配置元素的方法,其中,利用当前资源分配来确定正在运行的应用程序的价值的所述步骤包括下列步骤确定是否存在和应用程序关联的价值描述,并根据所述价值描述为该应用程序分配价值。
22.如权利要求18所述的用于配置元素的方法,其中,利用当前资源分配来确定正在运行的应用程序的价值的所述步骤还包括步骤根据从包含下列内容的组中选择的一个或多个确定价值加权应用程序是否被认为是时间关键的、任务关键的或者二者都是;和,执行应用程序的进度;和将加权因子应用到被确定的价值。
23.如权利要求22所述的用于配置元素的方法,其中,确定对环境的潜在变更的所述步骤c)包含确定潜在变更是否被基于从包含下列内容的组中选择的一个或多个对环境的变更;环境中的变更;和对从内部或外部源接收到的资源或工作的请求;以及,对每一个被确定的潜在变更评估该变更的成本的步骤;和评估使潜在变更生效的新环境的价值。
24.如权利要求2所述的用于配置元素的方法,其中,潜在变更包括在不同地点的资源上运行当前应用程序,确定系统价值的所述步骤b)包含评估在每一个地点运行所述当前应用程序的成本。
25.如权利要求2所述的用于配置元素的方法,其中,所述分布式计算系统包括网络,所述重新配置包括变更网络的元素。
26.一种用于配置分布式计算系统的元素的系统,包含用于确定涉及被配置的分布式系统的硬件和软件元素的一个或多个系统量度的装置;用于响应一个或多个系统量度确定系统价值的装置,所述价值根据一个或多个价值标准确定,其中,根据所述被确定的系统价值,所述分布式计算环境的所述元素被重新配置。
27.如权利要求23所述的用于配置分布式计算系统的元素的系统,还包含用于根据所述被确定的系统价值,确定分布式计算环境中的一个或多个潜在的变更的装置。
28.如权利要求27所述的用于配置分布式计算系统的元素的系统,其中,所述用于确定系统价值的装置包括用于根据至少一个被确定的潜在变更来确定另外的系统价值的装置,所述另外的系统价值反映了经济后果,包括但不限于由潜在的变更导致的增加的收入或降低的成本,其中,所述分布式计算环境的所述元素根据期望的另外的系统价值被重新配置。
29.一种配置分布式计算系统的系统单元的方法,所述方法包含步骤确定在至少一个系统单元上的至少一个量度的当前量度值;根据所述被确定的量度值和输入的财务数据值,确定当前系统价值;和确定可在所述分布式计算系统上进行的动作,用于获得期望的系统价值。
30.如权利要求29所述的配置系统单元的方法,还包括根据对所述分布式计算系统的潜在变更来定义期望的系统价值的步骤,其中,所述确定可在所述分布式计算系统上进行的动作的步骤包括设置对应的量度值。
31.一种配置另一个实体的分布式计算系统的系统单元的方法,所述方法包含步骤访问所述分布式计算系统的至少一个元素;确定和至少一个系统单元有关的至少一个量度的当前量度值,根据所述被确定的量度值和输入的财务数据值,确定当前的系统价值,确定可在所述分布式计算系统上进行的动作,用于通过将对应量度设置为对应的量度值获得期望的系统价值。
32.如权利要求31所述的方法,还包括步骤建议所述另一个实体执行所确定的动作。
33.一种机器可读的计算机程序设备,有形地包含了可由机器执行的程序指令,用来执行用于配置分布式计算系统的元素的方法步骤,所述方法包含步骤a)确定一个或多个涉及被配置的分布式环境的元素的系统量度;b)响应一个或多个系统量度,确定系统价值,所述价值根据一个或多个价值标准确定;和c)根据所述被确定的系统价值,重新配置所述分布式计算环境的元素。
34.如权利要求33所述的机器可读的计算机程序设备,其中,步骤c)包括以下步骤根据所述被确定的系统价值,确定分布式计算环境中的一个或多个潜在的变更。
35.如权利要求34所述的机器可读的计算机程序设备,其中,步骤c)还包括根据至少一个被确定的潜在变更来确定另外的系统价值,所述另外的系统价值反映了经济后果,包括但不限于由潜在的变更导致的增加的收入或降低的成本。
全文摘要
一种方法和系统,用于根据对其价值增加和成本影响的评估,配置分布式计算系统的元素。用于配置分布式计算系统的元素的系统和方法包括步骤确定一个或多个涉及被配置的分布式系统的硬件和/或软件元素的系统量度;响应一个或多个系统量度,确定系统价值,所述价值根据一个或多个价值标准确定;和根据所述被确定的系统价值,重新配置所述分布式计算环境的元素。重新配置步骤还包括,根据所述被确定的系统价值,确定分布式计算环境中的一个或多个潜在的变更的步骤,和根据至少一个被确定的潜在变更来确定另外的系统价值的步骤,所述另外的系统价值反映了经济后果,包括但不限于由潜在的变更导致的增加的收入或降低的成本。
文档编号H04L29/08GK1771479SQ03826390
公开日2006年5月10日 申请日期2003年7月21日 优先权日2003年4月30日
发明者小艾德华·P·克拉克, 罗尔莱尼·M·赫格尔, 马塞尔-古塔林·罗素, 弗兰克·A·沙法, 埃迪特·H·斯藤 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1