首页> 中国专利> 服务器管理程序、管理服务器以及虚拟服务器配置方法

服务器管理程序、管理服务器以及虚拟服务器配置方法

摘要

在对多个物理服务器配置多个虚拟服务器时,从物理服务器的处理能力及其耗电量的观点出发进行高效的配置。首先,基于多个虚拟服务器的各自的直到当前为止的规定期间中的第1负荷,预测各虚拟服务器的将来的第2负荷。接下来,以使得对物理服务器配置的一个或者多个虚拟服务器的第2负荷的总和相对于该物理服务器的处理能力,在规定的比率的范围内的方式,基于各虚拟服务器的第2负荷,决定用于对多个物理服务器配置多个虚拟服务器的计划。并且,按照该计划,进行配置的指示(再配置的执行)。

著录项

  • 公开/公告号CN102449603A

    专利类型发明专利

  • 公开/公告日2012-05-09

    原文格式PDF

  • 申请/专利权人 富士通株式会社;

    申请/专利号CN200980159500.7

  • 发明设计人 高见浩之;

    申请日2009-06-01

  • 分类号G06F9/50;G06F9/46;

  • 代理机构北京集佳知识产权代理有限公司;

  • 代理人李伟

  • 地址 日本神奈川县

  • 入库时间 2023-12-18 05:08:35

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-04-17

    未缴年费专利权终止 IPC(主分类):G06F9/50 授权公告日:20141008 终止日期:20180601 申请日:20090601

    专利权的终止

  • 2014-10-08

    授权

    授权

  • 2012-06-27

    实质审查的生效 IPC(主分类):G06F9/50 申请日:20090601

    实质审查的生效

  • 2012-05-09

    公开

    公开

说明书

技术领域

本发明涉及在多个物理服务器上使多个虚拟服务器动作的虚拟计算的技术,更具体而言,涉及对物理服务器配置虚拟服务器时的计划。

背景技术

通过近些年的虚拟服务器技术的发展,在物理服务器上使多个虚拟服务器动作、和使虚拟服务器保持运转的状态不变在不同的物理服务器之间移动的技术(在线迁移)得以被应用。关于迁移,例如在专利文献1中提到。

专利文献1:日本特开2006-244481号公报。

然而,在与使用运转中的一个或者多个物理服务器得到的性能的总和进行比较,配置对象的多个虚拟服务器产生的负荷过低的情况下,会导致物理服务器无用地运转。即,在该情况下,从运转的物理服务器的耗电量的观点来看为非高效的。

相反,若与使用运转中的一个或者多个物理服务器得到的性能的总和进行比较,配置对象的多个虚拟服务器产生的负荷过高,则运转的物理服务器中没有处理上的富余,不能应对突发性的虚拟服务器负荷的上升,存在处理期间延迟的可能性。

发明内容

由此,本发明的一个侧面的目的在于,提供一种在对多个物理服务器配置多个虚拟服务器时,从物理服务器的处理能力及其耗电量的观点来看,进行高效的配置的服务器管理程序、管理服务器、虚拟服务器配置方法。

在第1观点中,提供了一种用于对多个物理服务器配置多个虚拟服务器的服务器管理程序。该服务器管理程序使计算机执行下述步骤,即:

(A)基于多个虚拟服务器的各自的直到当前为止的规定期间中的第1负荷,预测各虚拟服务器的将来的第2负荷的步骤;

(B)以使得对物理服务器配置的一个或者多个虚拟服务器的第2负荷的总和相对于该物理服务器的处理能力,在规定的比率的范围内的方式,基于各虚拟服务器的第2负荷,决定用于对多个物理服务器配置多个虚拟服务器的计划的步骤;

(C)按照所述计划,进行用于在所述多个物理服务器的一部分或者全部上配置所述多个虚拟服务器的一部分或者全部的指示的步骤。还提供了一种相同的观点的、由管理服务器执行的虚拟服务器配置方法。

在第2观点中,提供了一种用于对多个物理服务器配置多个虚拟服务器的管理服务器。该管理服务器具有:

(D)负荷预测部,其基于多个虚拟服务器的各自的直到当前为止的规定期间中的第1负荷,预测各虚拟服务器的将来的第2负荷;

(E)计划生成部,其以使得对物理服务器配置的一个或者多个虚拟服务器的第2负荷的总和相对于该物理服务器的处理能力,在规定的比率的范围内的方式,基于各虚拟服务器的第2负荷,决定用于对多个物理服务器配置多个虚拟服务器的计划;

(F)配置执行部,其按照所述计划,进行用于在所述多个物理服务器的一部分或者全部上配置所述多个虚拟服务器的一部分或者全部的指示。

在对多个物理服务器配置多个虚拟服务器时,能够从物理服务器的处理能力及其耗电量的观点来看,进行高效的配置。

附图说明

图1是表示实施方式的系统整体的构成的框图。

图2是示例了在实施方式的系统中负荷数据被传送的路径的图。

图3是示例了在实施方式的管理服务器中,负荷数据库的数据构造的图。

图4是示例了在实施方式的管理服务器中,服务器管理数据库的内容的一个例子的图。

图5是示出了从管理终端对实施方式的管理服务器发送管理信息的请求,并接收其响应的方式的图。

图6是示例了1个月期间中的、以1小时为单位的预测结果(运转期间、或者停止期间)的图。

图7是对图6进一步附加了以1小时为单位的负荷值的例子的图。

图8是示出了168小时(1周的期间)的全部的时间中的负荷值的预测例的图。

图9是在实施方式的管理服务器中,按照负荷预测算法的、负荷值的预测处理的流程图。

图10是示例了某时间区间中的各虚拟服务器的负荷预测值、以及各物理服务器的处理能力值的图。

图11是示出了在实施方式的管理服务器中,最佳配置生成部的处理的流程图。

图12是示出了图11中的最佳化处理的流程图。

图13是示出了实施方式的管理服务器中的配置计划的一例的图。

图14是示出了实施方式的管理服务器中的再配置执行的例子的图。

图15是示出了实施方式的管理服务器中的再配置执行的例子的图。

图16是实施方式的管理服务器中的再配置处理的流程图。

图17是示出了在实施方式的管理服务器中,在物理服务器中故障或者故障预知产生时的处理的流程图。

图18是示出了在实施方式的管理服务器中,物理服务器通过维护更换等恢复正常的情况下的处理的流程图。

具体实施方式

(1)系统构成

下面,对包含实施方式的管理服务器的网络系统(以下仅称为“系统”)的整体构成,参照图1进行说明。

如图1所示,在该系统中管理服务器2、管理终端3以及管理对象服务器群4经由网络相连接。在该系统中由管理服务器2进行控制,以使得对管理对象服务器群4中的各物理服务器,配置一个或者多个虚拟服务器。此时,希望从物理服务器的处理能力及其耗电量的观点来看,进行高效的虚拟服务器的配置。

如图1所示,管理对象服务器群4包含多个虚拟服务器(图中用“V”表示。)、以及多个物理服务器(图中用“P”表示。),其成为由管理服务器2经由网络管理的对象的服务器群。这里,物理服务器是用于虚拟服务器进行动作的平台,其具备计算机硬件以及管理程序(hypervisor)等虚拟服务器管理软件。

虚拟服务器是在物理服务器上以软件的形式实现的服务器。在虚拟服务器上一个以上的业务(应用程序)进行动作。还存在进行不同业务的虚拟服务器多个组合后被配置在物理服务器上的情况、和进行相同业务的多个虚拟服务器被配置在不同物理服务器上的情况。

另外,虚拟服务器的数据可以被保存在与物理服务器直接连接的盘装置中,还可以被保存在与物理服务器分开存在的、通过网络或者直接结线连接的共用盘(SAN(Storage Area Network:存储区域网络)、NFS(NetworkFile System:网络文件系统)、iSCSI(Internet Small Computer SystemInterface:小型计算机系统接口)等)中。此外,不对保存有虚拟服务器的数据的盘的物理介质的种类进行限定。

管理服务器2与管理对象服务器群4可经由网络进行通信,但其相对管理对象服务器群4独立存在,并对系统整体进行统一控制。

如图1所示那样,管理服务器2具有系统控制部21、负荷数据库(负荷DB)22、服务器管理数据库(服务器管理DB)23、负荷预测部24、最佳配置生成部25(计划生成部)、再配置执行部26(配置执行部)、故障监视部27、和配置计划数据保存部28。该管理服务器2的各构成要素可以被收纳在物理上单一的服务器中,也可以按构成要素存在于多个服务器。

管理终端3是具有管理信息显示部31的客户端。管理终端3与管理服务器2直接、或者经由网络连接。图1示出了管理终端3经由网络与管理服务器2连接的例子。其中,管理信息显示部31可以安装于管理终端3,还可以安装于管理服务器2。图1示出了管理信息显示部31被安装于管理终端3的例子。

(2)管理服务器的构成

其次,对图1所示的管理服务器2的各构成要素,进一步详细地进行说明。

(系统控制部21)

系统控制部21主要由微控制器构成,进行管理服务器2整体的控制、各数据库的管理、以及向管理服务器2的各部的指令的发出。在管理服务器2由多个计算机构成的情况下,系统控制部21总括该多个计算机全体。此外,系统控制部21接收来自管理终端3的请求、以及基于该请求发送应该在管理终端3显示的数据。

(负荷数据库22)

在负荷数据库22中储存有各虚拟服务器的过去的负荷数据。

这里,负荷数据包括各虚拟服务器的负荷值、以及涉及各虚拟服务器的动作状态(运转或者停止)的信息(以下称为“动作信息”)。

包含在负荷数据中的负荷值,只要是能够与下述的处理能力值进行比较的指标即可。负荷值例如可以是CPU、存储器或者盘等计算机的资源所涉及的使用率、或者是将这些资源综合后的指标值,还可以是执行某业务量所需要的计算能力的基准值。

不对负荷数据被储存到负荷数据库22时的路径、储存方法、储存时机等进行限定。例如,如果言及负荷数据被储存到负荷数据库22时的路径,则可以构成为,设置具有在虚拟服务器侧对负荷数据进行测量,并向管理服务器2定期发送的功能的代理器,还可以构成为,设置针对虚拟服务器从管理服务器2定期取得负荷数据的管理器。还可以构成为,经由在物理服务器上进行动作管理虚拟服务器的管理程序、或者物理服务器的接口向管理服务器2发送负荷数据。

图2是示例了在该系统中负荷数据被传送的路径的图。

在图2的(a)所示的例中,系统控制部21对服务器管理数据库23进行查询,来取得成为负荷数据取得的对象的虚拟服务器的信息(例如,虚拟服务器ID、IP地址等表示网络上的位置的特定信息)。系统控制部21基于该虚拟服务器的信息经由网络,来查询对象的虚拟服务器进行动作的物理服务器上的管理程序。在图2的(a)所示的例中,系统管理程序具备读取虚拟服务器的负荷数据的机制,针对来自系统控制部21的查询,返回对象的虚拟服务器的负荷数据。取得了对象的虚拟服务器的负荷数据的系统控制部21将负荷数据记录到负荷数据库22的该虚拟服务器ID的记录中。通过将以上的处理对全部虚拟服务器反复进行,来取得某时刻的全部的虚拟服务器的负荷数据。通过按1分钟等一定期间反复执行该数据取得处理,来对负荷数据库22储存负荷数据。

在图2的(b)所示的例中,与图2的(a)不同,示出了在虚拟服务器上设置有发送负荷数据的代理器的情况。此时,虚拟服务器上的代理器不经由管理程序,而直接对管理服务器2发送负荷数据。接收到负荷数据的系统控制部21将发送了负荷数据的虚拟服务器与服务器管理数据库23进行对照,并记录到负荷数据库21的该虚拟服务器ID的记录中。

此外,在图1以及图2中,以负荷数据库22与服务器管理数据库23作为各自独立的数据库存在的情况为前提进行了说明,但还可以构成为作为单一数据库而构成(单一表格)。

每隔一定期间记录到负荷数据库22中的负荷数据所包含的负荷值可以是瞬时值(1个样本),也可以是平均值(多个样本的平均值),还可以是合计值(多个样本的合计值)。在决定基于多个样本记录的负荷数据的情况下,对该样本数没有特别限定。另外,负荷数据的取得间隔(所述的一定期间)被至少设定为下述的负荷预测所需要的间隔以下。

如上述那样,在记录到负荷数据库22中的负荷数据中,不仅有各虚拟服务器的负荷值,还包含各虚拟服务器的动作信息。该动作信息在下述的负荷预测中,被用于计算考虑了虚拟服务器的停止期间的、准确的预测值。

在图2的(a)所示的例中,在系统控制部21对管理程序进行查询时,同时取得对象的虚拟服务器的动作信息和负荷值,并将包含负荷值和动作信息的负荷数据记录到负荷数据库22中。

在图2的(b)所示的例中,在虚拟服务器的启动时以及停止时,虚拟服务器、或者管理程序对系统控制部21通知虚拟服务器的动作状态的变更。基于该通知,系统控制部21将虚拟服务器的动作信息记录到负荷数据库22中。

图3表示负荷数据库22的数据构造的例子。

图3中,在负荷数据库22中,对应于多个记录(记录1、2、…、m),记录有各虚拟服务器ID(VM1、VM2、…、VMm)、和相应的虚拟服务器的负荷数据。虚拟服务器ID是用于将负荷数据库22上的虚拟服务器、与服务器管理数据库23上的虚拟服务器建立联系的信息。如图3所示那样,负荷数据包含有取得了负荷数据的每个时刻的、虚拟服务器的负荷值和动作信息。在图3中,作为负荷数据的记录时刻,作为一个例子示出了记录有以1分钟为单位的实际时刻的例子,但是未必需要记录实际的时刻本身。也可以记录从记录的开始时刻的偏移量,还可以记录能够确定记录时刻的字符串。

(服务器管理数据库23)

在服务器管理数据库23中,记录有物理服务器和其处理能力一览表以及虚拟服务器一览表。如果能够从管理服务器进行访问,则物理服务器的数据与虚拟服务器的数据可以作为各自独立的数据库而存在。

各物理服务器的处理能力值是表示与各物理服务器的处理能力(或者计算能力)相关的性能的指标值,只要是与上述的负荷值能够比较的可以为任意的值。处理能力值例如可以是表示CPU、存储器或者盘等的计算机的资源的值(计算速度、存储器容量等)、或者可以是将这些资源综合后的指标值。

图4示出了服务器管理数据库23的表格(物理服务器表格、虚拟服务器表格)包含的内容的一个例子。这里,n个物理服务器与m个虚拟服务器成为管理对象。其中,一般情况下,虚拟服务器的数量多于物理服务器的数量(m>n)。

在物理服务器表格中,与记录1~n对应地包含有n个物理服务器的特定信息(例如地址)以及处理能力值。如图4所示,在物理服务器表格中,对应于各记录还包含有故障信息和动作信息。物理服务器的故障信息是指关于物理服务器是否正常的信息(表示“正常”或者“故障”。)。物理服务器的动作信息是指与物理服务器的动作状态相关的信息(表示“运转”或者“停止”。)。该故障信息以及/或者动作信息,在生成后述的配置计划时,对计划对象的物理服务器的确定有用。

在虚拟服务器表格中,与记录1~m对应地包含有m个物理服务器的特定信息、虚拟服务器ID以及虚拟服务器的映像(image)数据。特定信息是指用于在管理服务器2内能够将物理服务器或者虚拟服务器唯一确定并能够访问的信息,例如为网络上的计算机名或地址等。图4中,作为特定信息示例了地址。虚拟服务器ID用于与负荷数据库22上的记录联立对应关系。

在图4的服务器管理数据库23中,另外,图4所示的数据构成只是示例,也可以通过适当增加物理服务器以及/或者虚拟服务器的管理所需要的信息来构成。

(负荷预测部24)

负荷预测部24按照下述的负荷预测算法进行动作,并基于过去的负荷数据,进行特定的虚拟服务器的特定的期间中的、将来的负荷值的预测(负荷预测)。在负荷预测时,针对某程度上长的一定期间(例如1周、1个月)、或者整个期间,参照负荷数据库22中包含在各虚拟服务器的负荷数据中的负荷值与动作信息。在以下的说明中,把预测出的负荷值(第2负荷)适当地称为“负荷预测值”。对于负荷预测算法将在下面详细地进行说明。

(最佳配置生成部25)

作为计划生成部的最佳配置生成部25,按照下述的最佳配置生成算法进行动作,并基于负荷预测部24预测出的负荷值,生成针对物理服务器的虚拟服务器的最佳的配置计划。这里,“最佳的配置”是指,对配置在某物理服务器上的多个虚拟服务器预测的负荷值的合计相对于该物理服务器的处理能力值,在适当的比率的范围(允许范围)之内。为了具有能够应对虚拟服务器的突发性的负荷上升的富余而设置该允许范围的上限,为了通过无浪费地利用物理服务器的性能,并使运转的物理服务器的台数止于最小限来实现耗电量的减少而设置允许范围的下限。

