信息处理装置和信息处理系统的制作方法

文档序号:14504856阅读:103来源:国知局

本文所讨论的实施方式涉及信息处理装置和信息处理系统。



背景技术:

过去,在一些情况下从信息处理装置构造一个系统。另外,在一些情况下,信息处理装置的多条状态信息被收集并合计,从而被存储在信息处理装置之一的存储区域中。作为现有技术,例如存在这样一种技术,其利用分布式服务器来获取中心服务器的操作状态的信息并且在中心服务器之一在处理用作客户端的相应众多个人计算机(PC)的请求方面处于过载状态的情况下快速地对各个PC做出回应。另外,存在这样一种技术,其中服务器管理装置管理物理服务器组以操作虚拟服务器组,并且其中,在操作包括布置在物理服务器组中的虚拟服务器的集群系统(cluster system)的时候,基于虚拟服务器组的负荷状态来管理虚拟服务器的布置状态。另外,存在这样一种技术,其中用于控制信息处理装置的控制装置收集各个信息处理装置上的负荷,并且其中,在负荷之一超过第一阈值的频度超过第一比率的情况下,控制装置终止在超过第一比率的信息处理单元上工作的虚拟机。

在日本特开专利公布No.9-269925、日本特开专利公布No.2011-90594和日本特开专利公布No.2015-210576中公开了现有技术的示例。



技术实现要素:

根据本发明的一方面,一种包括在信息处理系统的多个信息处理装置中的信息处理装置,该信息处理装置包括存储器以及联接至存储器的处理器,并且该处理器被配置为从所述多个信息处理装置中的每一个获取表示所述多个信息处理装置上的负荷的多条负荷信息,执行合计所获取的多条负荷信息的第一合计处理,基于所获取的多条负荷信息来确定第一合计处理是否要被分配,当信息处理装置确定第一合计处理要被分配时,向包括在多个信息处理装置中的至少两个信息处理装置发送第二合计处理的执行请求,所述第二合计处理是针对通过按照所述至少两个信息处理装置的数量划分所述多个信息处理装置而获得的多个装置组中的每一个的合计处理,并且从所述至少两个信息处理装置接收第二合计处理的结果。

附图说明

图1是示出根据本发明实施方式的信息处理系统的操作的示例的说明图;

图2是示出使用信息处理系统的示例的说明图;

图3是示出第一节点的硬件配置的示例的说明图;

图4是示出信息处理系统的功能配置的示例的说明图;

图5是示出在信息处理系统的初始状态下多条性能信息的收集的示例的说明图;

图6是示出第一节点上的负荷增加的情况的示例的说明图;

图7是示出时间序列数据库的存储内容的另一示例的说明图;

图8是示出在创建合计单元之后多条性能信息的收集的示例的说明图;

图9是示出第三节点上的负荷增加的情况的示例的说明图;

图10是示出在创建合计单元之后多条性能信息的收集的示例的说明图;

图11是示出第三节点上的负荷减小的情况的示例的说明图;

图12是示出第三节点上的负荷显著增加的情况的示例的说明图;

图13是示出子合计单元中的性能信息收集处理的过程的示例的流程图(第一部分);

图14是示出子合计单元中的性能信息收集处理的过程的示例的流程图(第二部分);

图15是示出代表节点中的父合计单元中的性能信息收集处理的过程的示例的流程图;

图16是示出在父合计单元中接收到责任改变请求时的处理的过程的示例的流程图;

图17是示出在父合计单元中接收到消失请求时的处理的过程的示例的流程图;以及

图18是示出在增加或减少节点时执行并且由代表节点执行的处理的过程的示例的流程图。

具体实施方式

然而,根据现有技术,随着信息处理装置的数量增加,在确定用于合计各个信息处理装置的多条状态信息的合计处理的负荷分配时施加的负荷增加。具体地,作为执行负荷分配的指标,要参考各个信息处理装置上的负荷。然而,由于表示各个信息处理装置上的负荷的信息被存储在特定信息处理装置的存储区域中,相关信息处理装置上施加的负荷增加。

作为一个方面,本技术的目的在于提供一种信息处理装置、信息处理系统和状态信息收集程序,其各自能够减轻确定用于合计各个信息处理装置的多条状态信息的合计处理的负荷分配时施加的的负荷。

以下,将参照附图详细描述所公开的信息处理装置、信息处理系统和状态信息收集程序的实施方式。

图1是示出根据本发明实施方式的信息处理系统100的操作的示例的说明图。信息处理系统100是利用被称为软件定义存储(SDS:Software Defined Storage)的技术由信息处理装置构造成的系统。信息处理装置中的每一个是例如服务器或存储装置的计算机。以下,将信息处理装置中的每一个称为“节点”。例如,节点位于特定数据中心(DC)内。另外,节点被视为一个存储装置的分布式架构可应用于信息处理系统100。另外,能够利用横向扩展(scale-out)来改进信息处理系统100的性能。

分布式架构可具有利用时间序列数据库(DB)来存储各个节点的多条状态信息的性能监测功能。例如,性能监测功能执行各个节点的多条状态信息的收集、存储和参考。另外,节点之一包括时间序列数据库(DB)。包括时间序列DB的节点被称为“代表节点”。尽管在信息处理系统100的操作期间代表节点基本上不改变,有时另一节点变为代表节点,例如在前任代表节点未能正确地工作的情况下。

节点中的每一个的状态信息包括相关节点的性能信息、相关节点的配置信息以及相关节点的处理信息。节点中的每一个的性能信息例如是中央处理单元(CPU)使用率、网络使用率、每秒输入/输出(IOPS)或盘使用率。节点中的每一个的配置信息是表示相关节点的物理资源的配置以及在相关节点上工作的虚拟机的配置的信息。例如,节点中的每一个的处理信息例如是表示相关节点的复制处理等的进展状态的信息。例如,节点中的每一个的状态信息例如可利用OS所准备的“stat”调用或文件引用来获得。以下,为了描述简单起见,将在节点中的每一个的状态信息是相关节点的性能信息的假设下提供描述。

