A Portable Load Balancer with ECMP Redundancy for Container Clusters

Kimitoshi TAKAHASHI  Kento AIDA  Tomoya TANJO  Jingtao SUN  Kazushige SAGA  

Publication
IEICE TRANSACTIONS on Information and Systems   Vol.E102-D   No.5   pp.974-987
Publication Date: 2019/05/01
Online ISSN: 1745-1361
DOI: 10.1587/transinf.2018NTP0022
Type of Manuscript: Special Section PAPER (Special Section on the Architectures, Protocols, and Applications for the Future Internet)
Category: 
Keyword: 
redundancy,  ECMP,  load balancer,  container,  BGP,  

Full Text: PDF(2.6MB)>>
Buy this Article




Summary: 
Linux container technology and clusters of the containers are expected to make web services consisting of multiple web servers and a load balancer portable, and thus realize easy migration of web services across the different cloud providers and on-premise datacenters. This prevents service to be locked-in a single cloud provider or a single location and enables users to meet their business needs, e.g., preparing for a natural disaster. However existing container management systems lack the generic implementation to route the traffic from the internet into the web service consisting of container clusters. For example, Kubernetes, which is one of the most popular container management systems, is heavily dependent on cloud load balancers. If users use unsupported cloud providers or on-premise datacenters, it is up to users to route the traffic into their cluster while keeping the redundancy and scalability. This means that users could easily be locked-in the major cloud providers including GCP, AWS, and Azure. In this paper, we propose an architecture for a group of containerized load balancers with ECMP redundancy. We containerize Linux ipvs and exabgp, and then implement an experimental system using standard Linux boxes and open source software. We also reveal that our proposed system properly route the traffics with redundancy. Our proposed load balancers are usable even if the infrastructure does not have supported load balancers by Kubernetes and thus free users from lock-ins.