最佳配置生成部25在生成配置计划时,分别参照服务器管理数据库23以及负荷预测部24。对于最佳配置生成算法,将在下面详细地进行说明。

(再配置执行部26)

再配置执行部26按照最佳配置生成部25生成的配置计划进行虚拟服务器的再配置。再配置执行部26具有用于发出迁移的指示的接口。该接口主要利用了管理程序(hypervisor)等虚拟服务器管理软件所提供的接口。

对于用于执行再配置的迁移的方法不进行限定。如果迁移对象的虚拟服务器在停止中,再配置执行部26则进行离线迁移,而迁移对象的虚拟服务器在运转中的情况下,则可以先停止虚拟服务器之后再进行离线迁移。另外,在迁移对象的虚拟服务器在运转中的情况下,再配置执行部26也可以进行在线迁移。

再配置执行部26具有能够指示针对物理服务器的电源的投入及停止的接口、以及能够指示针对虚拟服务器的迁移的接口。

再配置执行部26,对于再配置的执行结果为虚拟服务器数为0的物理服务器,使该物理服务器的电源停止。另外,再配置执行部26,在再配置的执行结果为需要新起动物理服务器时,使该物理服务器起动。并且,再配置执行部26,在该物理服务器发生故障时(使故障信息表示“故障”时),使该物理服务器的电源停止,并使另外的物理服务器起动。电源的投入以及停止所使用的接口可以是物理服务器自身具有的、物理服务器的卖家所提供的控制软件、一般的工具或者基于独自安装的接口。另外,也不对该接口中的协议以及控制路径进行限定。

此外,在执行再配置时,当在进行在线迁移时需要成为缓冲的物理服务器的情况下,也可以暂时起动未运转的物理服务器。

另外,再配置执行部26的、针对物理服务器的电源投入及停止的指示、针对虚拟服务器的迁移的指示可以通过任何协议进行。作为这样的协议的例子,能够举出了SNMP(Simple Network Management Protocol:简单网络管理协议),IPMI(Intelligent Platform Management Interface:智能平台管理接口)、SMASH-CLP(System Management Architecture forServer Hardware Command LineProtocol,服务器硬件系统管理体系结构命令行协议)。

(故障监视部27)

故障监视部27对各物理服务器的状态(正常/故障)进行监视,在故障产生的情况下,将服务器管理数据库23上的物理服务器所对应的记录的故障信息改写为“故障”。另外,在产生了故障的物理服务器已恢复的情况下,将该物理服务器所对应的记录的故障信息改写为“正常”。

(配置计划数据保存部28)

在配置计划数据保存部28中,保存有最佳配置生成部25生成的配置计划。再配置执行部26参照保存在配置计划数据保存部28中的配置计划来执行再配置。此外,配置计划被定期地更新。

(3)管理终端的构成

接下来,对于图1所示的管理终端3的构成要素进一步进行说明。

(管理信息显示部31)

管理信息显示部31基于从管理服务器2提供的数据,显示包含系统的运用信息的各种信息。管理信息显示部31所显示的信息例如为以下的信息。

·物理服务器、虚拟服务器的详细以及一览表

·虚拟服务器负荷数据(负荷值、动作信息)

·虚拟服务器的负荷预测值

·虚拟服务器的配置计划

·虚拟服务器的当前的配置状况

图5是表示从管理终端3对管理服务器2发送管理信息的请求,并接收其响应的方式的图。在图5中,在接收到管理信息的请求的管理服务器2中,系统控制部21参照负荷数据库22或者服务器管理数据库23取出请求涉及的管理信息,并向管理终端3发送管理信息。在管理终端3中,使作为来自管理服务器2的响应而接收到的管理信息显示在管理信息显示部31。由此,例如使得对管理终端3进行操作的系统管理者能够用视觉识别上述管理信息。

(4)负荷预测算法

接下来,参照图6~图9对安装在管理服务器2的负荷预测部24的负荷预测算法的一个例子详细地进行说明。

在负荷预测算法中,首先在计算各虚拟服务器的将来的负荷预测值(第2负荷)之际,分析各虚拟服务器是24小时运转的服务器,还是存在停止期间(或者运转期间)的服务器。并且,对于存在停止期间的服务器,预测其停止期间。

作为存在停止期间的虚拟服务器,例如以适用如周末或夜间不进行业务那样的利用方法的虚拟服务器为典型。在计划了停止期间的情况下,负荷预测算法可以将该停止期间的计划作为停止期间的预测值直接利用。该情况下,系统管理者可以在服务器管理数据库23预先登记虚拟服务器的运转计划。

在未计划停止期间的情况下,负荷预测算法例如通过针对1日中的某时间区间(特定的1小时),经数周对动作信息(负荷数据库22内的信息;图3参照)进行分析,来预测(计算)停止期间。例如根据虚拟服务器的动作信息,计算在1日的某特定时间区间中该虚拟服务器处于运转中的比率(运转率),以该运转率为规定阈值以下为条件,判断为该特定时间区间为停止期间,由此来进行该分析。为了计算停止期间而作为基础的动作信息能以日为单位、周为单位、或者以月为单位、还可以将这些组合。

此外,在负荷预测算法中,区分运转期间与停止期间的原因在于,假设计算出整个期间中的负荷值的平均,由于该平均值是包含停止期间计算得出的,所以是比运转中的负荷值的平均低的值,不符合实际情况。

