Seamless Runtime Migration from Virtual Machines to Containers with eBPF Tracing

Research question and methodology

The central research question is: "How can VM workloads be seamlessly migrated to containerized environments during runtime?"
The research answers this question by analyzing the limitations of existing state-of-the-art migration tools and proposing a new methodology to overcome them. A quantitative approach was chosen, analyzing metrics such as container image size, migration time, and performance overhead to evaluate the effectiveness of the proposed framework.

Research design and techniques

The study introduces a controller-agent framework that uses eBPF (extended Berkeley Packet Filter) for dynamic system call tracing on the source VM. This allows for highly accurate identification of an application's runtime dependencies. This is a clear difference from existing tools, which often rely on static analysis and migrate the entire VM file system. The framework is designed to be compatible with all Debian-based Linux systems and has been evaluated with several popular applications, including NGINX, MariaDB, and Redis. The performance of the framework has been compared to industrial tools such as AWS App2Container and Google Migrate Containers.

Results: efficiency gains versus overhead considerations

The results demonstrate the dual nature of the proposed migration technique. On the one hand, the framework achieves a significant reduction in "container bloat," with container image sizes reduced by 49.7% to 92.5% compared to the original VM disk usage. This leads to a sharp decrease in artifact generation and image build times, with reductions of 56.9% to 96.0% and 41.3% to 96.4%, respectively, compared to Google Migrate Containers.

On the other hand, tracing and migrating a running application introduces CPU overhead on the source VM. This overhead can be significant in resource-constrained environments.

Implications and future research

The research highlights the potential of eBPF-based dynamic analysis for efficient VM-to-container migration. The proposed framework offers a more streamlined and less bloated alternative to existing industrial solutions, making it better suited for live migration scenarios. At the same time, limitations are acknowledged, such as possible performance degradation on the source VM and the need for manual intervention in specific cases. Future research could focus on further reducing container bloat, integrating with container debloating tools, and exploring Unikernels to further increase efficiency.

Download
Privacy overview
This website uses cookies. We use cookies to ensure that our website and services function properly, to gain insight into the use of our website, and to improve our products and marketing. For more information, please read our privacy and cookie policy.