一种云计算环境下的自动伸缩方法和系统技术方案

技术编号:10808852 阅读:115 留言:0更新日期:2014-12-24 14:47
本发明专利技术公开了一种云计算环境下的自动伸缩方法,包括:通过IaaS管理平台中的虚拟机监控接口来定时采集监控信息,并将其写入缓存中;分析所述缓存中的监控信息;判断所分析的监控信息是否达到伸缩阈值;在所分析的监控信息达到所述伸缩阈值时,根据所述IaaS管理平台中预定义的伸缩配额、应用中预定义的伸缩配额以及伸缩策略来调用所述IaaS管理平台中的伸缩接口来创建或移除虚拟机;以及通过所述IaaS管理平台中的命令执行接口来完成应用和负载平衡的配置。本发明专利技术还公开了一种云计算环境下的自动伸缩系统。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种云计算环境下的自动伸缩方法,包括:通过IaaS管理平台中的虚拟机监控接口来定时采集监控信息,并将其写入缓存中;分析所述缓存中的监控信息;判断所分析的监控信息是否达到伸缩阈值;在所分析的监控信息达到所述伸缩阈值时,根据所述IaaS管理平台中预定义的伸缩配额、应用中预定义的伸缩配额以及伸缩策略来调用所述IaaS管理平台中的伸缩接口来创建或移除虚拟机;以及通过所述IaaS管理平台中的命令执行接口来完成应用和负载平衡的配置。本专利技术还公开了一种云计算环境下的自动伸缩系统。【专利说明】一种云计算环境下的自动伸缩方法和系统
本专利技术涉及云计算领域,特别地,涉及云计算环境下的自动伸缩方法和系统。
技术介绍
传统上采用纵向伸缩方案或横向伸缩方案来实现负载均衡。具体来说,纵向伸缩通过增加单台物理设备的性能来提升服务能力,例如提升物理设备的CPU、内存以及网卡带宽等。这样的服务能力提升,往往需要物理设备进行停机维护,因此业务中断将无法避免。其次,物理设备性能提升是有极限瓶颈的,例如一台物理设备支持的CPU个数以及内存数受限于技术的成熟度。 传统上的横向扩展过程,一般都是通过采购和部署新的硬件设施来实现的,整个决策和执行过程往往是以星期为单位,效率很低。另外也可能存在计划外的并发请求突然增加,导致系统瘫痪的情况,为防备这种情况的出现,就需要增加更多的备用计算节点,造成硬件资源的大量浪费。
技术实现思路
为解决上述问题,本专利技术提出了一种云计算环境下的自动伸缩方法,包括:通过IaaS管理平台中的虚拟机监控接口来定时采集监控信息,并将其写入缓存中;分析所述缓存中的监控信息;判断所分析的监控信息是否达到伸缩阈值;在所分析的监控信息达到所述伸缩阈值时,根据所述IaaS管理平台中预定义的伸缩配额、应用中预定义的伸缩配额以及伸缩策略来调用所述IaaS管理平台中的伸缩接口来创建或移除虚拟机;以及通过所述IaaS管理平台中的命令执行接口来完成应用和负载平衡的配置。 根据本专利技术的另一个方面,提供了一种云计算环境下的自动伸缩系统,包括=IaaS管理平台和应用,其中,所述IaaS管理平台包含用于根据虚拟机的IP地址来获取该虚拟机的运行信息的虚拟机监控接口、用于创建或移除虚拟机的伸缩接口以及命令执行接口 ;以及所述应用包含应用伸缩管理模块,所述应用伸缩管理模块含有如下功能单元:监控单元,用于通过所述IaaS管理平台中的所述虚拟机监控接口来定时采集监控信息,并将其写入缓存中;分析单元,用于分析所述缓存中的监控信息;判断单元,用于判断所分析的监控信息是否达到伸缩阈值;伸缩单元,用于在所分析的监控信息达到所述伸缩阈值时,根据所述IaaS管理平台中预定义的伸缩配额、应用中预定义的伸缩配额以及伸缩策略来调用所述IaaS管理平台中的所述伸缩接口来创建或移除虚拟机;以及配置单元,用于通过所述IaaS管理平台中的所述命令执行接口来完成应用和负载平衡的配置。 在上述自动伸缩系统中,所述IaaS管理平台还包含用于查询伸缩任务的执行结果的任务查询接口。 在上述自动伸缩系统中,所述IaaS管理平台还包含配额管理模块,用于提供预定义的伸缩配额。 在上述自动伸缩系统中,所述应用伸缩管理模块还含有:伸缩配额单元,用于对进行伸缩的虚拟机的数量进行控制;以及伸缩策略单元,用于提供伸缩策略和/或算法,其中,所述伸缩单元根据所述伸缩配额单元提供的预定义的伸缩配额以及所述伸缩策略单元提供的伸缩策略来创建或移除虚拟机。 在上述自动伸缩系统中,所述应用伸缩管理模块还含有:执行单元,用于使虚拟机执行用户下发的命令。 在上述自动伸缩系统,其中,所述虚拟机监控接口是面向用户的监控接口。 采用上述自动伸缩方案,可提供根据应用服务实时运行状况进行服务能力的扩展伸缩能力。并且,本专利技术所述的自动伸缩服务可实现全自动化流程,便于管理与应用。此外,本专利技术所述的自动伸缩方案由于与云环境下的虚拟化技术完美整合,可做到在充分利用资源的情况下(计算资源不专门闲置备用、动态配置)快速完成服务能力的自动扩展,大大降低了应对突发情况的响应速度与能力,从而提高了整个系统的效率。 【专利附图】【附图说明】 在参照附图阅读了本专利技术的【具体实施方式】以后,本领域技术人员将会更清楚地了解本专利技术的各个方面。本领域技术人员应当理解的是:这些附图仅仅用于配合【具体实施方式】说明本专利技术的技术方案,而并非意在对本专利技术的保护范围构成限制。 图1示出支持负载均衡和横向扩展的Java Web应用架构; 图2是对图1所述的应用架构进行横向扩展的示意图; 图3是根据本专利技术的一个实施例的自动伸缩系统的示意图; 图4是根据本专利技术的一个实施例的自动伸缩方法的示意图。 【具体实施方式】 下面介绍的是本专利技术的多个可能实施例中的一些,旨在提供对本专利技术的基本了解,并不旨在确认本专利技术的关键或决定性的要素或限定所要保护的范围。容易理解,根据本专利技术的技术方案,在不变更本专利技术的实质精神下,本领域的一般技术人员可以提出可相互替换的其它实现方式。因此,以下【具体实施方式】以及附图仅是对本专利技术的技术方案的示例性说明,而不应当视为本专利技术的全部或者视为对本专利技术技术方案的限定或限制。 在接下来的具体描述中会多次提到“IaaS管理平台”。在本专利技术的上下文中, “IaaS”是指云计算平台的最底层-1T基础设施,即Infrastructure as a Service。月艮务提供商将IT基础设施(包括服务器、网络、存储、操作系统)虚拟化后变成一种程序可管理的虚拟资源,通过网络为用户提供计算和存储服务。“IaaS管理平台”的设计目标是在云计算环境中将数据中心所有服务器、存储和网络设备集中统一管理,通过模版配置和动态调整等功能为用户提供整合的、高可用性的、可快速部署使用的IT基础设施。因此该平台具备云资源管理能力,尤其包括虚拟机生命周期管理(创建、删除、停止、关机等),同时也具备将其管理能力形成服务对外提供。 为提高应用系统在高并发请求场景下的可用性,一般要采取支持负载均衡和横向扩展的应用部署架构模式,以典型的Java Web应用为例,如图1所示,其通过专业的负载均衡器F5(其高负载性由其产品自身保证,本说明书不详细展开),将外部请求分发至反向代理层,反向代理再对请求进行二次分发,将其分发至应用处理层,每个层次都不存在单点故障,该部署架构大大提高了系统的可用性。 当外部的并发请求量越来越大时,通过对上述架构进行横向扩展,增加不同层次的处理节点,将增加的请求负载转移到新的处理节点上,以保证可用性不变,如图2所示。 在云计算环境中,大量的计算能力通过虚拟化技术进行资源池化,并例如以虚拟机的形式对外提供服务。由于虚拟机本质以物理设备的文件形式存在,其具有高效的管理性,便于动态生成与删除。因此基于以上特征,云计算环境中实现自动伸缩能力具有先天的优势。 不过由于应用场景多种多样,IaaS管理平台无法独立完成整个自动伸缩过程。因此在云计算环境中实现自动伸缩需要IaaS管理平台和应用两部分组合实现。本专利技术提出在IaaS管理平台侧提供监控、伸缩、脚本执行等基础能力,而在应用侧开发自己的伸缩处理模块,本文档来自技高网...

【技术保护点】
一种云计算环境下的自动伸缩方法,包括:通过IaaS管理平台中的虚拟机监控接口来定时采集监控信息,并将其写入缓存中;分析所述缓存中的监控信息;判断所分析的监控信息是否达到伸缩阈值;在所分析的监控信息达到所述伸缩阈值时,根据所述IaaS管理平台中预定义的伸缩配额、应用中预定义的伸缩配额以及伸缩策略来调用所述IaaS管理平台中的伸缩接口来创建或移除虚拟机;以及通过所述IaaS管理平台中的命令执行接口来完成应用和负载平衡的配置。

【技术特征摘要】

【专利技术属性】
技术研发人员:祖立军于镳才华王海冰何朔
申请(专利权)人:中国银联股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1