ISSN 1000-1239 CN 11-1777/TP

计算机研究与发展 ›› 2017, Vol. 54 ›› Issue (3): 597-608.doi: 10.7544/issn1000-1239.2017.20151043

• 软件技术 • 上一篇    下一篇

面向微服务架构的容器级弹性资源供给方法

郝庭毅1,2,3,吴恒1,吴国全1,2,张文博1   

  1. 1(中国科学院软件研究所软件工程技术中心 北京 100190); 2(计算机科学国家重点实验室(中国科学院软件研究所) 北京 100190) (中国科学院大学 北京 100049) (haotingyi13@otcaix.iscas.ac.cn)
  • 出版日期: 2017-03-01
  • 基金资助: 
    国家自然科学基金项目(61472407,61363003)

Elastic Resource Provisioning Approach for Container in Micro-Service Architecture

Hao Tingyi1,2,3, Wu Heng1, Wu Guoquan1,2,Zhang Wenbo1   

  1. 1(Technology Center of Software Engineering, Institute of Software, Chinese Academy of Sciences, Beijing 100190); 2(State Key Laboratory of Computer Science (Institute of Software, Chinese Academy of Sciences), Beijing 100190); 3(University of Chinese Academy of Sciences, Beijing 100049)
  • Online: 2017-03-01

摘要: 容器作为物理资源的逻辑抽象,具有资源占用少、资源供给快等特点,适合工作负载突变的互联网应用模式,特别是面向微服务架构的新型服务范型.已有工作受限于物理机和虚拟化环境,或资源难以弹性供给或资源供给时效性较差,难以应对负载突变(flash-crowds)场景.针对此问题提出了一种服务质量(quality of service, QoS)敏感的、基于前馈的容器资源弹性供给方法,该方法采用排队论刻画工作负载、资源利用率和响应时间的关联关系,构建应用性能模型.其中,响应时间采用模糊自适应卡尔曼滤波进行预测(前馈控制器),预测结果违背QoS是触发资源弹性供给的依据.基于CloudStone基准的实验结果显示,前馈控制器具有快速收敛的特点,对响应时间的预测误差小于10%.在flash-crowds场景下,相对于已有方法可有效保障应用的QoS.

关键词: 容器虚拟化, 模糊自适应式卡尔曼滤波, 弹性资源供给, 微服务架构, 突发性负载

Abstract: As a logical abstraction of physical resources, container-based virtualization has been adopted widely in cloud computing environment for elastic resource provisioning, which is lower overhead and potentially better performance. Nowadays, more and more enterprises seek to move large-scale Internet-based applications with micro-service architecture into the container-based infrastructure, and focus on efficient resource management. Unfortunately, many existing approaches were restricted by physical machine or virtual environment, the resources are hard to be elastically or timely provisioning. Therefore, Internet-based applications may suffer from frequent service-level agreement(SLA) violations under flash-crowd conditions. To address this limitation, this thesis proposes a quality of service(QoS) sensitive resource provisioning approach for containers in micro-service architecture based on the feed-forward control. We employ a performance model based on queuing theory. Firstly, we capture the relationship among workload, resource utilization and response time. Secondly, we predict the response time with fuzzy federal adaptive Kalman filtering based on the feed-forward control, and if the prediction result is against pre-defined QoS, elastic resource scheduling process is triggered. Experimental results based on CloudStone show that the feed-forward algorithm converges quickly. The prediction result of the response time has only maximum error of 10%, and is more effective and accurate compared with existing approaches. Furthermore, our approach can effectively protect resource provisioning for flash-crowds workload.

Key words: container virtualization, fuzzy adaptive Kalman filtering, elastic resource provisioning, micro-service architecture, flash-crowds

中图分类号: