Abstract To improve the scalability and elasticity of application deployment and operation in cloud computing environments, new architectures and techniques are developed and studied, e.g., microservice architecture, and Docker container. Especially, Docker container enables the sharing on operation system and supporting libraries, which is more lightweight, prompt and scalable than Hypervisor based virtualization. These features make it ideally suit for applications deployed in microservice architecture. However, existing models and schemes, which are mostly designed for Hypervisor based virtualization techniques, fall short to be efficiently used for Docker container based application deployment. To take the benefits of microservice architecture and Docker containers, we explore the optimization of application deployment in cloud data centers using microservice and Docker containers. Our goal is to minimize the application deployment cost as well as the operation cost while preserving service delay requirements for applications. In this paper, we first formulate the application deployment problem by examining the features of Docker, the requirements of microservice-based applications, and available resources in cloud data centers. We further propose a communication efficient framework and a suboptimal algorithm to determine the container placement and task assignment. The proposed algorithm works in a distributed and incremental manner, which makes it scalable to massive physical resources and diverse applications under the framework. We validate the efficiency of our solution through comparisons with three existing strategies in Docker Swarm using real traces from Google Cluster. The evaluation results show that the proposed framework and algorithm provide more flexibility and save more cost than existing strategies. scalability [skeɪləˈbɪlɪti] n. 可扩展性;可伸缩性;可量测性; elasticity [ˌiːlæˈstɪsəti] n. 弹性; 弹力; hypervisor n. 管理程序; fall short 缺乏; 不足; dock n. 船坞; 船埠; 码头; 港区; (供运货汽车或铁路货车装卸货物的) 月台; v. (使船) 进港,停靠码头,进入船坞; (使宇宙飞船在外层空间) 对接; 扣除(部分工资等); formulate [ˈfɔːmjuleɪt] v. 制订; 规划; 构想; 准备; 确切表达; 认真阐述; suboptimal 次优的; 次优; 次优化; 次佳; placement [ˈpleɪsmənt] n. (对人的) 安置,安排; 实习工作; 实习课; (对物件的) 安置,放置; |
|