如上述那样,则能够例如在1个月的期间中以1小时为单位,预测是运转期间、还是停止期间。图6是示例了1个月期间中的、以1小时为单位的预测结果(运转期间、或者停止期间)的图。图6中示例了在将横轴以1小时为单位的0~23小时,将纵轴以1日为单位的0~30日的矩阵中,灰色表示的时间为虚拟服务器的停止期间,白色表示的时间为虚拟服务器的运转期间。

负荷预测算法,也可以是,根据图6所示的以1小时为单位的数据,预测特定的虚拟服务器的停业日、营业日以及工作时间。在以下的说明中,将以1小时为单位的运转期间及停止期间分别称为运转时间及停止时间。

负荷预测算法针对虚拟服务器,将运转时间低于规定的阈值(例如,30%)的日判断为该虚拟服务器的“停业日”。如果该停业日每隔7日周期性地产生,则该虚拟服务器在星期六及星期日为停业日,可以预测将来也在星期六及星期日不运转。相反,负荷预测算法针对虚拟服务器,将运转时间高于规定的阈值(例如30%)的日判断为该虚拟服务器的“营业日”。

另外,负荷预测算法将1个月期间的营业日中的、低于规定的阈值(例如30%)的日数中成为运转时间的特定的时间段判断为“停业时间”。例如在图6的例子中,该虚拟服务器从早2点到6点为停业时间,可以预测将来也从2点到6点不运转。另外,负荷预测算法将1个月期间的营业日中的、高于规定的阈值(例如30%)的日数中成为运转时间的特定的时间段判断为“工作时间”。

在负荷预测算法中,优选仅以虚拟服务器的营业日的营业时间为对象执行以下所述的、该虚拟服务器的负荷值的预测方法。

接下来,对基于负荷预测算法的负荷值的预测方法进行说明。

图7是针对图6进一步附加了以1小时为单位的负荷值的例的图。在图7所示的例子中,灰色所表示的虚拟服务器的停止时间的负荷值全部为0。

下面,对负荷预测算法以168小时为周期(1周的周期)依次预测负荷值的方法进行说明。在该方法中,利用过去的数周的期间、例如10周间的过去的数据(168小时周期的负荷值的数据×10),执行关于每周的、各个小时的负荷值的移动平均处理,由此预测1周的期间的负荷值。此时,若针对10周的期间着眼于特定的1小时,则对于该特定的1小时为运转时间、还是停止时间,在平均处理中被考虑。例如,在着眼于特定的1小时的情况下,如果是10周的期间中7周为运转时间(3周为停止时间),则把成为运转时间的7小时的负荷值的合计除以7后的值预测为该特定的1小时的负荷预测值。通过进行这样的移动平均处理,来预测每周的、将来的168小时(1周)的全部的小时中的负荷值。将该168小时(1周)的全部的小时中的负荷值的预测例表示于图8。

此外,通过规定期间的移动平均处理依次预测负荷值的上述方法只不过是一个例子,也可以使用其他的统计处理(例如考虑标准偏差的处理)、以及/或者作为预测计算的基础的数据(样本)的其他的取得方法(周期的设定、时间划分的设定等)。

接下来,参照图9的流程图,对在负荷预测部24中按照负荷预测算法执行的负荷值的预测处理进行说明。图9中,步骤S10~S18的处理以m个全部的虚拟服务器Vx(x=0、1、…、m)为对象被执行。

首先,负荷预测部24参照负荷数据库22,取得例如10周的期间量的虚拟服务器Vx的负荷数据(负荷值、动作信息)(步骤S10),对所取得的虚拟服务器Vx的动作信息进行分析(步骤S12)。即,利用所取得的动作信息,可知例如每1分钟间隔的虚拟服务器Vx的状态(运转或者停止)(参照图3),因此负荷预测部24计算1日的某特定的时间区间中虚拟服务器Vx的运转率。并且,负荷预测部24以该运转率在规定的阈值以下为条件,判断为该特定的时间区间为停止时间,以运转率高于规定的阈值为条件,判断为该特定的时间区间为运转时间。通过该分析,负荷预测部24生成例如图6所示的、与运转状况相关的预测数据(步骤S14)。并且,负荷预测部24对运转期间(每1小时的运转时间)中的负荷值进行分析(步骤S16)。具体而言,负荷预测部24针对运转时间,取在步骤S10中取得的每1分钟间隔的负荷值的平均,计算该运转时间中的负荷值。由此,得到例如图7所示例那样的矩阵的数据(例如10周的期间量的数据)。并且,负荷预测部24仅以运转时间为对象,取10周的期间量的负荷值的平均,由此来取得运转时间中的预测负荷数据(步骤S18)。此时,如上述那样,如果在特定的1小时中,10周的期间中7周的期间为运转时间(3周的期间为停止时间),则把成为运转时间的7小时的负荷值的合计除以7后的值作为该特定的1小时的负荷预测值。此外,在预测负荷数据中,与负荷预测值一起还包含停止时间的信息。

通过将图9所示的处理例如每周执行,来针对全部的虚拟服务器生成每1周的负荷预测数据。

(5)最佳配置生成算法

接下来,针对安装在管理服务器2的最佳配置生成部25的最佳配置生成算法,参照图10~图13详细地进行说明。

最佳配置生成部25从负荷预测部24,针对全部的虚拟服务器取得例如将来的1周的期间量的各时间区间中的预测负荷数据。对取得预测负荷数据的时机不作特别的限定,例如可以是1小时等、比负荷数据的取样时机(图3中为1分钟)长的期间。

在最佳配置生成算法中,以使得配置于物理服务器的一个或者多个虚拟服务器的负荷预测值的总和相对于该物理服务器的处理能力在规定的比率的范围(允许范围)内的方式,基于各虚拟服务器的负荷预测值,决定用于对多个物理服务器配置多个虚拟服务器的计划。所述,为了具有能够应对虚拟服务器的突发性的负荷上升的富余而设定上述允许范围的上限,为了通过无浪费地使用物理服务器的性能,并使运转的物理服务器的台数止于最小限来实现耗电量的减少而设定允许范围的下限。例如,作为上述规定的比率,将适当值设定为70%,将上述允许范围的上限设定为80%,将下限设定为60%。

