Workload performance and interference on containers

Surya Kant Garg, J. Lakshmi · 2017

Virtualization facilitates provisioning of resources to multiple users on the same physical machine while trying to maximize the resource utilization. Depending upon the layer of abstraction different virtualization technologies offer different advantages. Containers, abstracting Operating System (OS), offer lightweight virtualization and have become a popular way to deploy microservices. Containers proficiently bridge the gap between development and production environments by enabling CI/CD (Continuous Integration / Continuous Deployment). On one hand they provide some fine solutions for provision and management of resources, on the other hand containers pose many challenges. Consolidation of workloads as containers on a machine with the intent of maximizing utilization of all the resources is one of those. Placement of containers without insights into workload might lead to poor and unpredictable application performance particularly so if the hostOS usage of resources is not accounted for. In this paper, we present experimental results of exercising different workloads, specific to different shared resources on Linux-Docker containers. This study indicates that containers also exhibit interference on shared resources. This interference is due to hostOS support required for containers and can be disruptive if the mix of containers hosted on a machine is purely based on each container's resource use.

Read the paper · More papers on PaperTik