一种云计算平台应用集群弹性扩容方法

文档序号:7891898阅读:273来源:国知局
专利名称:一种云计算平台应用集群弹性扩容方法
ー种云计算平台应用集群弹性扩容方法发明名称本发明涉及云计算技术领域,特指ー种基于云计算平台应用集群弾性扩容方法。
背景技术
IAAS云计算平台IAAS整合分布式计算、网络计算、虚拟化等技术,提供统ー的计算、网络、存储的资源,以虚拟机的形式提供给用户使用。对应用程序而言,以往部署在物理 机上,现在直接由云平台统ー管理,以虚拟机的形式提供应用程序部署环境。负载均衡(集群)应用程序部署到单台服务器上,随着用户量的不断増加,负载压カ也不断増加。提高服务器的配置是解决问题的ー种方法,但单台服务器的服务能力总会有极限;此时增加服务器数量是ー种节约成本,行之有效的解决方法。负载均衡技术就是这种方法。通过前端的负载均衡器,将后端的应用服务器组成集群,通过增加/減少机器的数量达到应用伸縮的效果,即使面对百万,及至千万级的用户都不成问题。目前云计算技术的ー个好处可以有效的解决服务器利用率低的问题,对应用程序不需要再以物理服务器为単位分配资源,在需要时可以直接创建虚拟机为应用程序提供部署,在不需要时可以删除虚拟机,释放服务器资源。而负载均衡技术可以有效解决大用户量应用程序苛刻的运行环境。无论部署环境是物理机还是虚拟机,负载均衡技术都有一定的部署难度,自动化程度不高,更多需要系统管理员一歩一歩地按需求进行配置,部署。应用用户量大吋,需要手动增加服务器;用户量降低后,同样需要手动撤掉某台服务器,再将它分配另外的应用。很难做到自动化、智能化。

