计算机科学与探索 ›› 2017, Vol. 11 ›› Issue (8): 1204-1213.DOI: 10.3778/j.issn.1673-9418.1609030

• 学术研究 • 上一篇    下一篇

私有云环境下基于虚拟集群的资源共享方法

刘沛东1,2,安  博1,2,钟业弘1,2,王  虎1,2,曹东刚1,2+   

  1. 1. 北京大学 高可信软件技术教育部重点实验室,北京 100871
    2. 北京大学(天津滨海)新一代信息技术研究院,天津 300450
  • 出版日期:2017-08-01 发布日期:2017-08-09

Virtual Cluster Based Resource Sharing Approach for Private Cloud Environment

LIU Peidong1,2, AN Bo1,2, ZHONG Yehong1,2, WANG Hu1,2, CAO Donggang1,2+   

  1. 1. Key Lab of High Confidence Software Technologies (Peking University), Ministry of Education, Beijing 100871, China
    2. Peking University Information Technology Institute (Tianjin Binhai), Tianjin 300450, China
  • Online:2017-08-01 Published:2017-08-09

摘要: 随着云计算与大数据处理的飞速发展,越来越多的应用框架开始使用“云”的方式运行,这对企业私有云平台提出了一些重要挑战:如何让私有云环境有限的物理资源支持多个应用框架和多个用户,不仅能保证绝大多数现有的异构应用同时运行,还能为新应用提供扩展性与弹性支持。提出了一种新的服务模型ClaaS(cluster as a service),用一种简单而易于实现的方式为中小规模的数据中心解决了上述问题。ClaaS的主要思路是将虚拟化的单位扩展为集群,为分布式的应用框架直接提供虚拟的集群环境。这样,大部分的分布式应用就可以在无需任何修改的条件下直接运行在虚拟的集群环境中。为了验证ClaaS的可行性,基于现有的轻量化容器技术和软件定义网络技术等实现了一个开源轻量级私有云系统Docklet,能够支持用户按需共享资源,支持Spark、MPI等各种计算框架,及Python、R、Java等语言,并在真实教学科研环境中提供、部署服务。最后描述了系统的设计与实现,并进行了实验与评估。

关键词: 云计算, 虚拟机群, ClaaS, 软件定义

Abstract:  With the rapid development of cloud computing and big data processing, an increasing number of application frameworks are being considered to run in a “cloud way”. This development brings about several challenges to the enterprise private cloud computing platform, e.g., sharing limited cluster resources effectively among different frameworks and users, being able to run most existing heterogeneous applications, as well as providing scalability and elasticity support for newly emerged frameworks. This paper proposes a new service model, namely, cluster as a service (ClaaS), which is suitable for medium and small-sized data centers to solve these problems in a relatively easy and general way. The idea behind this model is to virtualize the cluster environment for distributed application frameworks. Most applications can directly run in the virtual cluster environment without any modification, which is a great advantage. Based on lightweight containers and software-defined network, this paper implements an open-source system of ClaaS named Docklet to prove the feasibility of this service model. Docklet is able to distribute resources to users according to their needs, support frameworks like Spark, MPI, and languages like Python, R and Java. Moreover, Docklet is now used to provide and deploy services in real scenarios of teaching and researching. Finally, this paper describes the design and implementation of this system, then presents several examples and evaluates the entire system.

Key words:  cloud computing, virtual cluster, ClaaS, software definition