使用上述比率的范围的数值例(适当值:70%,允许范围:60~80%),下面,对计划决定的具体的方法,参照图10进行说明。图10示例了某时间区间中的各虚拟服务器V1~Vm的负荷预测值、以及各物理服务器P1~Pn的处理能力值。图10所示的负荷预测值以及处理能力值只不过是用于说明的示例,另外,两者是可比较的指标值。

例如,如图10所示那样,假设了各物理服务器的处理能力值全部为100,配置对象的多个虚拟服务器的负荷预测值的合计为500的情况。若将使虚拟服务器全部进行动作而需要的物理服务器台数设为N,则使100×N×70%≥500的不等式成立的最小整数N为最少限度所需要的服务器台数。该情况下,N≥7.14,因此需要最少8台物理服务器。这里,将全部的物理服务器的性能设为相同的,而在不相同的情况下,可以考虑对物理服务器性能的总和乘以0.7后的值成为左边。

在图10所示的例中,最佳配置生成算法中,对8台物理服务器(P1、P2、…、P8),按照负荷预测值从大到小的虚拟服务器的顺序分配到物理服务器。具体而言,在最佳配置生成算法中,按照以下的顺序进行分配,即将第1个的虚拟服务器V1分配给物理服务器P1,将第2个的虚拟服务器V2分配给物理服务器P2、…、将第8个的虚拟服务器V8分配给物理服务器P8,将第9个的虚拟服务器V9分配给物理服务器P1、…、将第16个的虚拟服务器分配给物理服务器P8。此时,在分配的虚拟服务器的负荷预测值的合计值超过了对物理服务器的处理能力值100乘以适当范围的上限80%后的80的情况下,不对该物理服务器进行分配,而分配给下一个物理服务器。在对下一个物理服务器也无法进行分配,并最终也不能对第8个物理服务器P8进行分配的情况下,新准备第9个物理服务器P9进行分配。这样,在最佳配置生成算法中,对全部的虚拟服务器进行分配,并生成某时间区间中的配置计划。

接下来,参照图11以及图12的流程图,对在最佳配置生成部25中按照最佳配置生成算法执行的配置计划的生成处理进行说明。此外,图11是表示最佳配置生成部25的处理的流程图,图12是表示图11中的最佳化处理的流程图(将上述的最佳配置生成算法做成流程图后的图)。

在图11中,以例如将来的1周的期间量的全部的时间区间Pt(t=0、1、…、max)为对象来执行步骤S20~S26的处理。

最佳配置生成部25首先,参照服务器管理数据库23,取得物理服务器与虚拟服务器的一览表(步骤S20)。由此,可知配置对象的虚拟服务器的虚拟服务器ID、以及各物理服务器的处理能力值(参照图4)。其次,最佳配置生成部25从负荷预测部24取得时间区间Pt中的全部虚拟服务器的预测负荷数据(负荷预测值、停止时间的数据)(步骤S22)。通过步骤S20以及S22,得到了时间区间Pt中的、配置对象的全部的虚拟服务器的负荷预测值、和各物理服务器的处理能力值,从而按照上述的最佳配置生成算法执行最佳化处理(步骤S24)。

参照图12,该最佳化处理如下述那样被执行。

即,首先,基于在图11的步骤S22中取得的负荷预测值的合计、和在图20中取得的、运转中的物理服务器的处理能力值,计算最低限度所需要的物理服务器的台数的初始值ntmp(步骤S30)。然后,针对时间区间Pt中的、配置对象的全部的虚拟服务器x(x=0、1、…、m)、和ntmp个物理服务器y(y=0,1,…,ntmp)执行步骤S32、S34、S36。在步骤S32以及S34中,进行将各虚拟服务器按顺序一个一个分配给物理服务器的处理。在步骤S32中,关于能否对物理服务器y配置虚拟服务器x的判断,基于配置于物理服务器的虚拟服务器的负荷预测值的总和相对于该物理服务器的处理能力是否在规定的比率的范围内而进行。

步骤S36中,在无法对物理服务器0~ntmp再进行配置、即如果是在步骤S30决定的物理服务器台数则不满足上述规定的比率的范围(允许范围)的情况下,以物理服务器存在富余为条件(步骤S38),追加1台配置目的地的物理服务器(步骤S40),并继续处理。

返回图11的说明。

若在图11中执行了最佳化处理,则决定了时间区间Pt中的最佳配置的组合(各物理服务器、与配置于各物理服务器的虚拟服务器的组合)(步骤S26)。通过以全部的时间区间为对象执行步骤S20~S26,来生成了例如将来的1周的期间中的每1小时的配置计划(步骤S28)。将该配置计划的一个例子用图13表示。在图13的例子中,示出了在YYYY/MM/DD日期的时刻10:00:00,例如对物理服务器P1配置虚拟服务器V1、V4、V7、V10、V12的预定。配置计划作为配置计划数据被保存在配置计划数据保存部28中。

(6)再配置执行部的处理

接下来,对管理服务器2的再配置执行部26的处理,参照图14~图16进行说明。

由再配置执行部26进行的处理是针对成为再配置的执行对象的时间区间(称为“对象时间区间”)的、以下的3个处理(处理6A、6B、6C)。

(处理6A)

读入对象时间区间中的配置计划数据。此外,向服务器管理数据库23查询物理服务器以及虚拟服务器的信息。

(处理6B)

