admin 管理员组

文章数量: 887021


2024年3月9日发(作者:integrate相关短语)

实时迁移 (live migration)是指在保证虚拟机上服务正常运行的同时,虚拟机在不同

的物理主机之间进行迁移,其逻辑步骤与离线迁移几乎完全一致。不同的是,为了保证迁

移过程中虚拟机服务的可用,迁移过程仅有非常短暂的停机时间。迁移的前面阶段,服务

在源主机运行,当迁移进行到一定阶段,目的主机已经具备了运行系统的必须资源,经过

一个非常短暂的切换,源主机将控制权转移到目的主机,服务在目的主机上继续运行。对

于服务本身而言,由于切换的时间非常短暂,用户感觉不到服务的中断,因而迁移过程对

用户是透明的。在线迁移适用于对服务可用性要求很高的场景。

01 live migration的概念

虚拟机实时迁移/动态迁移(Live Migration),作为系统虚拟化的一项关键技术,是

将物理服务器上正在运行的一台或多台VM在线迁移到另一台物理服务器上。迁移过程中

VM对外正常提供服务,整个迁移过程对VM用户透明。

02 live migration的概念

实时迁移的内容包括:虚拟机运行状态(CPU状态、内存镜像、设备状态、网络连接)

及外存数据。

03 live migration的作用

负载均衡:将高负载物理服务器上的虚拟机动态迁移到低负载的物理服务器上,保证

数据中心资源合理分配。

在线维护:在对物理服务器进行维护前,实时将上面运行的虚拟机迁移到其他服务器

上,不会因设备维护导致服务中断。

能源管理:将多个利用率不高的物理服务器上的虚拟机在线整合到少量几台物理服务

器上,降低能耗。

04 live migration的分类

按照虚拟机存储的迁移需求可划分为基于共享存储的实时迁移和全系统实时迁移。

 基于共享存储的实时迁移:物理服务器之间采用SAN或NAS之类的集中式共享外

存设备,因而在迁移时只需要进行虚拟机运行状态的迁移。

 全系统迁移:物理服务器之间没有采用共享外存设备,外存数据保存在物理服务器

本地;或者需要将虚拟机迁移到另一个数据中心。实时迁移中既要迁移运行状态,又要迁

移存储数据。

按照虚拟机迁移的网络环境可划分为基于LAN的实时迁移和基于WAN的实时迁移。

 基于LAN的实时迁移:迁移范围在一个数据中心的二层网络内,能够保证数据传

输速率。

 基于WAN的实时迁移:迁移范围在两个数据中心间的WAN链路上,网络传输带

宽受限。

按照虚拟机迁移的规模可划分为单虚拟机实时迁移和虚拟机集实时迁移。

 单虚拟机实时迁移:一个迁移过程中只迁移独立的一个虚拟机。

 虚拟机集实时迁移:一个迁移过程中同时迁移多台虚拟机,且这些虚拟机可能是完

成同一任务的一个集群。

05 live migration算法

三种基本算法:Pre-copy(主流、学术、商用);Post-copy(学术);基于日志系统

的迁移(学术)

Pre-copy核心机制:迁移开始之后,源主机VM仍在运行,目的主机VM尚未启动。

迁移通过一个循环,将源主机VM的内存数据发送至目的主机VM。循环第一轮发送所有

的内存页数据,接下来的每一轮循环发送上一轮预拷贝过程中被VM写过的脏页内存dirty

pages。直到一定条件(状态基本同步或规定循环次数),预拷贝循环结束,进入停机拷贝

阶段,源主机被挂起,不再有内存更新,然后将剩余的脏页和CPU等运行状态传输至目的

主机VM。

Post-copy核心机制:与Pre-copy相反,先将CPU执行状态发送到目标物理机,目

标VM立即启动运行并替换源VM提供服务(源VM不停机),然后在目标VM运行过程

中,遇到所缺内存页面,再向源主机索取。Post-copy避免了脏页率对迁移过程的影响,

因此两个VM切换时间短,但是总迁移时间比较长。

基于日志系统的迁移核心机制:利用日志系统的checkpointing/recovery和

trace/reply技术,在迁移时首先获得一个VM当前运行状态的checkpoint文件,并将该

文件

传给目标VM,目标VM立即运行。在此传输过程中源VM所做的操作都记录成log

文件。然后跟Pre-copy一样,开始一个反复重传的过程,直到两边状态同步。不同的是,

这里传输的是log文件,状态同步就是对log进行replay。

06 live migration研究点

➢ live migration性能指标:

(1) Total Migration Time(TMT):总迁移时间,从源VM开始传输数据,到目标

VM启动的总时间。

(2) Downtime:停机时间,VM运行状态从源主机切换到目标主机的短暂停机时

间。

(3) Total Data Transferred(TDT):总迁移数据量,迁移过程中传输的数据量。

(4) Degradation Level of Service(DLS):服务降级率,迁移过程对VM所提供

服务的影响。

➢ 单虚拟机live migration算法优化,降低TMT、Downtime和TDT

(1) 内存更新频繁的VM的迁移问题。脏页率高的VM迁移时Downtime时间长。

(2) WAN中迁移VM的带宽限制问题。WAN的有限带宽使得TMT时间长。

(3) VM迁移占用系统资源,导致服务质量下降的问题。

(4) 全系统实时迁移时VM镜像的迁移问题。较大数据量的VM镜像迁移会导致

TMT时间长,特别在WAN中。

07下一步工作

从上述的研究点出发,找出解决问题的创新方法。

利用开源平台KVM搭建实验环境,在KVM中实现自己的方法,进行对比实验。


本文标签: 迁移 运行 过程