KVM虚拟机迁移概述

近期还在学习实验室云平台,当前学到了虚拟机迁移这块。当用户应用并发量改变时,相应云平台虚拟机资源要做出动态调整。不仅要满足SLA(给用户提供可靠的服务),而且能提高均衡负载,降低能耗。
迁移时要考虑:

  1. 整体迁移时间要短。因为虚拟机迁移会很消耗能源。
  2. 停机时间要短。物理机停机,才可进行虚拟机迁移,但是会影响服务性能。所以考虑何种策略使得停机时间最短。
  3. 性能影响最小。满足SLA,或者说使其违背率最小。

虚拟机迁移分三种情况:P2V、V2V、V2P(P为物理机,V为虚拟机)。其中V2V是核心,指不同物理机上的虚拟机进行迁移。

P2V是指将物理机上的OS,应用软件,磁盘数据等迁移到虚拟机上,主要是因并发量大在本地增加虚拟机时使用。可以采用virt-p2v等软件进行迁移。

V2P是指将虚拟机资源迁移到物理机上,这块也不是重点,主要应用在配置物理机时,可以现在虚拟机上进行配置,然后应用到物理机上。

V2V:主要分离线迁移和在线迁移。

离线迁移:挂起源虚拟机,将系统状态,磁盘数据等迁移到目标主机。适用于性能要求不高的用户应用。

在线迁移:不像离线那样挂起后在迁移,而是在运行中迁移。服务在源主机上进行,采用pre-copy策略,循环一次迁移当前内存到目标主机,下一周期迁移脏页面(服务实时运行,不断在读写内存数据,源数据改变时形成脏数据,需要将更新后的页面再次发给目标主机),不断循环,待时机成熟后(源和目内存差异达到标准),源主机挂起,控制权交给目标主机,服务在目标主机上运行。多应用于要求满足SLA的应用,当前云平台基本都在进行在线迁移。

不管是在线还是离线,要考虑物理机之间是采用共享外存存储还是本地存储。像SAN(storage area network)和 NAS(network-attached storage)都是集中式共享外存存储。

共享外存存储,虚拟机通过SAN网络共同使用当前外存资源,这样在迁移时就不用迁移虚拟机磁盘上的保存数据。而本地存储迁移时除了迁移系统状态(cpu、内存等)时,还要迁移存储在本地的虚拟机镜像(因为虚拟机的文件系统是建立在虚拟机镜像上面的)。

你可能感兴趣的:(KVM虚拟机迁移概述)