[发明专利]基于SLA的容器资源调度方法和系统在审
申请号: | 201510959326.1 | 申请日: | 2015-12-18 |
公开(公告)号: | CN106878042A | 公开(公告)日: | 2017-06-20 |
发明(设计)人: | 刘金东 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L29/08 |
代理公司: | 北京天达知识产权代理事务所(普通合伙)11386 | 代理人: | 左萌,张春 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 sla 容器 资源 调度 方法 系统 | ||
技术领域
本发明涉及互联网技术领域,尤其涉及一种基于SLA的容器资源调度方法和系统。
背景技术
LXC(Linux Container)容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的命名空间(NameSpace)。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。
如附图所示,Docker项目的目标是实现轻量级的操作系统虚拟化解决方案。在LXC的基础上,Docker进行了进一步的封装,让用户不需要去关心容器的管理,操作Docker的容器就像操作快速轻量级的虚拟机一样简单。
Docker和传统虚拟化(KVM、XEN等)方式的不同之处在于:容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件的基础上,虚拟出自己的系统,再在系统上部署相关的APP应用。跟传统VM比较具有如下优点:1)操作启动快;2)轻量级虚拟化;3)开源免费;4)前景及云支持。
Docker核心解决的问题是利用LXC来实现类似VM的功能,从而利用更加节省的硬件资源供给用户更多的计算机资源。随着Docker的发展,在一台Docker宿主机中启动的容器越来越多。而且,Docker宿主机内部的容器数量和状态经常发生变化。如何对其进行性能管理及体验保证成为越来越需要关注的问题。现有技术中,性能管理仅仅针对少数VIP用户所对应的少数资源,绝大多数的用户的性能管理是无法被保证的,用户体验较差。
发明内容
鉴于上述问题,提出了本发明以便提供一种基于SLA的容器资源调度方法和系统,能够按照服务等级进行性能管理和资源调度,提高用户体验。
根据本发明的一个方面,提供了一种基于SLA的容器资源调度方法,包括以下步骤:
基于SLA对Docker中的容器进行用户服务等级划分;
选取资源管理对象;
确定资源管理对象的目标性能;
进行容器初始化,根据用户服务等级在宿主机中对容器进行资源初始分配;
对宿主机中容器进行监视;
对监测到的实际性能的数据结合资源管理对象的目标性能进行分析,判断实际性能是否达到目标性能,根据判断结果进行调度。
可选地,所述资源管理对象为向用户的应用程序提供服务的至少一个资源单元。
可选地,所述资源单元分为CPU资源单元、内存资源单元、磁盘资源单元、网络资源单元。
可选地,所述确定资源管理对象的目标性能包括以下中的至少一种:
根据系统中预设的性能策略文件,通过管理对象的某些属性结合性能策略文件确定管理对象能够得到性能保证的目标性能;由管理人员通过管理界面手动设置管理对象的目标性能。
可选地,所述对宿主机中容器进行监视包括:
周期性或持续性地监测宿主机中各个容器的实际性能。
可选地,所述对宿主机中容器进行监视包括:
扫描宿主机内的容器,为每个容器配置对应的进程;
各个进程同步抽取各自容器的状态信息;
对各容器的状态信息进行处理,得到监控信息;
将各容器的监控信息汇总到数据队列中,每个容器的监控信息利 用容器标识进行区分。
可选地,所述各个进程同步抽取各自容器的状态信息包括以下一项或多项:
cpu占用信息、内存占用信息、网络流量信息以及磁盘占用信息。
可选地,所述对监测到的实际性能的数据结合资源管理对象的目标性能进行分析,判断实际性能是否达到目标性能,根据判断结果进行调度包括:
如果不满足目标性能,则需要确定进行资源调度;根据用户服务等级,优先保证优先级较高的用户的容器的性能;
如果满足目标性能,则继续进行监测。
根据本发明的另一个方面,提供了一种基于SLA的容器资源调度系统,包括:
服务等级划分模块,基于SLA对Docker中的容器进行用户服务等级划分;
资源管理对象选取模块,选取资源管理对象;
目标性能确定模块,确定资源管理对象的目标性能;
容器初始化模块,进行容器初始化,根据用户服务等级在宿主机中对容器进行资源初始分配;
监视模块,对宿主机中容器进行监视;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510959326.1/2.html,转载请声明来源钻瓜专利网。