这里,在实际系统中,每单位时间存储在时间序列DB中的多条性能信息与物理资源和虚拟资源结合具有几千至几十万个单元。此时,诸如在每一时间的多条性能信息的总和和平均值(例如,所有盘的总IOPS和平均IOPS的信息)的合计值在每个参考被计算的情况下占用处理负荷和时间,并且合计值被参考的频度相对高。

关于例如所述合计值,可以想到这样一种方法,其中代表节点在合计各个节点的多条性能信息之后将各个节点的多条性能信息存储在时间序列DB中。然而,在相关方法中,用作合计目标的所有性能信息被集合在代表节点中,并且代表节点执行用于计算合计值的合计处理。因此,存在代表节点的CPU或网络成为瓶颈的可能性,从而影响诸如盘写入的正常业务操作。

因此,可以想到用于计算合计值的合计处理被分配,从而将负荷分配到节点。然而,在相关方法中,在确定负荷分配时施加的负荷随着节点数量的增加而增加。具体地,作为动态地执行负荷分配的指标,要参考各个节点上的CPU负荷以及其上的网络负荷。然而,诸如各个节点上的CPU负荷以及其上的网络负荷的多条信息由时间序列DB保持。因此,包括时间序列DB的代表节点上的负荷以及用作负荷分配目的地的节点与代表节点之间的网络上的负荷增加。另外,由于代表节点确定要被分配负荷的节点,所以代表节点上的负荷增加。

因此,在本实施方式中,将描述基于自身节点的负荷和各个节点上的传输负荷来确定合计处理的负荷分配。

通过使用图1,将描述信息处理系统100的工作的示例。在图1所示的信息处理系统100中,多个节点被构造成节点#1、#2、#3、#4、…。这里,在以下描述中,指派有“#x”的符号表示与节点#x有关。“x”是自然数。另外,在图1中,粗箭头各自表示对另一节点的指令,普通箭头各自表示数据的传输。

如图1所示,由于节点#1包括时间序列DB 110,所以节点#1用作代表节点。另外,信息处理系统100合计包括由各个节点获取的、表示节点上的负荷的多条负荷信息111的多条性能信息112。多条负荷信息111中的每一个例如是CPU使用率或网络使用率。在图1的示例中,多条假设负荷信息111中的每一个是CPU使用率。

在图1的上部,合计处理被分配到第0合计处理120和第一合计处理121。另外,用作代表节点的节点#1执行第0合计处理120,节点#3执行第一合计处理121。尽管在图1中被省略,节点#4之后的节点之一执行第一合计处理121。

作为合计目标,第一合计处理收集节点#1至#3的多条性能信息112#1至112#3,并且将所合计的合计值发送到节点#1以执行第0合计处理120。第0合计处理120进一步合计由第一合计处理121发送的合计值,并且将所获得的合计值存储在时间序列DB 110中。图1示出节点#3的第一合计处理121被分配的示例。

如图1中的(1)所示,基于节点#3本身上的负荷以及用作节点#3的合计目标的节点#1至#3的多条性能信息112#1至112#3中所包括的多条负荷信息111#1至111#3所表示的负荷,节点#3确定是否分配第一合计处理121。这里,多条负荷信息111#1至111#3是由节点#3合计的多条信息。因此,节点#3不必参考时间序列DB 110来确定负荷分配。

例如,在节点#3本身上的负荷大于用作合计目标的节点#1至#3上的负荷的平均值与用作预定值的负荷确定值的总值的情况下,节点#3确定第一合计处理121要被分配。在图1的示例中,负荷信息111#1表示节点#1的CPU使用率为10[%]。另外,负荷信息111#2表示节点#2的CPU使用率为20[%]。另外,负荷信息111#3表示节点#3的CPU使用率为40[%]。另外,假设负荷确定值为10[%]。在这种情况下,满足节点#3本身上的负荷40[%]>(10[%]+20[%]+40[%])/3+10[%]=33.3[%]。因此,节点#3确定第一合计处理121要被分配。

在确定了第一合计处理121要被分配的情况下,如图1中的(2)所示,节点#3向包括在用作合计目标的节点组中并且不同于节点#3的两个或更多个节点中的每一个发送第二合计处理122的执行请求。这里,第二合计处理122是用于合计属于按照所涉及的两个或更多个节点的数量划分用作合计目标的节点组而获得的组之一的节点的多条性能信息112的处理。另外,被发送了第二合计处理122的执行请求的节点的数量仅需大于或等于二。然而,如果负荷增加,则仅需进一步执行分配。因此,可取的是节点的数量为二。另外,至于确定包括在用作合计目标的节点组中并且要被发送第二合计处理122的执行请求的节点的方法,例如,节点可被设定为具有最低负荷的节点以及具有第二低负荷的节点。另外,划分用作合计目标的节点组的方法可采用任何类型的划分。然而,为了均匀地分配负荷,可取的是尽可能均匀地划分用作合计目标的节点组。

例如,如图1的下部所示,节点#3分别向节点#1和#2发送第二合计处理122#1和第二合计处理122#2的执行请求。这里,第二合计处理122#1是用于合计节点#1的多条性能信息112#1的处理。另外,第二合计处理122#2是用于合计各个节点#2和#3的性能信息112#2和112#3的处理。

另外,如图1中的(3)所示,节点#3向属于对应一组的各个节点发送将相关节点的性能信息112的传输目的地改变为对对应一组执行第二合计处理122的节点的指令。例如,如图1的下部所示,节点#3指示节点#1将性能信息112#1发送给节点#1并且指示节点#2和#3将性能信息112#2发送给节点#2。另外,节点#3可指示被发送了第二合计处理122的执行请求的节点#1和#2中的每一个改变属于对应一组的节点的多条性能信息112的传输目的地。

另外,如图1中的(4)所示,节点#3向被发送了第二合计处理122的执行请求的节点发送向节点#3发送由相关节点执行的第二合计处理122的处理结果的指令。例如,如图1的下部所示,节点#3指示节点#1向节点#3发送第二合计处理122#1的处理结果,并且指示节点#2向节点#3发送第二合计处理122#2的处理结果。

另外,作为第一合计处理121,节点#3还合计用作第二合计处理122#1和第二合计处理122#2的处理结果的合计值,并且将用作第一合计处理121的处理结果的合计值发送给节点#1。