对在对象时间区间中运转的物理服务器、和在对象时间区间的前一个(1小时前的)时间区间中运转的物理服务器进行比较。对一致的物理服务器(即,在两方的时间区间中运转的物理服务器)不特别做任何处理,对不一致的物理服务器(即,仅在一方的时间区间中运转的物理服务器)进行电源的投入或者停止的指示。这里,在对象时间区间中物理服务器数量增加的情况下,在进行对象时间区间的虚拟服务器的配置之前进行电源的投入。在对象时间区间中物理服务器数量减少的情况下,对于在对象时间区间停止的物理服务器的电源的断开,在将配置于该物理服务器的虚拟服务器向另外的物理服务器移动,全部的虚拟服务器成为不在该物理服务器上进行动作的状态后实施。

(处理6C)

与处理6B同样,对于对象时间区间和其前一个时间区间,对配置有各虚拟服务器的物理服务器进行比较。其结果,对所配置的物理服务器一致的虚拟服务器不做任何处理,但是对不一致的虚拟服务器进行迁移的指示。

在处理6B、处理6C的任意一个中,都是通过比较在处理6A中读入的配置计划数据来进行对象时间区间和其前一个时间区间的比较。作为用于比较的其他方法,也可以考虑通过取得与实时的运转状况相关的信息来进行的方法。在后者的方法中,还可考虑未被计划的系统管理者的操作、或者物理服务器的故障等。

在图14以及图15中表示了再配置执行的例子。

在图14的例子中,假设了如(a)所示那样,在再配置前物理服务器有8台处于运转中的情况。此时,若参照配置计划数据,可知是需要9台物理服务器的计划,则再配置执行部26如(b)所示那样,在再配置前进行投入1台物理服务器的电源的指示。并且,再配置执行部26如(c)所示那样,对被新投入电源的物理服务器发出用于进行虚拟服务器的迁移的指示。

在图15的例中,假设了如(a)所示那样,在再配置前,物理服务器有10台处于运转中的情况。此时,若参照配置计划数据,可知是使用9台的物理服务器就足够的计划,则再配置执行部26如(b)所示那样,发出用于进行虚拟服务器的迁移的指示,来执行再配置。并且,再配置执行部如26如(c)所示那样,进行断开因迁移连一个虚拟服务器都没有被配置的物理服务器的电源的指示。

接下来,参照图16的流程图对针对特定的时间区间(对象时间区间),由再配置执行部26执行的再配置处理进行说明。

在图16中,首先,再配置执行部26读出保存在配置计划数据保存部28中的配置计划数据,从该配置计划数据,读入对象时间区间中的配置一览表(关于将虚拟服务器配置于哪个物理服务器的一览表的数据)(步骤S50)。然后,再配置执行部26向服务器管理数据库23查询物理服务器及虚拟服务器的动作信息(表示“运转”或者“停止”的任意一个状态的信息)(步骤S52)。然后,再配置执行部26基于在步骤S52中得到的动作信息,对在对象时间区间和其前一个时间区间中的各物理服务器的动作状态进行比较,来调查各物理服务器的动作状态的变化(步骤S54)。并且,再配置执行部26参照负荷数据库22,对在对象时间区间和其前一个时间区间中的各虚拟服务器的动作状态进行比较,调查各虚拟服务器的动作状态的变化(步骤S56)。

然后,在对象时间区间和其前一个时间区间之间,应该增加物理服务器的数量的情况下(步骤S58为是),再配置执行部26指示投入新追加的物理服务器的电源(步骤S60),如果不需要增加物理服务器的数量,则什么都不做。然后,再配置执行部26按照在步骤S50中读出的配置计划数据,指示虚拟服务器的迁移(步骤S62)。相反,在对象时间区间和其前一个时间区间之间,需要减少物理服务器的数量的情况下(步骤S64为是),再配置执行部26则指示断开要减少的物理服务器的电源(步骤S66),如果不需要使物理服务器的数量减少,则什么都不做。

以上,参照流程图说明了再配置处理,但是在再配置的执行之际,优选设置用于检测出到达开始对象时间区间的处理的时刻这一情况的调度器。该调度器可以设置于系统控制部21,也可以设置于再配置执行部26。在对系统控制部21设置了调度器的情况下,在到达处理开始时刻的时间点,对再配置执行部26发出处理开始的指示。

另外,对于再配置处理,即使通过在线或者离线进行,也会在再配置中产生处理所涉及的开销(网络负荷等),因此在最佳配置生成部25中,优选安装考虑了能够得到使该开销尽可能减少那样的配置计划的算法。

(7)物理服务器故障时以及恢复时的处理

接下来,对作为本实施方式的管理服务器2优选的处理的物理服务器故障时以及恢复时的处理进行说明。

优选在物理服务器发生了故障的情况下,将发生故障的物理服务器上的虚拟服务器向替代的另外的物理服务器上移动。具体而言,故障监视部27对各物理服务器的状态(正常/故障)进行监视,在发生了故障的情况下(物理服务器立即停止的情况下),将服务器管理数据库23上的物理服务器所对应的记录的故障信息改写为“故障”。同时,再配置执行部26根据服务器管理数据库23上的物理服务器的故障信息变化,通过替代的另外的物理服务器的起动、及虚拟服务器的迁移来进行自动恢复。另外,最佳配置生成部25基于服务器管理数据库23上的物理服务器的故障信息的变化,将发生故障的物理服务器从计划对象的物理服务器中除去。

优选在物理服务器未发生故障而是产生了故障预兆的情况下,不立即进行将该产生了故障预兆的物理服务器向另外的物理服务器切换的处理,但是,故障监视部27在服务器管理数据库23上,将产生了故障的预兆的物理服务器所对应的记录的故障信息改写为“故障”。由此,在下一次的配置计划生成时,把产生了故障的预兆的物理服务器从计划对象的物理服务器中除去。

