Application-Assisted Live Migration of Virtual Machines with Java Applications Kai-Yuan (Karen) Hou, Kang G. Shin, and Jan-Lung Sung Conference talk @ Thu. Apr. 23, Virtualization session (10:50 – 12:30) VM live migration performs poorly when network is a bottleneck Our solution: selectively skip transfer of memory with application assistance VM memory gets dirtied faster than transferred amount of memory transfer and interval of pre-copy iterations do not decrease 1. long migration time 2. significant network traffic 3. non-trivial application downtime • Some memory content need not be migrated for running applications to execute in the destination, e.g., reproducible content, caches, garbage objects • Built a generic framework for applications to inform the migration daemon which memory pages can be skipped JAVMM: migrate VMs running Java applications skipping transfer of garbage • Java-Aware VM Migration applies our proposed framework to Java applications • JVM assists on behalf of Java applications – no modifications to Java applications required • JVM enforces a minor GC before the VM pauses for the last migration iteration the VM resumes in the destination with the Young generation of the Java heap mostly empty • The migration daemon skips transferring the Young generation, except the data surviving the enforced GC Up to over 90% less migration time, less network traffic, smaller downtime Migration Time Network Traffic Application Downtime • JAVMM is most beneficial when the Young generation is large and frequently dirtied, i.e., when Java applications allocate objects rapidly and use mostly short-lived objects Questions? Contact [email protected], or find Karen at the conference!
© Copyright 2020