因此,图1的上部所示的第一合计处理121被分配到图1的下部所示的第一合计处理121、第二合计处理121#1和第二合计处理121#2。因此,分配施加在节点#3上的负荷是可能的。另外,在确定负荷分配时,节点#3不参考时间序列DB 110。因此,减轻确定负荷分配方面的负荷是可能的。

另外,在图1的描述中,尽管节点被描述为位于特定DC内,对此没有限制。所述节点中的一些节点可位于特定DC中,并且剩余节点可位于远离节点之一的远程位置中的DC中。另外,在这种情况下,在划分用作合计目标的节点组时,执行所述划分的节点可将用作合计目标的节点组划分为包括在特定DC中的节点所属的第一组以及包括在远程位置中的DC中的节点所属的第二组。另外,执行所述划分的节点可向第一组中具有最低负荷的节点以及第二组中具有最低负荷的节点发送第二合计处理122的处理请求。接下来,将利用图2来描述使用信息处理系统100的示例。

图2是示出使用信息处理系统100的示例的说明图。如图2所示,信息处理系统100联接至用户终端201以及诸如互联网、局域网(LAN)或广域网(WAN)的网络202。

用户终端201是由使用信息处理系统100的各个用户U操作的计算机。例如,用户终端201中的每一个是PC。位于例如信息处理系统100内的节点操作业务系统,并且用户U各自操作对应的一个用户终端201并且各自访问信息处理系统100,从而使用业务系统并执行业务操作。

接下来,将利用图3来描述包括在信息处理系统100中的节点#1的硬件配置的示例。应当注意,由于节点#1以外的各个节点的硬件具有与节点#1相同的硬件,将省略其描述。

图3是示出节点#1的硬件配置的示例的说明图。在图3中,节点#1包括CPU 301、只读存储器(ROM)302和随机存取存储器(RAM)303。另外,节点#1包括盘驱动器304、盘305和网络接口卡(NIC)306。另外,CPU 301与盘驱动器304和NIC 306通过总线307彼此联接。

CPU 301是管理整个节点#1的控制的算术处理装置。ROM 302是存储有诸如引导程序的程序的非易失性存储器。RAM 303是用作CPU 301的工作区域的易失性存储器。

盘驱动器304是根据来自CPU 301的控制来控制从盘305的数据读取以及向盘305的数据写入的控制装置。例如,可采用磁盘驱动器、光盘驱动器、固态驱动器等作为盘驱动器304。盘305是通过来自盘驱动器304的控制来存储写入的数据的非易失性存储器。在磁盘驱动器304例如是磁盘驱动器的情况下,可采用磁盘作为盘305。另外,在盘驱动器304是光盘驱动器的情况下,可采用光盘作为盘305。另外,在盘驱动器304是固态驱动器的情况下,可采用由半导体元件形成的半导体存储器(换言之,所谓的半导体盘)作为盘305。

NIC 306是管理内部与网络202之间的接口并且控制来自另一装置的数据输入以及去往另一装置的数据输出的控制装置。具体地,NIC 306经由网络202通过通信线路联接到另一装置。例如,可采用LAN适配器等作为NIC 306。

另外,在信息处理系统100的管理员直接操作节点#1的情况下,节点#1可包括诸如显示器、键盘和鼠类的多个硬件。

信息处理系统100的功能配置的示例

图4是示出信息处理系统100的功能配置的示例的说明图。节点各自包括控制单元400。控制单元400包括获取单元401、节点合计单元402、合计单元403和写入单元404。CPU 301执行存储在存储装置中的程序,从而使得控制单元400实现各个单元的功能。具体地,例如,存储装置的示例包括图3所示的ROM 302、RAM 303和盘305。另外,各个单元的处理结果被存储在RAM 303、CPU 301的寄存器、CPU301的高速缓存存储器等中。

按照规则的时间间隔,获取单元401利用“stat”系统调用或文件引用来获取诸如CPU使用率、IOPS或盘使用率的多条性能信息112。

在各个节点中,节点合计单元402在每一时间计算性能信息112。另外,节点合计单元402将多条性能信息112发送给合计单元403。

合计单元403合计各个节点的多条性能信息112。这里,在本发明实施方式中,在监测分布式架构的性能时,合计单元403按照分布式方式动态地布置,从而分配负荷。此时,通过使用诸如在合计过程中使用的CPU或网络的多条性能信息112作为确定标准,合计单元403动态地确定合计单元403的布置节点和分布层次的深度。因此,合计单元403避免了负荷的集中,并且使对用户U的正常业务操作的影响保持在最低。

另外,作为合计单元403的类型,定义了父合计单元和子合计单元。父合计单元表示已存在的合计单元403。子合计单元指示由父合计单元新生成的合计单元403。另外,定义了“负责合计的节点”。负责合计的节点被定义为用作合计单元403合计多条性能信息112的目标的节点,换言之,向合计单元403发送多条性能信息112的节点。应注意,在合计单元403不执行负荷分配的情况下,换言之,在合计单元403仅存在于信息处理系统100内的代表节点中的情况下,假设相关合计单元403的类型为子合计单元。

另外,在以下描述中,为了容易地理解父子关系,假设首先存在的合计单元403是合计单元403-A。另外,假设由合计单元403-A新生成的合计单元403是合计单元403-B,并且由合计单元403-B新生成的合计单元403是合计单元403-C。另外,在图4之后的附图中,为了容易地理解父子关系,合计单元403-A内的字符串被显示为“合计单元A”,合计单元403-B内的字符串被显示为“合计单元B”,合计单元403-C内的字符串被显示为“合计单元C”。另外,为了容易地理解被布置有合计单元403的节点,在一些情况下节点的符号被指派给合计单元403。例如,合计单元403-B#3是由合计单元403-A新生成的合计单元403,并且表示布置在节点#3中的合计单元403。

另外,合计单元403包括合计处理执行单元411、处理结果传输单元412、负荷分配确定单元413、改变目的地节点确定单元414、执行请求传输单元415、消失确定单元416和指令单元417。这里,尽管图4示出合计单元403-B#3包括合计处理执行单元411至指令单元417,合计单元403-A#1包括合计处理执行单元411至指令单元417。另外,合计单元403可能在任一个节点中生成。