此外,这里,故障的预兆是指,服务器所具备的冷却用风扇的转速发生异常、或在一定期间,可校错误发生了规定次数以上的情况等、若放置则会导致故障可能性高的现象。

另外,在物理服务器通过维护更换等恢复了正常的情况下,故障监视部27将服务器管理数据库23的相应的物理服务器的故障信息改写为“正常”。由此,在最佳配置生成部25中,在下一次的配置计划生成时,会使已恢复的物理服务器组入计划对象的物理服务器中。

接下来,对物理服务器故障时以及恢复时的处理,分别参照图17以及图18的流程图进行说明。图17是表示在物理服务器上产生了故障或者故障预知的情况下的处理的流程图,图18是表示物理服务器通过维护更换等恢复了正常的情况下的处理的流程图。

在图17中,首先,故障监视部27通过对各物理服务器进行监视,来检测出物理服务器的故障/故障预兆(步骤S70)。而且,在物理服务器发生故障的情况下(步骤S72),再配置执行部26发出把配置在已发生故障的物理服务器上的虚拟服务器全部向替代的另外的物理服务器进行迁移的指示(步骤S74)。当在步骤S72中检测出物理服务器的故障的预兆的情况下,不执行步骤S74。并且,故障监视部27在服务器管理数据库23上,将检测出故障或者故障的预兆的物理服务器的故障信息改写为“故障”(步骤S76)。由此,在最佳配置生成部25中,在下一次的配置计划生成时,从运转物理服务器的候补、即计划对象的物理服务器的候补中,把检测出故障或者故障的预兆的物理服务器除去。

在图18中,首先,故障监视部27通过对各物理服务器进行监视,来检测出物理服务器的恢复(步骤S80)。而且,故障监视部27在服务器管理数据库23上将检测出恢复的物理服务器的故障信息改写为“正常”(步骤S82)。由此,在最佳配置生成部25中,在下一次的配置计划生成时,会对计划对象的物理服务器的候补组入恢复后的物理服务器。

此外,在上述的最佳配置生成算法(最佳配置生成部25的处理)中,对预先生成将来的1周的期间量的配置计划的情况进行了说明,但是,在组入到配置计划中的物理服务器发生故障或者故障的预兆的情况下,针对下一个的时间区间以后,把发生故障或者故障的预兆的物理服务器除去后再生成计划。此时,在存在与发生故障或者故障的预兆的物理服务器具有相同的处理能力、并且未被组入到配置计划的另外的物理服务器的情况下,也可以通过将该另外的物理服务器与发生故障或者故障的预兆的物理服务器进行置换,来省略计划的再生成。

虽然未对故障监视部27的、物理服务器的故障检测(恢复)方法进行特别限定,但是可以考虑例如将来自由物理服务器的卖方等提供的监视软件的事件作为触发的方法、或者故障监视部27通过与各物理服务器的通信,来收集与物理服务器的状态相关的信息的方法、根据操作者的操作的输入对与物理服务器的状态相关的信息进行取得及更新的方法等。

如以上说明那样,本实施方式的管理服务器,根据多个虚拟服务器的各自的过去的负荷数据计算负荷预测值,生成针对物理服务器的虚拟服务器的最佳的配置计划,并定期地执行再配置。对于该配置计划,以使得对配置在某物理服务器上的多个虚拟服务器预测出的负荷值的合计相对于该物理服务器的处理能力值在适当的比率的范围内的方式进行。由此,具有能够应对虚拟服务器的突发性的负荷上升的富余,并且无浪费地使用物理服务器的性能,使运转的物理服务器的台数止于最小限,从而实现了耗电量的减少,进而实现了二氧化碳排出量的减少。

另外,对于上述配置计划的生成以及再配置的执行,由于是自动进行而不需要人工操作,所以不会造成运用及管理成本的上升。

以上,虽然对实施方式的管理服务器、及其系统详细地进行了说明,但本发明的管理服务器不局限于上述实施方式,当然可以在不脱离本发明的主旨的范围内,进行各种的改进、变更。

另外,与上述实施方式的管理服务器的各部的动作相关联地公开了由该管理服务器执行的虚拟服务器配置方法。

根据该虚拟服务器配置方法,基于多个虚拟服务器的各自的直到当前为止的规定期间中的负荷值,预测各虚拟服务器的将来的负荷值(负荷预测值),以使得配置于物理服务器的一个或者多个虚拟服务器的负荷预测值的总和相对于该物理服务器的处理能力在规定的比率的范围内的方式,基于各虚拟服务器的负荷预测值,决定用于对多个物理服务器配置多个虚拟服务器的计划,并根据该计划,进行用于在多个物理服务器的一部分或者全部上配置多个虚拟服务器的一部分或者全部的指示。

可以通过程序实现上述实施方式涉及的管理服务器的各部的动作、或者上述虚拟服务器配置方法。该情况下,例如使包含在系统控制部21的微控制器(计算机)执行描述有上述虚拟服务器配置方法的顺序的服务器管理程序,由此,通过使用负荷预测部24、最佳配置生成部25、配置计划数据保存部28、以及再配置执行部26的各部的硬件资源实现了上述虚拟服务器配置方法。另外,上述程序可以作为固件被预先组入管理服务器,也可作为通用软件被管理服务器执行。

附图标记说明如下:

2…管理服务器,21…系统控制部,22…负荷数据库,23…服务器管理数据库,24…负荷预测部,25…最佳配置生成部,26…再配置执行部,27…故障监视部,28…配置计划数据保存部,3…管理终端,31…管理信息显示部,4…管理对象服务器群(多个物理服务器、多个虚拟服务器)

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号