最近在调研智能网卡,对于使用智能网卡的环境下,如何实现虚拟机的热迁移呢,这里分享一下。
热迁移的过程分以下几步完成:
发起热迁移后,在目的物理机上会启动一个VM,命令参数等同于源物理机上正在运行的VM的启动参数。
标记RAM中所有需要迁移的page为dirty。
发送标记为dirty的page到目的机的VM中,重复多次,直到dirty的page数量减少到某个临界值,或者是达到其他可以触发本阶段结束的条件。
停止源物理机上VM中Guest的运行,并将剩余dirty pages和设备状态发送到目的物理机上的VM中。
目的物理机上VM中Guest开始运行,源物理机上的VM退出。