Veyth: Adaptive Container Placement for Optimizing Cross-Server Network Traffic of Microservice Applications
摘要
The microservice architecture is widely adopted for cloud applications. These microservice applications are typically deployed using containers on distributed servers in cloud datacenters, where efficient placement is critical to meet diverse resource demands and ensure Quality-of-Service (QoS). However, existing approaches often fall short in optimizing cross-server traffic, as they overlook shared microservices and multi-service patterns and lack a global traffic-aware scheme. We therefore propose Veyth, an adaptive container placement system that reduces cross-server traffic and tail latency through three strategies: service-based decoupling, traffic-aware stateless microservice placement, and optimized stateful microservice placement. The decoupling strategy treats queries of each service as an independent execution graph, reducing cross-server traffic and latency by service-level isolation. The stateless microservice placement strategy minimizes cross-server traffic and allocates resources efficiently considering traffic and resource constraints. The stateful microservice placement strategy uses a two-stage server selection method to reduce cross-server traffic. Experimental results show that Veyth reduces the cross-server traffic and 99%-ile latency by 81.8% and 53.4%, respectively, compared to state-of-the-art works.