合计处理执行单元411合计由负责合计的节点中的节点合计单元402发送的多条性能信息112以及多条性能信息112的合计值。例如,合计处理执行单元411计算总值和平均值作为多条性能信息112的合计值。合计单元403-A#1中的合计处理执行单元411等同于图1所示的第0合计处理120。另外,合计处理执行单元411#3等同于图1所示的第一合计处理121。

处理结果传输单元412将合计处理执行单元411的处理结果发送给用作处理结果传输单元412本身的父合计单元的合计单元403。另外,为了填充时间序列DB 110的各个字段,处理结果传输单元412将来自负责合计的节点的多条性能信息112本身的值发送给用作处理结果传输单元412本身的父合计单元的合计单元403。另外,位于代表节点中的处理结果传输单元412向写入单元404发送合计处理执行单元411的处理结果。

基于自身节点上的负荷以及由自身节点合计的负责合计节点组的各个节点的多条性能信息112中包括的多条负荷信息111所表示的负荷,负荷分配确定单元413确定是否分配用于合计各个节点的多条性能信息112的合计处理。这里,相关的合计处理在负荷分配确定单元413#3的情况下是图1所示的第一合计处理121,在负荷分配确定单元413#1的情况下是图1所示的第0合计处理120。例如,在通过从用作自身节点的节点#3上的负荷减去负责合计节点组上的负荷的平均值而获得的值大于负荷确定值的情况下,负荷分配确定单元413#3确定基于合计处理执行单元411的第一合计处理121要被分配。

另外,假设负荷分配确定单元413确定合计处理要被分配。在这种情况下,执行请求传输单元415向被包括在负责合计节点组中并且不同于自身节点的两个或更多个节点中的每一个发送用于合计属于按照所涉及的两个或更多个节点的数量来划分负责合计节点组而获得的组之一的节点的多条性能信息的合计处理的执行请求。这里,相关合计处理在执行请求传输单元415#3的情况下是图1所示的第二合计处理121,在执行请求传输单元415#1的情况下是图1所示的第0合计处理120。

指令单元417指示其它节点。具体地,假设执行请求传输单元415发送执行请求。在这种情况下,向属于通过按照所涉及的两个或更多个节点的数量划分负责合计节点组而获得的对应一组的各个节点,指令单元417发送将相关节点的多条性能信息112的传输目的地改变为对所述对应一组执行适当合计处理的节点的指令。另外,指令单元417向所述两个或更多个节点中的每一个发送向自身节点发送由相关节点执行的合计处理的处理结果的指令。

另外,在一些情况下,类型为父合计单元的合计单元403从第一节点接收将第一节点所执行的第二合计处理122的执行目的地改变为另一节点的改变请求,该第一节点被包括在所涉及的两个或更多个节点中,合计单元403本身的第一合计处理121上的负荷被分配至所述两个或更多个节点。这里,尽管是用作被分配了合计单元403本身上的负荷的目的地并且用作子合计单元的节点之一,在生成新子节点的情况下,第一节点用作父合计单元。另外,以下,改变请求将被称为“责任改变请求”。

在接收到责任改变请求的情况下,改变目的地节点确定单元414基于由负责合计节点组的多条性能信息112中包括的多条负荷信息111所表示的负荷来从负责合计节点组当中确定要使其执行第一节点所执行的第二合计处理122的第二节点。这里,第二节点是包括在负责合计节点组中并且不同于自身节点以及包括各个合计单元403的节点的节点。例如,第二节点是包括在负责合计节点组中并且不同于自身节点以及包括各个合计单元403的节点的节点当中具有最低负荷的节点。另外,关于第二节点,在包括在负责合计节点组中并且不同于自身节点的节点当中具有最低负荷的节点是第一节点的情况下,改变目的地节点确定单元414不必改变第一节点所执行的第二合计处理122的执行目的地,并且可确定由第一节点执行的第二合计处理122要由第一节点执行。

另外,执行请求传输单元415将由第一节点执行的第二合计处理122的执行目的地从第一节点改变为第二节点。另外,指令单元417向负责合计节点组的各个节点发送将相关节点的性能信息的传输目的地改变为第二节点的指令。另外,指令单元417向第二节点发送向自身节点发送由第二节点执行的第二合计处理122的处理结果的指令。责任改变请求将在图12中更详细地描述。

另外,在一些情况下,类型为父合计单元的合计单元403从第三节点接收使得由第三节点执行的第二合计处理122消失的消失请求,该第三节点被包括在所涉及的两个或更多个节点中,合计单元403本身的第一合计处理121上的负荷被分配至所述两个或更多个节点。在接收到消失请求的情况下,消失确定单元416基于自身节点上的负荷来确定是否使得由第三节点执行的第二合计处理122消失。在自身节点上的负荷小于或等于例如预定阈值的情况下,消失确定单元416可确定要使得由第三节点执行的第二合计处理122消失。另选地,在通过将第三节点上的负荷与自身节点上的负荷相加而获得的值小于或等于预定阈值的情况下,消失确定单元416可确定要使得由第三节点执行的第二合计处理122。

另外,假设消失确定单元416确定要使得由第三节点执行的第二合计处理122消失。在这种情况下,指令单元417向包括在负责合计节点组中并且由第三节点合计的各个节点发送将相关节点的多条性能信息112的传输目的地改变为第二节点的指令。另外,指令单元417向第三节点发送使得由第三节点执行的第二合计处理122消失的指令。

另外,在从包括在节点中的第四节点接收到第一合计处理的执行请求的情况下,合计处理执行单元411执行第一合计处理121。在例如合计处理执行单元411#3的情况下,第四节点是节点#1。

另外,将假设向节点添加新节点的情况或者节点之一被移除的情况。在这种情况下,如果合计处理被分配,则位于代表节点中的指令单元417向用作子合计单元的合计单元403发送取消合计处理的分配的指令。这里,把添加节点称为“增加”,把移除节点称为“减少”。

写入单元404在将来自合计单元403的合计值和各个节点的多条性能信息112与时间信息关联的同时向时间序列DB 110写入来自合计单元403的合计值和各个节点的多条性能信息112。时间序列DB 110的存储内容的示例示出于图6、图7等中。

接下来,将利用图5至图12描述与信息处理系统100中的多条性能信息112的合计有关的数据流程。

