Microservice Based Architecture: Towards High-Availability for Stateful Applications with Kubernetes

被引:46
作者
Vayghan, Leila Abdollahi [1 ]
Saied, Mohamed Aymen [2 ]
Toeroe, Maria [3 ]
Khendek, Ferhat [1 ]
机构
[1] Concordia Univ, Engn & Comp Sci, Montreal, PQ, Canada
[2] Univ Quebec Rimouski, Math Comp Sci & Engn, Rimouski, PQ, Canada
[3] Ericsson Inc, Montreal, PQ, Canada
来源
2019 IEEE 19TH INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY (QRS 2019) | 2019年
基金
加拿大自然科学与工程研究理事会;
关键词
Microservices; Containers; Orchestration; Docker; Kubernetes; Failure; Availability;
D O I
10.1109/QRS.2019.00034
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Kubernetes is an open source platform that hides the complexity of orchestrating containerized microservices while managing their availability. Stateless microservices can be executed in a resilient manner with Kubernetes. However, the same is not true for stateful microservices. Containers are characterized by having an ephemeral state and the state aspect of stateful microservices makes orchestration more complex than what the initial Kubernetes controllers were built for. In this paper, we investigate the current Kubernetes support for stateful microservices and identify the problems. We propose a solution to enrich Kubernetes with a State Controller that allows for state replication and automatic service redirection to the healthy entities through the management of secondary labels. We have conducted experiments under the default configuration of Kubernetes as well as tinder its most responsive one to evaluate our solution and compare the different architectures from an availability perspective. We also perform a comparative evaluation with OpenSAF, which is a proven solution for enabling high-availability. The results of our investigations show that our solution improves the recovery time of stateful microservices by 55% and even up to 99% in certain cases.
引用
收藏
页码:176 / 185
页数:10
相关论文
共 9 条
[1]  
[Anonymous], 2015, BUILDING MICROSERVIC
[2]  
Dragoni N., 2017, PRESENT ULTERIOR SOF, P195, DOI DOI 10.1007/978-3-319-67425-4_12
[3]   Comparing redundancy models for high availability middleware [J].
Kanso, Ali ;
Toeroe, Maria ;
Khendek, Ferhat .
COMPUTING, 2014, 96 (10) :975-993
[4]   Availability in the cloud: State of the art [J].
Nabi, Mina ;
Toeroe, Maria ;
Khendek, Ferhat .
JOURNAL OF NETWORK AND COMPUTER APPLICATIONS, 2016, 60 :54-67
[5]   State machine replication in containers managed by Kubernetes [J].
Netto, Hylson V. ;
Lung, Lau Cheuk ;
Correia, Miguel ;
Luiz, Aldelir Fernando ;
Sa de Souza, Luciana Moreira .
JOURNAL OF SYSTEMS ARCHITECTURE, 2017, 73 :53-59
[6]  
Netto HV, 2018, IEEE SYMP COMP COMMU, P58, DOI 10.1109/ISCC.2018.8538452
[7]  
Soenen T., 2017, 2017 9 INT WORKSH RE, P1, DOI DOI 10.1109/RNDM.2017.8093034
[8]  
TOEROE M, 2012, SERVICE AVAILABILITY
[9]  
Vayghan L. A., 2019, ARXIV190104946