发明内容
本发明解决的技术问题是针对云平台上部署应用程序集群过于复杂麻烦,不能有效方便利用云平台计算、网络、存储资源的问题,提出一种云计算平台的应用集群弾性扩容方法。本发明解决上述技术问题的技术方案是根据应用集群中虚拟机的负载压カ变化,弹性调整集群中虚拟机的規模,实现对云计算平台各种资源的有效地利用。所述的方法包括虚拟机管理控制机制,通过云计算平台提供的web service接ロ,实现对虚拟机的创建、删除、停止、启动等控制虚拟机本身的操作;基于角色的消息事件机制,将应用集群中的虚拟机群以功能用途划分为不同的角色,一般为前端代理和应用服务器;角色具体体现在虚拟机上安装的不同功能软件,如前端代理角色的虚拟机安装nginx (—个高性能的HTTP和反向代理服务器),而应用服务器上可能安装apche (Web服务器软件)或IIS (由微软公司提供的基于运行Microsoft Windows的互联网基本服务);姆种角色除了拥有Hostlnit、HostUp、HostDown等公共事件外,还拥有自身特有的事件;
基于SNMP协议的虚拟机监控机制,部署在虚拟机上的snmp agent收集CPU、内存、网络等数据,而控制端通过SNMP协议获取所需的实时监控数据;控制端的实现可以采用现成的大量SNMP Manager工具,以减少开发的工作量;可扩展的调度策略机制,根据监控数据对应用集群中的虚拟机进行弹性扩容,具体形式是增加/減少某角色下虚拟机的数量或提高/降低虚拟机的配置;简单的策略可以只对虚拟机数量增减,复杂的策略可以是当集群规模的増大、网络通讯影响性能吋,提高虚拟机配置,减少虚拟机数量;在前述机制基础上,由虚拟机管理控制机制创建应用集群中不同角色的服务器, 基于角色的消息事件机制自动部署形成应用集群的配置,并在不同时间段控制虚拟机上的功能软件,基于SNMP协议的虚拟机监控机制提供应用集群弾性扩容的数据依据,可扩展的调度策略机制则根据实际情况对应用集群进行扩容操作。所述的方法涉及云计算平台、G-Scale、和G-Scale Agent ;所述的云计算平台为由国云科技有限公司自主研发的IAAS云计算平台,由其提供计算资源,网络资源和存储资源,以REST风格的Web Service接口供G-Scale使用;所述的G-Scale是ー个云计算平台的管理调度工具,通过调用G-Cloud接ロ,使用预先制作好的镜像创建虚拟机;当虚拟机成功启动后,G-Scale的后台服务会自动将虚拟机群搭建成应用集群;G_Scale会开放80端ロ,为虚拟机上的G-Scale Agent进程提供消息事件服务;同时G-Scale也会主动向Scale Agent发送请求,获取各虚拟机有用信息,向Agent的8013端ロ发送消息请求,通过SNMP协议在8014端ロ获取虚拟机的CPU、内存、带宽等负载压カ信息;G-Scale的后台定时服务会通过SNMP协议获取各虚拟机的负载压力信息,根据预先设定好的调度策略,増加/減少虚拟机数量,提高/降低虚拟机配置,实现弹性扩容;所述的G-Scale Agent是ー个随虚拟机启动而自动运行的进程,实现与Scale进行消息事件交互和提供基于SNMP协议的监控服务;Agent主动向Scale的80端ロ发送消息信息,并在8013端ロ监听Scale的消息请求;在8014端ロ为Scale提供监控虚拟机负载压カ重要信息的服务。具体包括以下步骤第I步,通过G-Scale提供的WEB控制台,创建应用集群,设定好前端代理与应用服务器角色,并为两种角色设定好扩容策略,包括ー个由最小最大值组成的范围段;第2歩,G-Scale后台定时服务调用G-Cloud的创建虚拟机接ロ,为每种角色创建虚拟机;虚拟机成功启动后,经过Hostlnit、HostUp等若干个消息事件交互后,建立应用集群;第3歩,G-Scale另ー后台服务定时向应用集群中的各虚拟机发送SNMP请求,收集各虚拟机的负载压カ数据,井根据第I步中设定的扩容策略,如果压カ数据的平均值或总和处于策略设定的范围段内,G-Scale不作任何处理,否则G-Scale就会作出増加/减少虚拟机数量或提高/降低虚拟机配置‘另外如果应用集群中虚拟机数量达到一定規模,由于应用集群内的虚拟机网络通讯随着虚拟机数量规模的增大会消耗不少系统资源,G-Scale此时会減少虚拟机数量,增强部分虚拟机的性能配置,使应用集群发挥更好的性能。本发明提出了一种基于G-Cloud云计算平台的应用集群弹性扩容技术,在尽量少的外界人工干预的情况下,通过程序自动搭建应用程序集群,智能化管理集群的规模以有效应对负载压カ的变化,使云平台资源得到最优化利用。本发明实现了应用集群部署自动化、扩容弹性化、智能化。


下面结合附图对本发明进一步说明图I是本发明云计算平台的应用集群弾性扩容示意图;图2是本发明云计算平台的应用集群弹性扩容处理流程图。
具体实施方式