图5是示出在信息处理系统100的初始状态下多条性能信息112的收集的示例的说明图。在图5所示的初始状态下,在信息处理系统100内,合计单元403-A#1仅存在于用作代表节点的节点#1中。各个节点中的每一个的节点合计单元402合计由相关节点获取的多条性能信息112,并将合计值发送到合计单元403-A#1。

如图5中的(A-1)所示,合计单元403-A#1进一步合计所发送的合计值。另外,如图5中的(A-2)所示,合计单元403-A#1将自身节点上的CPU负荷和网络负荷分别与负责合计的节点上的CPU平均负荷和网络平均负荷进行比较。如图5中的(A-3)所示,在作为比较结果,自身节点上的负荷超过平均值达给定值的情况下,合计单元403-A#1设定标志。随后,如图5中的(A-4)所示,合计单元403-A#1将所计算的值发送到写入单元404。

这里,关于发送下面所示的CPU使用率作为各个节点的多条CPU负荷信息的情况,将示出合计单元403-A#1执行图5中的(A-1)至(A-4)所示的处理操作的示例。假设节点#1至#6的CPU使用率分别为60[%]、50[%]、10[%]、90[%]、20[%]和60[%]。

在图5中的(A-1)中,合计单元403-A#1根据以下计算式来计算CPU使用率的平均值。

(60+50+10+90+20+60)/6=48.3

另外,在图5中的(A-2)中,合计单元403-A#1根据以下不等式来比较自身节点上的CPU负荷与负责合计的节点上的CPU负荷。这里,假设负荷确定值为10[%]。

60>48.3+10

由于上述不等式为真,所以在图5中的(A-3)中,合计单元403-A#1设定标志。另外,在图5中的(A-4)中,合计单元403-A#1将48.3[%]作为所计算的值发送给写入单元404。

图6是示出节点#1上的负荷增加的情况的示例的说明图。图6是节点#1上的负荷增加并且在给定时间周期期间所设定的标志的数量超过给定数量的情况。在这种情况下,合计单元403-A#1参考时间序列DB 110,从而在包括在负责合计的节点中并具有较低负荷的两个节点中的每一个中生成合计单元403-B。

这里,图6示出时间序列DB 110的存储内容的示例。在图6所示的时间序列DB110中,存储有与CPU使用率有关的信息。另外,图6所示的时间序列DB 110包括记录601-1至601-4。具体地,图6所示的时间序列DB 110包括时间、CPU平均值和各个CPU的使用率的字段。这里,在图6中,为了显示的简单起见,CPU的使用率字段仅显示各个节点的CPU的符号。在时间字段中,存储有测量CPU使用率的时间。在CPU平均值字段中,存储有信息处理系统100内的所有CPU使用率的平均值。在各个CPU的使用率字段中,存储有各个CPU的使用率。另外,时间序列DB 110的存储内容不限于图6的示例。图7示出与网络的使用率有关的信息被存储在时间序列DB 110中的示例。

图6所示的时间序列DB 110的被虚线分隔的区域表示负责合计的各个节点的CPU的使用率。另外,包括在负责合计的各个节点中并且具有较低负荷的两个节点是被点划线围绕的节点#3和#5。因此,合计单元403-A#1在节点#3中生成合计单元403-B#3,并且在节点#5中生成合计单元403-B#5。另外,合计单元403-A#1确定负责合计单元403-B#3和403-B#5中的每一个的合计的节点,并且通知合计单元403-B#3和403-B#5中的每一个。在图6的示例中,例如,合计单元403-A#1将节点#1、#2和#3确定为负责合计单元403-B#3的合计的节点,并且将节点#4、#5和#6确定为负责合计单元403-B#5的合计的节点。另外,合计单元403-B#3和403-B#5中的每一个向被接受为负责合计的节点的节点通知将多条性能信息112的传输目的地改变为自身节点。另外,合计单元403-A#1与合计单元403-B#3和403-B#5之间的关系是父子关系,其中合计单元403-A#1用作父合计单元,并且合计单元403-B#3和403-B#5各自用作子合计单元。

图7是示出时间序列DB 110的存储内容的另一示例的说明图。在图7所示的时间序列DB 110中,存储有与网络有关的信息。另外,图7所示的时间序列DB 110包括记录701-1至701-4。具体地,图7所示的时间序列DB 110包括时间、NIC平均值和各个NIC的使用率的字段。这里,在图7中,为了显示的简单起见,NIC的使用率字段仅显示各个节点的NIC的符号。在时间字段中,存储有测量网络使用率的时间。在NIC平均值字段中,存储有信息处理系统100内的所有NIC的使用率的平均值。在各个NIC的使用率字段中,存储有各个NIC的使用率。

图7所示的时间序列DB 110的被虚线分隔的区域表示负责合计的各个节点的网络的使用率。另外,包括在负责合计的各个节点中并且具有较低负荷的两个节点是被点划线围绕的节点#3和#5。因此,合计单元403-A#1参考图7所示的时间序列DB 110,从而在节点#3中生成合计单元403-B#3并且在节点#5中生成合计单元403-B#5。

图8是示出在创建合计单元403-B之后多条性能信息112的收集的示例的说明图。图8示出在生成合计单元403-B#3和403-B#5之后的状态。各个节点的节点合计单元402合计由相关节点获取的多条性能信息112并且将合计值发送到包括在节点#3和#5中并且被通知相关节点是传输目的地的节点。

如图8中的(B-1)所示,合计单元403-B#3和403-B#5各自根据所发送的合计值计算每一时间的合计值的总和以及平均值。另外,如图8中的(B-2)所示,合计单元403-B#3和403-B#5各自将自身节点上的CPU负荷和网络负荷分别与负责合计的节点上的CPU平均负荷和网络平均负荷进行比较。如图8中的(B-3)所示,在作为比较结果,自身节点上的负荷超过平均值达给定值的情况下,合计单元403-B#3和403-B#5中的每一个设定标志。随后,如图8中的(B-4)所示,合计单元403-B#3和403-B#5各自将所计算的值发送给合计单元403-A#1。

这里,关于发送下面所示的CPU使用率作为各个节点的多条CPU负荷信息的情况,将示出合计单元403-B#3执行图8中的(B-1)至(B-4)所示的处理操作的示例。假设节点#1至#3的CPU使用率分别为10[%]、20[%]和40[%]。

