7 ms·
VMware has been doing this for years, it's called vmotion and there is a lot of documentation about it if you are interested (eg https://www.thegeekpub.com/8407
by roomey 4y ago
VMware has been doing this for years, it's called vmotion and there is a lot of documentation about it if you are interested (eg https://www.thegeekpub.com/8407/how-vmotion-works/ https://www.thegeekpub.com/8407/how-vmotion-works/ )
Essential, memory state is copied to the new host, the VM is stunned for a millisecond and the cpu states is copied and resumed on the new host (you may see a dropped ping). All the networking and storage is virtual anyway so that is "moved" (it's not really moved) in the background.
- mh- 4y agoUp to 500ms per your source, depending on how much churn there is in the memory from the source system. Very cool.
- davidro80 4y ago
- lbhdc 4y agoThat is really interesting I didn't realize it was so fast. Thanks for the post I will give it a read!
- jiggawatts 4y agoThe clever trick here is that they'll pre-copy most of the memory without bothering to do it consistently, but mark pages that the source had written to as "dirty". The network cutover is stop-the-world, but VMware doesn't copy the dirty pages during the stop. Instead, it simply treats them as "swapped to pagefile", where the pagefile is actually the source machine memory. When computation resumes at the target, the source is used to page memory back in on-demand. This allows very fast cutovers.
- politelemon 4y ago> VM is stunned for a millisecond This conjures up hilarious mental imagery, thanks
- kevincox 4y agoYou just bop it on the head, and move it to the new machine quickly. By the time the VM comes to it won't even realize that it is in a new home.