见附图1、2所示,本发明云计算平台的应用集群弾性扩容方法是根据应用集群中虚拟机的负载压カ变化,弹性调整集群中虚拟机的規模,有效地利用G-Cloud云计算平台的各种资源。本发明涉及到4种机制和3个实体。4种机制分别是虚拟机管理控制机制通过云计算平台提供的web service接ロ,实现对虚拟机的创建,删除,停止,启动等控制虚拟机本身的操作。另外云计算平台提供的镜像技术,为应用集群的自动化部署,提供重要技术保障。基于角色的消息事件机制将应用集群中的虚拟机群以功能用途划分为不同的角色,一般是前端代理和应用服务器。角色的体现在虚拟机上安装的不同功能软件,如前端代理角色的虚拟机安装nginx,而应用服务器上可能安装apche或HS。实现对不同角色虚拟机上的功能软件的控制是通过消息事件来完成,姆种角色除了拥有Hostlnit, HostUp,HostDown等公共事件外,还会有自身特有的事件。基于SNMP协议的虚拟机监控机制部署在虚拟机上的snmp agent收集CPU,内存,网络等数据,而控制端通过SNMP协议可以轻易获取所需的实时监控数据。控制端的实现可以采用现成的大量SNMP Manager工具,以减少开发的工作量。可扩展的调度策略机制根据监控数据对应用集群中的虚拟机进行弹性扩容,具体形式是增加/減少某角色下虚拟机的数量或提高/降低虚拟机的配置。调试策略的可扩展性使对应用集群的控制随心所欲,简单的策略可以只对虚拟机数量的增减,复杂的策略可以是当集群规模的増大,网络通讯影响性能时,提高虚拟机配置,減少虚拟机数量。4种机制是这样形成应用集群弹性扩容技术虚拟机管理控制机制创建应用集群中不同角色的服务器,基于角色的消息事件机制自动部署形成了应用集群的配置,并在不同时间段控制虚拟机上的功能软件,基于SNMP协议的虚拟机监控机制提供了应用集群弹性扩容的数据依据,可扩展的调度策略机制则根据实际情况对应用集群进行真正的操作。本发现的3个实体分别是G-Cloud :一个由国云科技有限公司自主研发的IAAS云计算平台,在本技术中主要提供计算资源,网络资源和存储资源,以REST风格的Web Service接口供G-Scale使用。G-Scale : 一个云计算平台的管理调度工具,通过调用G-Cloud接ロ,使用预先制作好的镜像创建虚拟机(其中预先制作好的镜像包括前端代理专用和应用服务器专用两种不同的镜像),当虚拟机成功启动后,G-Scale的后台服务会自动将虚拟机群搭建成应用集群;G-Scale会开放80端ロ,为虚拟机上的G-ScaleAgent进程提供消息事件服务;同时G-Scale也会主动向Scale Agent发送请求,获取各虚拟机有用信息,向Agent的8013端ロ发送消息请求,8014端ロ通过SNMP协议获取虚拟机的CPU,内存,带宽等负载压力信息。G-Scale的后台定时服务会通过SNMP协议获取各虚拟机的负载压力信息,根据预先设定好的调度策略,増加/減少虚拟机数量,提高/降低虚拟机配置,实现弹性扩容。G-Scale Agent :—个随虚拟机启动而自动运行的进程,主要有两大作用与Scale进行消息事件交互和提供基于SNMP协议的监控服务。Agent主动向Scale的80端ロ发送消息信息,并在8013端ロ监听Scale的消息请求;在8014端ロ为Scale提供监控虚拟机负载压カ重要信息的服务。 本发明实现了基于G-Cloud云计算平台的应用集群弾性扩容方法,如图2所示,方法具体步骤如下第I步,通过G-Scale提供的WEB控制台,创建应用集群,设定好前端代理与应用服务器角色,并为两种角色设定好扩容策略(包括ー个由最小最大值组成的范围段)。第2歩,G-Scale后台定时服务会调用G-Cloud的创建虚拟机接ロ,为每种角色(前端代理和应用服务器)创建虚拟机。虚拟机成功启动后,经过Hostlnit,HostUp等若干个消息事件交互后,应用集群会成功建立。第3步,G-Scale另ー后台服务会定时向应用集群中的各虚拟机发送SNMP请求,收集各虚拟机的负载压カ数据,井根据第I步中设定的扩容策略,如果压カ数据的平均值或总和处于策略设定的范围段内,G-Scale不作任何处理,否则G-Scale就会作出増加/减少虚拟机数量或提高/降低虚拟机配置。另外如果应用集群中虚拟机数量达到一定規模,由于应用集群内的虚拟机网络通讯随着虚拟机数量规模的增大而消耗不少系统资源,所以G-Scale此时会減少虚拟机数量,增强部分虚拟机的性能配置,使应用集群发挥更好的性倉^:。
权利要求
1.一种云计算平台的应用集群弾性扩容方法,其特征在于根据应用集群中虚拟机的负载压カ变化,弹性调整集群中虚拟机的規模,实现对云计算平台各种资源的有效地利用。
2.根据权利要求I所述的应用集群弾性扩容方法,其特征在于所述的方法包括 虚拟机管理控制机制,通过云计算平台提供的web service接ロ,实现对虚拟机的创建、删除、停止、启动等控制虚拟机本身的操作; 基于角色的消息事件机制,将应用集群中的虚拟机群以功能用途划分为不同的角色,一般为前端代理和应用服务器;角色具体体现在虚拟机上安装的不同功能软件,如前端代理角色的虚拟机安装nginx,而应用服务器上可能安装apche或IIS ;每种角色除了拥有Hostlnit、HostUp、HostDown等公共事件外,还拥有自身特有的事件; 基于SNMP协议的虚拟机监控机制,部署在虚拟机上的snmp agent收集CPU、内存、网络等数据,而控制端通过SNMP协议获取所需的实时监控数据;控制端的实现可以采用现成的大量SNMP Manager工具,以减少开发的工作量; 可扩展的调度策略机制,根据监控数据对应用集群中的虚拟机进行弹性扩容,具体形式是增加/減少某角色下虚拟机的数量或提高/降低虚拟机的配置;简单的策略可以只对虚拟机数量增减,复杂的策略可以是当集群规模的増大、网络通讯影响性能时,提高虚拟机配置,减少虚拟机数量; 在前述机制基础上,由虚拟机管理控制机制创建应用集群中不同角色的服务器,基于角色的消息事件机制自动部署形成应用集群的配置,并在不同时间段控制虚拟机上的功能软件,基于SNMP协议的虚拟机监控机制提供应用集群弾性扩容的数据依据,可扩展的调度策略机制则根据实际情况对应用集群进行扩容操作。
3.根据权利要求I或2所述的应用集群弾性扩容方法,其特征在于所述的方法涉及云计算平台、G-ScalejP G-Scale Agent ; 所述的云计算平台为由国云科技有限公司自主研发的IAAS云计算平台,由其提供计算资源,网络资源和存储资源,以REST风格的Web Service接口供G-Scale使用; 所述的G-Scale是ー个云计算平台的管理调度工具,通过调用G-Cloud接ロ,使用预先制作好的镜像创建虚拟机;当虚拟机成功启动后,G-Scale的后台服务会自动将虚拟机群搭建成应用集群;G_Scale会开放80端ロ,为虚拟机上的G-Scale Agent进程提供消息事件服务;同时G-Scale也会主动向Scale Agent发送请求,获取各虚拟机有用信息,向Agent的8013端ロ发送消息请求,通过SNMP协议在8014端ロ获取虚拟机的CPU、内存、带宽等负载压力信息;G-Scale的后台定时服务会通过SNMP协议获取各虚拟机的负载压力信息,根据预先设定好的调度策略,増加/減少虚拟机数量,提高/降低虚拟机配置,实现弹性扩容; 所述的G-Scale Agent是ー个随虚拟机启动而自动运行的进程,实现与Scale进行消息事件交互和提供基于SNMP协议的监控服务;Agent主动向Scale的80端ロ发送消息信息,并在8013端ロ监听Scale的消息请求;在8014端ロ为Scale提供监控虚拟机负载压カ重要信息的服务。
4.根据权利要求3所述的应用集群弾性扩容方法,其特征在于具体包括以下步骤 第I步,通过G-Scale提供的WEB控制台,创建应用集群,设定好前端代理与应用服务器角色,并为两种角色设定好扩容策略,包括ー个由最小最大值组成的范围段;第2歩,G-Scale后台定时服务调用G-Cloud的创建虚拟机接ロ,为每种角色创建虚拟机;虚拟机成功启动后,经过Hostlnit、HostUp等若干个消息事件交互后,建立应用集群;第3歩,G-Scale另ー后台服务定时向应用集群中的各虚拟机发送SNMP请求,收集各虚拟机的负载压カ数据,井根据第I步中设定的扩容策略,如果压カ数据的平均值或总和处于策略设定的范围段内,G-Scale不作任何处理,否则G-Scale就会作出増加/减少虚拟 机数量或提高/降低虚拟机配置‘另外如果应用集群中虚拟机数量达到一定規模,由于应用集群内的虚拟机网络通讯随着虚拟机数量规模的增大会消耗不少系统资源,G-Scale此时会减少虚拟机数量,增强部分虚拟机的性能配置,使应用集群发挥更好的性能。
全文摘要
本发明涉及云计算技术领域,特指一种基于云计算平台应用集群弹性扩容方法。本发明根据应用集群中虚拟机的负载压力变化,弹性调整集群中虚拟机的规模,实现对云计算平台各种资源的有效地利用。本发明自动搭建应用程序集群,智能化管理集群的规模以有效应对负载压力的变化,使云平台资源得到最优化利用;实现了应用集群部署自动化、扩容弹性化、智能化。本发明可应用于云计算平台应用集群的扩容中。
文档编号H04L29/08GK102646062SQ20121007507
公开日2012年8月22日 申请日期2012年3月20日 优先权日2012年3月20日
发明者季统凯, 岳强, 王志荣 申请人:广东电子工业研究院有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1