在图8中的(B-1)中,合计单元403-B#3根据以下计算式来计算CPU使用率的平均值。

(10+20+40)/3=23.3

另外,在图8中的(B-2)中,合计单元403-B#3根据以下不等式来比较自身节点上的CPU负荷与负责合计的节点上的CPU负荷。这里,假设负荷确定值为10[%]。

40>23.3+10

由于上述不等式为真,所以在图8中的(B-3)中,合计单元403-B#3设定标志。另外,在图8中的(B-4)中,合计单元403-B#3将23.3[%]作为所计算的值发送给合计单元403-A#1。

另外,如图8中的(A-1)所示,合计单元403-A#1根据所发送的合计值计算每一时间的合计值的总和以及平均值。另外,如图8中的(A-2)所示,合计单元403-A#1将所计算的值发送给写入单元404。

图9是示出节点#3上的负荷增加的情况的示例的说明图。图9是节点#3上的负荷增加并且在给定时间周期期间所设定的标志的数量超过给定数量的情况。在这种情况下,合计单元403-B#3参考时间序列DB 110,从而在包括在负责合计的节点中并具有较低负荷的两个节点中的每一个中生成合计单元403-C。

这里,图9示出时间序列DB 110的存储内容的示例。在图9所示的时间序列DB110中,存储有与CPU使用率有关的信息。另外,图9所示的时间序列DB 110包括记录901-1至901-4。

图9所示的时间序列DB 110的被虚线分隔的区域指示负责节点#3的合计的各个节点的CPU的使用率。另外,包括在负责合计的各个节点中并且具有较低负荷的两个节点是被点划线围绕的节点#1和#2。因此,合计单元403-B#3在节点#1中生成合计单元403-C#1并且在节点#2中生成合计单元403-C#2。合计单元403-B#3确定负责合计单元403-C#1和403-C#2中的每一个的合计的节点,并且通知合计单元403-C#1和403-C#2中的每一个。在图9的示例中,例如,合计单元403-B#3将节点#1确定为负责合计单元403-C#1的合计的节点,并且将节点#2和#3确定为负责合计单元403-C#2的合计的节点。另外,合计单元403-C#1和403-C#2中的每一个向被接受为负责合计的节点的节点通知将多条性能信息112的传输目的地改变为自身节点。另外,合计单元403-B#3与合计单元403-C#1和403-C#2之间的关系是父子关系,其中合计单元403-B#3用作父合计单元,并且合计单元403-C#1和403-C#2各自用作子合计单元。

图10是示出在创建合计单元403-C之后多条性能信息112的收集的示例的说明图。图10示出在生成合计单元403-C#1和403-C#2之后的状态。各个节点的节点合计单元402合计由相关节点获取的多条性能信息112,并且将合计值发送给包括在节点#1和#2中并且被通知相关节点是传输目的地的节点。

如图10中的(C-1)所示,合计单元403-C#1和403-C#2各自根据所发送的合计值计算每一时间的合计值的总和以及平均值。另外,如图10中的(C-2)所示,合计单元403-C#1和403-C#2各自将自身节点上的CPU负荷和网络负荷分别与负责合计的节点上的CPU平均负荷和网络平均负荷进行比较。如图10中的(C-3)所示,在作为比较结果,自身节点上的负荷超过平均值达给定值的情况下,合计单元403-C#1和403-C#2中的每一个设定标志。随后,如图10中的(C-4)所示,合计单元403-C#1和403-C#2各自将所计算的值发送给合计单元403-B#3。

如图10中的(B-1)所示,合计单元403-B#3根据所发送的合计值计算每一时间的合计值的总和以及平均值。另外,如图10中的(B-2)所示,合计单元403-B#3将所计算的值发送给合计单元403-A#1。

图11是示出节点#3上的负荷减少的情况的示例的说明图。图11是在图8所示的状态之后,节点#3上的负荷减少并且在给定时间周期期间所设定的低负荷标志的数量超过给定数量的情况。在这种情况下,合计单元403-B#3向用作合计单元403-B#3的父合计单元的合计单元403-A#1发送表示使得合计单元403消失的请求的消失请求。接收到消失请求的合计单元403-A#1参考时间序列DB 110,并且在合计单元403-A#1本身上的负荷低的情况下,合计单元403-A#1使得用作子合计单元的合计单元403-B#3消失。

在向负责合计的节点通知传送目的地改变为用作父合计单元的合计单元403-A#1之后,合计单元403-B#3消失。另一方面,在合计单元403-A#1本身上的负荷不低的情况下,合计单元403-A#1不使子合计单元消失。

这里,图11示出时间序列DB 110的存储内容的示例。在图11所示的时间序列DB 110中,存储有与CPU使用率有关的信息。另外,图11所示的时间序列DB 110包括记录1101-1至1101-4。

在图11所示的示例中,如记录1101-1至1101-4所示,节点#1上的CPU负荷处于低状态。因此,使得合计单元403-B#3消失。合计单元403-B#3向用作负责合计单元403-B#3本身的合计的节点的节点#1至#3通知多条性能信息112的传输目的地改变为节点#1。

图12是示出节点#3上的负荷显著增加的情况的示例的说明图。图12是在图8所示的状态之后,节点#3上的负荷显著增加并且在给定时间周期期间所设定的高负荷标志的数量超过给定数量的情况。在这种情况下,合计单元403-B#3向用作合计单元403-B#3的父合计单元的合计单元403-A#1发送表示改变合计多条性能信息112的责任的请求的责任改变请求。接收到责任改变请求的合计单元403-A#1参考时间序列DB 110,并且在用作负责合计单元403-B#3的合计的节点的节点#1至#3当中具有最低负荷的节点中新生成子合计单元。在生成新的子合计单元之后,合计单元403-A#1使得旧的子合计单元消失。

这里,图12示出时间序列DB 110的存储内容的示例。在图12所示的时间序列DB 110中,存储有与CPU使用率有关的信息。另外,图12所示的时间序列DB 110包括记录1201-1至1201-4。

