VMware虚拟化之vSphere4.1-VMotion
经过之前几篇文章的介绍,我们已经完成了vSphere4.1中ESX4.1、vCenter Server4.1以及vSphere Client的安装,从本次开始,我们来了解一下在vSphere平台下的几个高级功能的使用场景和配置。
VMotion
VMware VMotion可使 IT 环境保持正常运行,为您提供空前的灵活性和可用性,以满足您的业务和最终用户不断增长的需要。以零停机时间迁移虚拟机,将正在运行的虚拟机从一台物理服务器移动至另一台物理服务器,而不影响最终用户。使得系统管理员在进行硬件维护、主机补丁更新、重启等计划停机的时候,保证线上业务系统不中断。

虚拟机的全部状态由存储在共享存储器上的一组文件进行封装,而 VMware 的 VMFS 群集文件系统允许源和目标 VMware ESX 同时访问这些虚拟机文件。然后,虚拟机的活动内存和精确的执行状态可通过高速网络迅速传输给目标主机,并通过内存反复多次同步技术,实现源和目标VMware ESX主机上被迁移虚拟机的内存完全一致,此时,虚拟机瞬间切换至目标计算机,用户的访问请求就被重定向到了新的主机上。由于网络也被 VMware ESX 虚拟化,因此,虚拟机保留其网络标识和连接,从而确保实现无缝迁移,但因此也要求进行VMotion的源和目标ESX主机上的虚拟网络配置保持相同。

Vmotion中的ESX主机要求
l 必须能够访问共享存储(Fibre Channel,iSCSI,NAS)
l 虚拟机文件存储在共享存储中
l 网络最好千兆以太网
l 主机能访问共同的物理网络
l 所有主机必须采用兼容的CPU
Vmotion中的虚拟机要求
l 虚拟机连接的内部vSwitch必须具备Uplink上行链路
l 虚拟机所连接的虚拟网络标签,必须在源和目标ESX主机上的vSwitch上配置相同的名称
l 虚拟机不能连接外部虚拟设备(例如CD-ROM或软驱等)
l 虚拟机不能是MSCS群集中的一个节点
l 目标主机必须能够访问虚拟机交互文件(swap)
l 如果虚拟机使用了RDM(原生磁盘映射),则该RDM必须能够被目标主机访问
Vmotion的配置
VMotion的配置过程可以分为以下几个过程:
1、 创建群集,并向群集中添加ESX主机
在vCenter Server中,在文件夹上,右键单击,选择“新建群集
然后,输入群集名称

接下来,需要配置群集是否启用EVC,可为AMD或者Intel的CPU启用EVC功能,一旦启用,将只有具备指定型号CPU的机器才能加入群集,从而保证了虚拟机VMotion的成功。
因为笔者实验中采用的计算机并不是标准的服务器,因此其CPU并不支持EVC,在此,我们选择“禁用EVC功能”。
注:EVC仅提高vMotion的成功性,但并不是VMotion的必需条件,禁用EVC也可以实现VMotion。

之后点击下一步,直到完成。

创建完群集后,在vCenter Server的左侧,用鼠标左键将两台ESX主机拖拽到群集中,如下图(左)所示,拖拽完成后如下图(右)所示。


拖拽ESX主机到群集 ESX主机加入群集后
2、 配置外部共享存储
VMotion的虚拟机文件必须存放在外部共享存储中,能够被源和目标ESX主机共同访问。在企业环境下,建议使用专业的存储设备,在此实验环境下,笔者采用Starwind软件模拟外部ISCSI存储,预先建立了一个共享存储。ESX主机连接外部ISCSI存储,需要预先配置好VMkernel网络。有关Starwind软件的使用,大家可以参考网上资料。
在此测试环境下,笔者将共享存储命名为iSCSIShare,链接成功后,结果如下图所示,能够看到两个存储,一个是ESX本地,一个是刚添加的外部共享存储。

然后在另外一台ESX主机上,进行相同的操作,也添加该外部共享存储。
3、 在外部共享存储中,创建虚拟机
用户可以直接在共享存储中新建虚拟机,也可先将虚拟机创建在ESX主机本地磁盘,之后,再利用Storage vMotion技术将其实时迁移至共享存储。
如下图所示:可以看到Iscsishare共享存储中,有一台虚拟机“Win2k”。

4、 在VMkernel接口启用VMotion
打开ESX主机中的vSwitch0的属性,

选择“VMkernel”网络,点击“编辑”

在“常规标签页”,勾选“vMotion”后面“已启用”,然后确定。

5、 进行VMotion测试
从下图中,可以看到Win2k这台虚拟机运行在群集中的192.168.1.41机器上,在此虚拟机上,“右键”之后,选择“迁移”

接下来,选择“更改主机”

选择虚拟机迁移的目标ESX主机,在此,我们选择群集中的另外一台机器(192.168.1.45),然后点击“下一步”。
由于vMotion要求千兆网络,我们的测试环境网卡是百兆,所以下面会有警告提示,不过并不影响vMotion的结果。

然后,在优先级的页面可以选择高优先级或者标准优先级。
选择“高优先级”:在迁移之前,预先检测目标ESX主机上,是否具备足够资源进行迁移,如果资源不足,则迁移自动停止。
选择“标准优先级”:则不管目标ESX主机上是否具备足够资源,迁移始终会发生,但是可能持续时间很长,且过程中虚拟机可能会无法访问。
所以系统默认都选择“高优先级”,在此,我们保持不变,点击下一步

最后,点击完成,确认。

等待几分钟后,如下图所示,Win2k这台虚拟机已经迁移到了192.168.1.45主机上。

vMotion结果验证:
为了验证迁移过程中,虚拟机上的业务并不中断,我们通过“Ping win2k –t”的方法来检测虚拟机的在线状态。如下图所示

我们可以看到,在迁移进行过程中,虚拟机一直都在线,并不会因为迁移而导致虚拟机死机、重启、或关机。仅当迁移过程进行到78%的时候(此时为虚拟机向目标主机切换的瞬间),连续的ping包中有一个数据包返回时间为2492ms(有时此数据包会超时),但它并不影响业务系统的连续性,假如我们在迁移过程中,进行文件下载、视频播放、DNS解析等操作时,这些工作都不会中断。
VMotion实现了零宕机的无缝迁移,这对于我们的ESX主机维护工作显得异常重要,假如出现某台ESX主机需要更换零配件或升级等动作时,我们既可以将原本在该机上的VM通过vMotion技术,实时迁移到其他拥有足够资源的主机上,这样一来,我们就可以实现零宕机维护工作。

VMotion是VMware的一项高级功能,它允许在不中断服务的情况下,将运行中的虚拟机从一台物理服务器迁移到另一台。本文详细介绍了VMotion在vSphere4.1中的应用,包括对ESX主机和虚拟机的要求,以及配置步骤,展示了如何通过VMotion实现实时迁移并确保业务连续性。
2106

被折叠的 条评论
为什么被折叠?



