Optimizing Service Placement for Microservice Architecture in Clouds

被引:19
作者
Hu, Yang [1 ,2 ]
de Laat, Cees [1 ]
Zhao, Zhiming [1 ]
机构
[1] Univ Amsterdam, Fac Sci, Informat Inst, NL-1098 XH Amsterdam, Netherlands
[2] Natl Univ Def Technol, Sch Comp Sci, Changsha 410073, Hunan, Peoples R China
来源
APPLIED SCIENCES-BASEL | 2019年 / 9卷 / 21期
基金
欧盟地平线“2020”;
关键词
service placement; cluster scheduling; network optimization; resource management; microservice architecture; cloud computing; DEPLOYMENT;
D O I
10.3390/app9214663
中图分类号
O6 [化学];
学科分类号
0703 ;
摘要
As microservice architecture is becoming more popular than ever, developers intend to transform traditional monolithic applications into service-based applications (composed by a number of services). To deploy a service-based application in clouds, besides the resource demands of each service, the traffic demands between collaborative services are crucial for the overall performance. Poor handling of the traffic demands can result in severe performance degradation, such as high response time and jitter. However, current cluster schedulers fail to place services at the best possible machine, since they only consider the resource constraints but ignore the traffic demands between services. To address this problem, we propose a new approach to optimize the placement of service-based applications in clouds. The approach first partitions the application into several parts while keeping overall traffic between different parts to a minimum and then carefully packs the different parts into machines with respect to their resource demands and traffic demands. We implement a prototype scheduler and evaluate it with extensive experiments on testbed clusters. The results show that our approach outperforms existing container cluster schedulers and representative heuristics, leading to much less overall inter-machine traffic.
引用
收藏
页数:18
相关论文
共 35 条
[1]  
Ajiro Y., 2007, P INT CMG C SAN DIEG, V253
[2]  
Alicherry M, 2012, IEEE INFOCOM SER, P963, DOI 10.1109/INFCOM.2012.6195847
[3]   Performance Evaluation of Microservices Architectures using Containers [J].
Amaral, Marcelo ;
Polo, Jorda ;
Carrera, David ;
Mohomed, Iqbal ;
Unuvar, Merve ;
Steinder, Malgorzata .
2015 IEEE 14TH INTERNATIONAL SYMPOSIUM ON NETWORK COMPUTING AND APPLICATIONS (NCA), 2015, :27-34
[4]  
[Anonymous], 2010, P IEEE C EV COMP BAR, DOI DOI 10.1109/CEC.2010.5586151
[5]   Migrating to Cloud-Native Architectures Using Microservices: An Experience Report [J].
Balalaie, Armin ;
Heydarnoori, Abbas ;
Jamshidi, Pooyan .
ADVANCES IN SERVICE-ORIENTED AND CLOUD COMPUTING (ESOCC 2015), 2016, 567 :201-215
[6]  
Baldin I., 2016, The GENI Book, P279
[7]  
Benson T, 2009, WREN 2009, P65
[8]  
Biran O., 2012, Proceedings of the 2012 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid 2012), P498, DOI 10.1109/CCGrid.2012.119
[9]   Affinity-driven system design exploration for heterogeneous multiprocessor SoC [J].
Brandolese, C ;
Fornaciari, W ;
Pomante, L ;
Salice, F ;
Sciuto, D .
IEEE TRANSACTIONS ON COMPUTERS, 2006, 55 (05) :508-519
[10]  
Cerny T, 2017, APPL COMPUT REV, V17, P29, DOI [10.1145/3129676.3129682, 10.1145/3183628.3183631]