在图12所示的示例中,如记录1201-3和1201-4的双圈所示,节点#3上的负荷显著增加。另外,合计单元403-A#1参考时间序列DB 110,并且在节点#1至#3当中具有最低负荷的节点#2中生成合计单元403-B#2作为新的子合计单元。另外,合计单元403-A#1使得合计单元403-B#3消失。在图12中,虚线被用作合计单元403-B#3的轮廓,从而示意性地表示合计单元403-B#3消失。

另外,尽管未示出,在节点增加或减少的情况下,用作最高的父合计单元的合计单元403-A#1使得合计单元403-A#1本身以外的合计单元403消失,并且向所有节点的节点合计单元402通知传输目的地改变为合计单元403-A#1。在该通知之后,合计单元403-A#1重复图5至图12所示的处理操作。

接下来,将利用图13至图18描述表示信息处理系统100所执行的处理的流程图。

图13是示出子合计单元中的性能信息收集处理的过程的示例的流程图(第一部分)。另外,图14是示出子合计单元中的性能信息收集处理的过程的示例的流程图(第二部分)。在子合计单元中执行并且在图13和图14中示出的性能信息收集处理是由类型为子合计单元的合计单元403执行的处理。另外,在子合计单元中执行并且在图13和图14中示出的性能信息收集处理被周期性地执行。

合计单元403从负责合计的节点接收各个节点的合计值(步骤S1301)。接下来,合计单元403进一步合计所接收的合计值(步骤S1302)。另外,合计单元403确定自身节点上的CPU负荷和/或网络负荷是否超过合计节点平均值达负荷确定值或更多(步骤S1303)。在自身节点上的CPU负荷和/或网络负荷超过合计节点平均值达负荷确定值或更多的情况下(步骤S1303:是),合计单元403确定自身节点上的CPU负荷和/或网络负荷是否超过合计节点平均值达高负荷确定值或更多(步骤S1304)。

在自身节点上的CPU负荷和/或网络负荷超过合计节点平均值达高负荷确定值或更多的情况下(步骤S1304:是),合计单元403设定高负荷标志(步骤S1305)。另外,在步骤S1305中的处理操作完成之后或者在自身节点上的CPU负荷和/或网络负荷没有超过合计节点平均值达高负荷确定值或更多的情况下(步骤S1304:否),合计单元403设定标志(步骤S1306)。

另一方面,在自身节点上的CPU负荷和/或网络负荷没有超过合计节点平均值达负荷确定值或更多的情况下(步骤S1303:否),合计单元403确定自身节点上的CPU负荷和/或网络负荷是否低于合计节点平均值达负荷确定值或更多(步骤S1307)。

在自身节点上的CPU负荷和/或网络负荷低于合计节点平均值达负荷确定值或更多的情况下(步骤S1307:是),合计单元403设定低负荷标志(步骤S1308)。在步骤S1306或步骤S1308中的处理操作完成之后,合计单元403合计所设定的标志的数量(步骤S1309)。

在步骤S1309中的处理操作完成之后或者在自身节点上的CPU负荷和/或网络负荷没有低于合计节点平均值达负荷确定值或更多的情况下(步骤S1307:否),合计单元403将合计值发送给父合计单元(步骤S1310)。另外,合计单元403确定高负荷标志的数量是否大于或等于给定数量(步骤S1401)。

在高负荷标志的数量大于或等于给定数量的情况下(步骤S1401:是),合计单元403向父合计单元发送责任改变请求(步骤S1402)。另一方面,在高负荷标志的数量少于给定数量的情况下(步骤S1401:否),合计单元403确定标志的数量是否大于或等于给定数量(步骤S1403)。在标志的数量大于或等于给定数量的情况下(步骤S1403:是),合计单元403参考时间序列DB 110,从而在包括在负责合计的节点中并且具有低负荷的两个节点中生成子合计单元(步骤S1404)。另外,合计单元403将合计单元403本身的类型设定为父合计单元(步骤S1405)。

另一方面,在标志的数量少于给定数量的情况下(步骤S1403:否),合计单元403确定低负荷标志的数量是否大于或等于给定数量(步骤S1406)。在低负荷标志的数量大于或等于给定数量的情况下(步骤S1406:是),合计单元403向父合计单元发送消失请求(步骤S1407)。

另一方面,在低负荷标志的数量少于给定数量的情况下(步骤S1406:否),合计单元403删除旧的标志(步骤S1408)。这里,例如,旧的标志是在旧的标志被设定之后已过去给定时间周期或更久的标志。

在步骤S1402、S1405、S1407和S1408之一中的处理操作完成之后,合计单元403终止子合计单元中的性能信息收集处理。

这里,如图4中所示,在仅一个合计单元403存在于信息处理系统100内的情况下,相关合计单元403位于代表节点中,其类型为子合计单元,并且因此,相关合计单元403执行图13和图14所示的处理。另外,代替步骤S1310中的处理操作,相关合计单元403将合计值写入到写入单元404。另外,即使在“步骤S1401:是”或“步骤S1406:是”的情况下,相关合计单元403也不执行步骤S1402中的处理操作和步骤S1407中的处理操作。

图15是示出代表节点中的父合计单元中的性能信息收集处理的过程的示例的流程图。代表节点中的父合计单元中的性能信息收集处理是在代表节点中的合计单元403的类型为父合计单元的情况下的性能信息收集处理。代表节点中的父合计单元中的性能信息收集处理被周期性地执行。

合计单元403从子合计单元接收合计值(步骤S1501)。接下来,合计单元403合计所接收的合计值(步骤S1502)。另外,合计单元403将所合计的合计值发送给写入单元404(步骤S1503)。在步骤S1503中的处理操作完成之后,合计单元403终止代表节点中的父合计单元中的性能信息收集处理。

另外,用作不同于代表节点的节点中的父合计单元的合计单元403执行与图15所示的处理大约相同的处理。作为它们之间的差异,在步骤S1503中的处理操作中,相关合计单元403将所合计的合计值发送给相关合计单元403本身中的父合计单元。

图16是示出在父合计单元中接收到责任改变请求时的处理的过程的示例的流程图。在父合计单元中接收到责任改变请求时的处理是当用作父合计单元的合计单元403从用作父合计单元的合计单元403本身的、用作子合计单元的合计单元403接收到责任改变请求时的处理。这样,在父合计单元中接收到责任改变请求时的处理的执行主体是用作父合计单元的合计单元403并且在以下描述中被简单地描述为合计单元403。

合计单元403从子合计单元接收责任改变请求(步骤S1601)。接下来,合计单元403参考时间序列DB 110,从而获取负责请求源合计单元的合计的节点上的负荷(步骤S1602)。另外,合计单元403确定发出请求的子合计单元节点上的负荷在负责请求源合计单元的合计的节点当中是否为最低(步骤S1603)。在发出请求的子合计单元节点上的负荷不是最低的情况下(步骤S1603:否),合计单元403在具有最低负荷的节点中生成子合计单元(步骤S1604)。另外,合计单元403向所生成的子合计单元通知与请求源相同的负责合计的节点(步骤S1605)。接下来,合计单元403删除用作请求源的子合计单元(步骤S1606)。

另一方面,在发出请求的子合计单元节点上的负荷为最低的情况下(步骤S1603:是),合计单元403删除请求源合计单元的所有高负荷标志(步骤S1607)。另外,合计单元403向用作请求源的子合计单元通知责任改变不可用(步骤S1608)。

在步骤S1606或步骤S1608中的处理操作完成之后,合计单元403终止在父合计单元中接收到责任改变请求时的处理。

图17是示出在父合计单元中接收到消失请求时的处理的过程的示例的流程图。在父合计单元中接收到消失请求时的处理是当用作父合计单元的合计单元403从用作父合计单元的合计单元403本身的、用作子合计单元的合计单元403接收到消失请求时的处理。这样,在父合计单元中接收到消失请求时的处理的执行主体是用作父合计单元的合计单元403并且在以下描述中被简单地描述为合计单元403。

合计单元403从子合计单元接收消失请求(步骤S1701)。接下来,合计单元403参考时间序列DB 110,从而获取父合计单元本身上的负荷(步骤S1702)。另外,合计单元403确定合计单元403本身上的负荷高的状态是否继续(步骤S1703)。在合计单元403本身上的负荷高的状态没有继续的情况下(步骤S1703:否),合计单元403经由子合计单元通知负责合计的节点的传输目的地(步骤S1704)。另外,合计单元403删除用作请求源的子合计单元(步骤S1705)。在步骤S1705中的处理操作完成之后,合计单元403终止在父合计单元中接收到消失请求时的处理。

另一方面,在合计单元403本身上的负荷高的状态继续的情况下(步骤S1703:是),合计单元403删除请求源合计单元的所有低负荷标志(步骤S1706)。另外,在不使子合计单元消失的情况下,合计单元403终止在父合计单元中接收到消失请求时的处理。

图18是示出在增加或减少节点时执行并且由代表节点执行的处理的过程的示例的流程图。在增加或减少节点时执行并且由代表节点执行的处理是在针对信息处理系统100增加或减少节点时由代表节点中的合计单元403执行的处理。这样,在增加或减少节点时执行并且由代表节点执行的处理的执行主体是代表节点中的合计单元403并且在以下描述中被简单地描述为合计单元403。

在实现减少或增加节点之后,合计单元403确定是否存在子合计单元(步骤S1801)。在存在子合计单元的情况下(步骤S1801:是),合计单元403经由子合计单元向所有节点中的节点合计单元402通知传送目的地改变为代表节点中的合计单元403(步骤S1802)。另外,合计单元403删除所有子合计单元(步骤S1803),并终止在增加或减少节点时执行并且由代表节点执行的处理。

另一方面,在不存在子合计单元的情况下(步骤S1801:否),合计单元403在没有具体改变的情况下终止在增加或减少节点时执行并且由代表节点执行的处理。

如上所述,本发明实施方式中的节点中的每一个基于自身节点上的负荷和各个节点上的传输负荷来确定合计处理的负荷分配。因此,由于在没有使用DB的情况下执行确定,减轻在确定负荷分配方面的负荷是可能的。另外,在信息处理系统100中,负荷没有集中在代表节点上。因此,避免在收集多条性能信息112的合计值时的瓶颈是可能的。另外,信息处理系统100能够使对用户U的业务操作的影响保持在最低。

另外,在接收到责任改变请求的情况下,本发明实施方式中的节点中的每一个可在包括在自身节点的负责合计节点组中并具有低负荷的节点中生成合计单元403。因此,本发明实施方式中的节点中的每一个减少节点上的变高的负荷,并且使具有低负荷的节点执行合计处理。因此,执行负荷分配是可能的。

另外,在接收到消失请求的情况下,如果自身节点上的负荷低,则本发明实施方式中的节点中的每一个可使得用作消失请求的传输源的合计单元403消失,并且相关节点本身可执行合计处理。因此,在并不必须执行负荷分配的情况下,本发明实施方式中的节点中的每一个可使得用作相关节点本身的子合计单元的合计单元403消失,从而能够抑制过度负荷分配。

另外,在用作另一节点的父合计单元的合计单元403生成合计单元403的情况下,本发明实施方式中的节点中的每一个通过利用相关节点本身的合计单元403来执行合计处理,并且向用作父合计单元的合计单元403发送处理结果。另外,如上所述,在一些情况下,本发明实施方式中的节点中的每一个生成合计单元403以用作另一节点中的子合计单元。因此,信息处理系统100中的节点中的每一个能够在三代或更多代上构造负荷分配,例如父节点、子节点和孙节点。

另外,在节点增加或减少的情况下,代表节点中的合计单元403可使得位于信息处理系统100内并且不同于代表节点中的合计单元403的合计单元403消失。在节点增加或减少的情况下,各个节点上的负荷在一些情况下改变。因此,通过使得不同于代表节点中的合计单元403的所有合计单元403消失并且通过再次执行负荷分配,即使在节点增加或减少的情况下,代表节点中的合计单元403也能执行充分的负荷分配。

应当注意,预先准备的程序可由诸如个人计算机或工作站的计算机执行,从而实现本发明实施方式中所描述的收集状态信息的方法。本状态信息收集程序被记录在诸如硬盘、软盘、紧凑盘-只读存储器(CD-ROM)或数字多功能盘(DVD)的计算机可读记录介质中并由计算机从该记录介质读取,从而执行。另外,本状态信息收集程序可经由诸如互联网的网络分发。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1