技术领域
[0001] 本发明涉及资源管理方法。
相关背景技术
[0002] 以往,在云系统中,为了对客户分配虚拟计算机,需要新的资源。为了在系统中容纳新的客户,需要在系统中增设新的硬件。
[0003] 作为本技术的背景技术,有国际公开2014/122743号公报(专利文献1)。在专利文献1中,公开了对移动目标候选的虚拟主机的使用资源历史加上移动对象的虚拟客户的使用资源历史,推测假设移动对象的虚拟客户移动了的情况下的移动目标候选的虚拟主机的使用资源历史,基于推测结果,从移动目标候选的虚拟主机中决定上述移动目标的虚拟主机的管理系统。
[0004] 现有技术文献
[0005] 专利文献
[0006] 专利文献1:国际公开2014/122743号公报
具体实施方式
[0026] 以后的说明中用“aaa表”、“aaa列表”、“aaaDB”、“aaa队列”等表达说明本发明的信息,但这些信息也可以用表、列表、DB、队列等数据结构以外表达。因此,为了表示不依赖于数据结构,对于“aaa表”、“aaa列表”、“aaaDB”、“aaa队列”等有时称为“aaa信息”。
[0027] 进而,在说明各信息的内容时,使用“识别信息”、“识别符”、“名”、“名称”、“ID”这样的表达,但它们能够相互置换。
[0028] 以后的说明中存在以“程序”为主语进行说明的情况,但程序通过由处理器执行而使用存储器和通信端口(通信控制设备)进行规定的处理,所以也可以改为以处理器为主语的说明。另外,以程序为主语公开的处理可以是管理服务器等计算机、信息处理装置进行的处理。另外,程序的一部分或全部也可以用专用硬件实现。
[0029] 另外,各种程序可以用程序发布服务器、或计算机可读取的存储介质安装在各计算机中。该情况下,程序发布服务器包括CPU和存储资源,存储资源进而存储了发布程序和作为发布对象的程序。然后,通过由CPU执行发布程序,程序发布服务器的CPU将发布对象的程序对其他计算机发布。
[0030] 图1是表示本发明的实施例的资源管理系统的结构的图。
[0031] 本发明的资源管理系统具有管理服务提供商设置的数据中心100、云服务提供商终端200和网络交换机300,对客户终端600提供云服务500。
[0032] 数据中心100具有管理计算机110、存储系统120、物理计算机130和连接装置140。
[0033] 存储系统120具有磁盘驱动器和SSD等大容量的存储设备,从该存储设备的一部分提供逻辑的虚拟卷121。虚拟卷121对云服务的客户提供,保存用户数据。
[0034] 物理计算机130具有处理器和存储器的资源,提供分配了该处理器和该存储器的一部分资源的虚拟机131。虚拟机131对云服务的客户提供,按照来自客户终端600的操作和来自云服务提供商终端200的操作,执行要求的运算处理。
[0035] 连接装置140是将数据中心100内的资源与网络交换机300连接的接口。连接装置140对云服务的客户提供,控制分配了其一部分资源的虚拟机131或虚拟卷121与网络交换机300的通信。
[0036] 管理计算机110是用于管理这些资源的计算机,具有执行程序的处理器和保存该程序的存储设备(存储器和非易失存储设备)。管理计算机110的资源也可以由存储系统120和物理计算机130提供。管理计算机110的逻辑结构用图2后述。
[0037] 另外,管理计算机110具有输入输出设备。作为输入输出设备的例子,可以考虑显示器和键盘和指点设备,但也可以是除此以外的设备。另外,作为输入输出设备的代替也可以用串行接口和以太网接口作为输入输出设备,在该接口上连接具有显示器或键盘或指点设备的显示用计算机,对显示用计算机发送显示用信息、或者从显示用计算机接收输入用信息,由此用显示用计算机进行显示或者接受输入,从而代替输入输出设备中的输入和显示。
[0038] 以后,将管理信息处理系统、显示本申请发明的显示用信息的一台以上计算机的集合称为管理系统。管理计算机110显示显示用信息的情况下管理计算机110是管理系统。另外,管理计算机110与显示用计算机的组合也是管理系统。另外,为了管理处理的高速化和高可靠性也可以用多台计算机实现与管理计算机110等同的处理,该情况下该多台计算机(显示用计算机进行显示的情况下也包括显示用计算机)是管理系统。
[0039] 管理计算机110、存储系统120、物理计算机130和连接装置140可以设置多台。
[0040] 网络交换机300将数据中心100与云服务提供商终端200与网络400连接。
[0041] 云服务提供商进行将管理服务提供商用数据中心100提供的资源对客户出租的服务。云服务提供商终端200操作管理计算机110,控制对客户的资源出租。管理计算机110由多个云服务提供商终端200操作,其资源从数据中心100提供。
[0042] 网络交换机300经由网络400与客户终端600连接。
[0043] 客户终端600是接受其资源提供(即云服务500)的客户操作的计算机,具有执行程序的处理器、保存该程序的存储设备(存储器和非易失存储设备)、与网络通信的通信接口、接受操作者输入的输入接口和对操作者输出程序的执行结果的输出接口。
[0044] 从客户终端600来看,数据中心100提供的资源表现为云服务500。
[0045] 图1中图示了1台客户终端600,但也可以设置多台客户终端600。
[0046] 图2是表示本发明的实施例的管理计算机110的逻辑结构的图。
[0047] 管理计算机110具有虚拟机分配处理程序111。虚拟机分配处理程序111保存在存储器中,由处理器执行。虚拟机分配处理程序111包括资源分配状况收集程序112和资源使用状况收集程序113作为子程序。
[0048] 虚拟机分配处理程序111管理资源对客户的分配。资源分配状况收集程序112收集对客户分配的资源的信息。资源使用状况收集程序113收集对客户分配的资源的使用状况。
[0049] 管理计算机110具有客户信息表114、虚拟机分配计划表115、资源管理表116和费用变动方案使用组的管理表117,这些表保存在虚拟卷121中。
[0050] 客户信息表114是用于管理从管理服务提供商接受云服务的客户的表,其详情用图3后述。虚拟机分配计划表115是用于管理定义客户接受的云服务的内容的计划的表,其详情用图4后述。资源管理表116是用于管理对虚拟机131分配的资源的表,其详情用图5后述。费用变动方案使用组的管理表117是用于管理虚拟机131的使用率和费用的表,其详情用图6后述。
[0051] 图3是表示本发明的实施例的客户信息表114的结构例的图。
[0052] 客户信息表114是用于管理从管理服务提供商接受云服务的客户的表,包括序列号1141、客户名1142、虚拟机分配计划名1143和虚拟机ID1144。
[0053] 序列号1141是用于唯一地识别客户信息表114中保存的数据的识别信息。客户名1142是接受云服务的客户的名称。虚拟机分配计划名1143是定义该客户接受的云服务的内容的计划的名称。虚拟机ID1144表示对该客户分配的虚拟机的识别信息和该虚拟机分配的期间。
[0054] 图4是表示本发明的实施例的虚拟机分配计划表115的图。
[0055] 虚拟机分配计划表115是用于管理定义客户接受的云服务的内容的计划的表,包括序列号1151、虚拟机分配计划名1152、使用期间1153、价格1154、虚拟机分配方案1155和迁移计划1156。
[0056] 序列号1151是用于唯一地识别虚拟机分配计划表115中保存的数据的识别信息。虚拟机分配计划名1152是计划的名称。使用期间1153是在该计划下客户能够使用虚拟机
131的期间。价格1154是该计划的价格。价格1154中,存在由数值定义的固定费用和按资源的使用率变化的从量制费用、和从固定费用或从量制费用按规定的比例减价的费用等。
[0057] 虚拟机分配方案1155表示该计划的特征,例如记录“费用固定方案”“费用变动方案”等。“费用固定方案”是费用不因虚拟机的用户数而变化的计划。“费用变动方案”是费用因虚拟机的用户数而变动,即虚拟机的用户数越多,则即使分配的资源的量不变,费用也降低的计划。
[0058] 迁移计划1156表示该计划中通过迁移进行的虚拟机131的切换。具体而言,迁移计划1156表示客户能够使用的资源量和能够使用该资源的期间。
[0059] 图5是表示本发明的实施例的资源管理表116的图。
[0060] 资源管理表116是用于管理对虚拟机131分配的资源的表,包括虚拟机编号1161、处理器的分配量1162、存储器的分配量1163和分配状况1164。
[0061] 虚拟机编号1161是用于唯一地识别虚拟机131的识别信息。处理器的分配量1162是对该虚拟机分配的处理器资源的量(即CPU的数量)。存储器的分配量1163是对该虚拟机分配的存储器资源的量(即RAM的容量)。分配状况1164表示该虚拟机是否对客户提供。在分配状况1164中,记录全部时段已被分配的“已分配”、全部时段未被分配的“空闲”、虚拟机被分配的期间和客户的组。
[0062] 图6是表示本发明的实施例的费用变动方案使用组的管理表117的图。
[0063] 费用变动方案使用组的管理表117是用于管理虚拟机131的使用率和费用的表,包括序列号171、组ID1172、使用状况1173和费用1174。
[0064] 序列号1171是用于唯一地识别费用变动方案使用组的管理表117中保存的数据的识别信息。组ID1172是用于唯一地识别费用变动方案使用组的识别信息。组由一台物理计算机130构成即可,但也可以用多台物理计算机130构成组。使用状况1173是该计算机的使用客户数除以最大客户数得到的值。费用1174是该计算机的每位客户的费用。
[0065] 由费用变动方案使用组的管理表117可知,在组ID=1中,以一台物理计算机130中使用的虚拟计算机的数量增加时费用降低的方式设定费用1174。另外,费用也可以与一台物理计算机130中使用的虚拟计算机的数量无关而一定。
[0066] 图7是本发明的实施例的资源使用状况收集处理的流程图。
[0067] 资源使用状况收集处理由管理计算机110执行,调查资源是否能够集约。
[0068] 首先,虚拟机分配处理程序111选择一位客户。资源分配状况收集程序112参考客户信息表114和资源管理表116,收集对选择的客户分配的资源的信息(S1001)。例如,对于客户A分配了虚拟机2(CPU为2个,存储器为128GB)和虚拟机9(CPU为8个,存储器为128GB)。
[0069] 之后,资源使用状况收集程序113从物理计算机130中安装的基板管理控制器(BMC)中选择一个对该客户分配的资源,收集选择的资源的每个规定期间的使用状况(例如每周或每月的CPU使用率)(S1002)。
[0070] 之后,虚拟机分配处理程序111判断对于该选择的客户,是否分配了未收集使用状况的资源(S1003)。结果,如果对该选择的客户分配的资源中存在未收集使用状况的资源,则收集下一个资源的使用状况(S1005,S1002)。例如,分配了3台虚拟机的情况下,顺次收集分配的3台虚拟机的资源的使用状况。
[0071] 另一方面,如果对该选择的客户分配的全部资源的使用状况的收集已完成,则判断全部客户的资源使用状况的收集是否已完成(S1004)。结果,如果存在尚未收集资源使用状况的客户,则收集下一位客户的使用状况(S1006,S1001)。
[0072] 另一方面,如果全部客户的资源的使用状况的收集已完成,则结束资源使用状况收集处理。
[0073] 图8是本发明的实施例的资源集约分配处理的流程图。
[0074] 资源使用状况收集处理由管理计算机110执行,对客户建议计划的变更,集约并分配资源。
[0075] 首先,虚拟机分配处理程序111基于全部客户的资源的使用状况,生成集约了面向各客户的资源的计划(S1011)。
[0076] 接着,取得按生成的计划分配的资源量(例如必要的CPU数量)(S1012),从资源管理表116中搜索对该客户分配的空闲资源(S1013)。
[0077] 之后,虚拟机分配处理程序111对云服务提供商终端200发送生成的各客户的计划(S1014)。
[0078] 云服务提供商的负责人操作终端200,对虚拟机分配处理程序111发送对各客户发送生成的计划的指示。虚拟机分配处理程序111对各客户发送生成的计划,建议计划(S1015)。客户能够使用计划建议画面1100(图9A)和计划详情画面1300(图9B),确认建议的计划。例如,对客户发送用于显示计划的地址(URL),客户通过使用网络浏览器访问该URL,能够确认建议的计划。也可以使用每位客户的管理画面建议计划。
[0079] 图9A是表示本发明的实施例的对客户的计划建议画面1100的结构例的图。
[0080] 计划建议画面1100显示建议计划的客户名1101和对该客户建议的计划的一览1102。计划的一览1102包括计划名、该计划的签约期间、该计划的价格、和与当前签约中的计划的差额的信息。客户通过操作“详情”按钮1103,能够显示计划详情画面1300(图9C),查看建议的计划的详情。另外,客户通过操作“变更”按钮1104,能够选择建议的计划,进行签约手续。
[0081] 图9B是表示本发明的实施例的组选择画面1200的结构例的图。
[0082] 组选择画面1200在计划建议画面1100中操作“变更”按钮1104后显示。客户在组选择画面1200中,选择对新的计划的虚拟机提供资源的组(物理计算机)。
[0083] 组选择画面1200显示能够选择的组的使用状况1201、客户进行选择的单选按钮1202、和“选择”按钮1203。
[0084] 客户在组选择画面1200中,客户通过用单选按钮1202选择组、操作“选择”按钮1203而选择组(物理计算机)。
[0085] 图9C是表示本发明的实施例的对客户的计划详情画面1300的结构例的图。计划详情画面1300通过在计划建议画面1100中操作“详情”按钮1203,而在另外的窗口中显示。
[0086] 计划详情画面1300显示建议的计划的概要1301、该计划的特征1302、该计划中能够选择的组的使用状况1303和使用率曲线图1304。使用率曲线图1304示出各月的CPU的使用率,但也可以显示每个其他期间的其他资源的使用率。另外,也可以设置期间切换按钮和资源切换按钮,切换期间和资源来显示使用率。
[0087] 返回图8继续说明。在计划建议画面1100中“变更”按钮1204的操作之后,在组选择画面1200中检测到“选择”按钮1203的操作时,将客户选择的新计划中分配的虚拟机ID和分配该虚拟机的时期(迁移计划)记录在客户信息表114中(S1016)。客户信息表114中记录的信息,也在规定的时机(例如每天夜间)记录在虚拟机分配计划表115中。
[0088] 图10是本发明的实施例的集约执行处理的流程图。
[0089] 集约执行处理由管理计算机110的虚拟机分配处理程序111按规定的时机(例如每周日的0时等的夜间批量处理)执行,与客户的计划相应地执行资源的重新分配。
[0090] 首先,虚拟机分配处理程序111从客户信息表114读取最初的记录(S1021),参考虚拟机ID1144,判断当前时刻是否存在需要迁移的虚拟机(S1022)。
[0091] 当前时刻不存在需要迁移的虚拟机的情况下,前进至步骤S1024。另一方面,当前时刻存在需要迁移的虚拟机的情况下,对于与当前时刻对应的虚拟机执行迁移(S1023),前进至步骤S1024。
[0092] 在步骤S1024中,判断虚拟机分配计划表115的全部记录的处理是否已完成(S1024)。如果虚拟机分配计划表115的全部记录的处理已完成,则结束集约执行处理。另一方面,如果虚拟机分配计划表115的一部分记录的处理尚未完成,则对下一条记录进行处理(S1025,S1021)。
[0093] 如以上所说明,根据本发明的实施例,管理对客户使用的虚拟机131分配的资源的管理计算机110,监视对虚拟机131分配的资源的使用状况,基于对虚拟机131分配的资源的使用状况的监视结果,生成减少对虚拟机131的资源分配量的新的分配计划,基于客户对分配计划的选择,生成包括符合新的分配计划的虚拟机131的虚拟机131的迁移计划,所以无需增设新的资源就能够分配虚拟机131。另外,能够提醒其他客户接受资源的变更,生成空闲资源,分配虚拟机131。
[0094] 另外,分配计划至少包括费用不因分配了一台物理计算机的资源的虚拟机131的使用状况而变动的固定计划和费用因分配了一台物理计算机的资源的虚拟机131的使用状况而变动的变动计划,所以能够对客户提供各种选项。特别是,在变动计划中使用状况降低的情况下客户的费用上升,所以能够用固定计划减轻费用提高的风险。
[0095] 另外,虚拟计算机由提供资源的物理计算机分组化,变动计划是以一个组内使用的虚拟机131的数量较多的情况下费用降低的方式决定的,管理计算机110搜索包括具有能够分配符合新的分配计划的虚拟机131的空闲资源的物理计算机的组,基于一个组内使用的虚拟机131的数量计算变动计划的费用,所以能够对客户提供各种选项。另外,因为计划的种类增加,所以能够满足客户的多种需求。例如,客户聚集在某一台物理计算机的变动计划中时资源被过度分割,所以会出现虽然想使用变动计划但不能确保必要的资源的客户。另一方面,也存在对当前的低价格满意的客户。因此,通过将计算机分组化、由客户选择计算机组,能够以适当的费用对客户提供云服务。
[0096] 另外,对虚拟机131提供资源的物理计算机130和管理计算机110,由管理服务提供商管理,虚拟机131由云服务提供商对客户提供,管理计算机110进行的处理按照管理服务提供商的指示执行,所以能够提供更好的分配计划。即,管理服务提供商能够蓄积规划客户易于接受的分配计划的知识,云服务提供商能够用易于接受的分配计划进行更高性价比的环境应用。
[0097] 另外,本发明不限定于上述实施例,包括附录的权利要求书的主旨内的各种变形例和同等的结构。例如,上述实施例是为了易于理解地说明本发明而详细说明的,并不限定于必须具备说明的全部结构。另外,可以将某个实施例的结构的一部分置换为其他实施例的结构。另外,也可以在某个实施例的结构上添加其他实施例的结构。另外,对于各实施例的结构的一部分,可以追加、删除、置换其他结构。
[0098] 另外,对于上述各结构、功能、处理部、处理单元等,例如可以通过在集成电路中设计等而用硬件实现其一部分或全部,也可以通过处理器解释并执行实现各功能的程序而用软件实现。
[0099] 实现各功能的程序、表、文件等信息,能够保存在存储器、硬盘、SSD(Solid State Drive:固态硬盘)等存储设备、或者IC卡、SD卡、DVD等记录介质中。
[0100] 另外,控制线和信息线示出了认为说明上必要的,并不一定示出了实现上必要的全部控制线和信息线。实际上也可以认为几乎全部结构都相互连接。