资源描述
VMware vCenter VMotion
2012-08-03 11:22:19| 分类: 默认分类|字号 订阅
1. 革命性的虚拟机移动性
通过 VMware VMotion,您可以:
在零停机、用户毫无察觉的情况下执行实时迁移。
持续地自动优化资源池中的虚拟机。
在无需安排停机、不中断业务运营的情况下执行硬件维护。
主动将虚拟机从发生故障或性能不佳的服务器中移出。
2. VMotion 的主机配置
要成功使用 VMotion,必须先正确配置主机,请确保已在以下每个区域中正确地配置了主机:
必须针对 VMotion 正确许可每台主机。
每台主机必须满足 VMotion 的共享存储器需求。
每台主机必须满足 VMotion 的网络要求。
2.1 VMotion 共享存储器要求
在通过 VMotion 迁移期间,所迁移的虚拟机必须位于源主机和目标主机均可访问的存储器上。共享存储器通常位于存储区域网络 (SAN) 上,但也可以使用 iSCSI和 NFS 共享存储器得以实现。
2.2 VMotion 网络要求
VMotion 要求在所有启用 VMotion 的主机之间设置千兆以太网 (GigE)。每台启用 VMotion 的主机都必须至少有两个以太网适配器,其中必须至少有一个是千兆以太网适配器:
在每台主机上,为 VMotion 配置 VMkernel 端口组。并且考量到性能,最好为VMotion网络绑定专用网卡,确保虚拟机在源主机和目标主机上可以访问相同的子网。
确保用于虚拟机端口组的网络标签在主机之间是一致的。在通过 VMotion 迁移期间,vCenter Server 根据匹配的网络标签将虚拟机分配到端口组。
为获取最佳 VMotion 性能,建议使用巨帧。
3. CPU 兼容性和迁移
vCenter Server 在允许迁移正在运行或已挂起的虚拟机时会执行一些兼容性检查以确保虚拟机与目标主机兼容。VMotion 在基础 ESX/ESXi 系统之间传输虚拟机的运行状况。成功的迁移要求目标主机的处理器能够使用源主机的处理器在虚拟机迁移出源主机时使用的等效指令来执行。处理器的时钟速度和缓存大小以及处理器内核的数量可以不同,但处理器必须属于相同的供应商类别(AMD 或 Intel),并且使用兼容的功能集,以达到通过vMotion 迁移所需的兼容性。已挂起的虚拟机的迁移还要求虚拟机能够使用等效指令在目标主机上恢复执行。
开始通过 VMotion 迁移或开始已挂起虚拟机的迁移时,迁移虚拟机向导会检查目标主机的兼容性,如果有阻碍迁移的兼容性问题存在,向导会生成错误消息。
虚拟机启动时,会确定可用的 CPU 功能集。虚拟机的 CPU 功能集基于主机的 CPU 功能集。但是,如果主机是使用增强型 VMotion 兼容性 (EVC) 的群集的一部分,或者如果虚拟机已应用 CPU 兼容性掩码,则主机的一些CPU 功能对虚拟机而言不可见。有关详细信息,请在 VMware 知识库中搜索《VMotion 和 CPU 兼容性常见问题答》。
4. 关于增强型 VMotion 兼容性
可以使用增强型 VMotion 兼容性 (Enhanced VMotion Compatibility, EVC) 功能帮助确保群集内主机的兼容性。EVC 可以确保群集内的所有主机向虚拟机提供相同的 CPU 功能集,即使这些主机上的实际 CPU也是如此。使用 EVC 可避免因 CPU 不兼容而导致通过 VMotion 迁移失败。在“群集设置”对话框中配置 EVC。配置 EVC 时,请将群集中的所有主机处理器配置为提供基准处理能集。EVC 利用 AMD-V Extended Migration 技术(适用于 AMD 主机)和 Intel FlexMigration 技术(Intel 主机)屏蔽处理器功能,以便主机可提供早期版本的处理器的功能集。基准功能集必须等同于群集最小功能集的主机的功能集,或为主机功能集的子集。
5. VMotion 的虚拟机配置要求
以下虚拟机配置可能会阻止通过 VMotion 迁移:
不能使用“通过 VMotion 迁移”来迁移因群集目的而使用裸磁盘的虚拟机。
如果虚拟机使用目标主机上无法访问的设备所支持的虚拟设备,则不能使用“通过 VMotion 迁移”功能来迁移该虚拟机。(例如,不能迁移带有源主机上物理 CD 驱动器支持的 CD 驱动器的虚拟机。)在迁移虚拟机之前,请断开这些设备。
如果虚拟机使用客户端计算机上设备所支持的虚拟设备,则不能使用“通过 VMotion 迁移”功能来迁移该虚拟机。在迁移虚拟机之前,请断开这些设备。
6. VMotion 步骤
简单来说,VMotion 迁移会在以下三个阶段发生:
当请求通过 VMotion 迁移时,vCenter Server 通过其当前主机验证现有虚拟机是否处于稳定状况。
此时,虚拟机状况信息(内存、寄存器和网络连接)将复制到目标主机。
虚拟机将恢复其新主机上的活动。如果迁移期间出错,虚拟机将恢复其原始状态和位置。
发生VMotion开始时,就相当于在目标机器上创建一个新的虚拟机。在新虚拟机创建过程中的前10%部分和创建其他的虚拟机没什么两样。接下去,我们开始为该虚拟机启动VMM(虚拟机监控程序,是每个虚拟机必备的底层),这实际上就是启动了一个新的虚拟机,并为它清空了一段内存地址。此时,该虚拟机并没有访问磁盘,也没有执行任何指令,它只是准备好了接受内存段,然后填充到它自己的内存页表里。
从虚拟机创建到10%这个点,我们开始从源虚拟机将内存段复制到目标虚拟机,该动作需要的时间取决于网络速度、网络拥塞、虚拟机正在使用的内存大小和内存变化的速度(此时虚拟机仍然在正常运行中)。当完成到80%时,我们假定可以在1秒或更短时间内完成内存复制。接着我们就暂停源虚拟机,复制剩余的内存段,启动目标虚拟机,并且从目标虚拟机上执行反向ARP,让网络交换机知道新的MAC地址。当到达90%,复制最后可能变化的内存到目标虚拟机。接着源虚拟机被破坏(只是解散配置和VMM),从而成功完成该次VMotion。
7. VMotion前期准备7.1 建立VMkernel Port Group
7.2 确保源主机和目标主机的兼容性
虽然这个过程很简单,配置过程却是有些麻烦,特别是遇到一些让人匪夷所思的问题时,思考解决办法往往让人头疼不已。
1. 检查CPU是否兼容:
2. 确保符合VMotion 网络要求:
3. 确保所迁移的虚拟机必须位于源主机和目标主机均可访问的存储器上:
4. 数据及网络映射图:
4. 确保源主机没有连接软盘和CD/DVD:
8. VMotion过程图解8.1. 开始迁移
8.2 选择迁移对象
8.3 迁移成功
迁移中虚拟机Guest OS的网络状况:
那么如何尽可能提高vMotion迁移的成功率呢?在进行vMotion操作时建议进行如下配置:
1.建立单独的vMotion网络,分离vMotion网络、管理网络和虚拟机所在的生产网络。这样可以避免不同网络争用带宽,造成网络瓶颈。
2.如果没有建立单独的vMotion网络,建议在非业务高峰期进行虚拟机的迁移操作,这样可以减少生产网络对vMotion网络的影响。
3.为vMotion网络配置多个网络适配器,这样就能够利用vSphere 5.0提供的多网卡负载均衡功能,加快在线迁移速度。
4.vMotion网络已经能够支持10Gb以太网,在条件允许的情况下使用万兆网络提供虚拟机的在线迁移。
5.如果允许业务停机窗口,那么停止虚拟机再进行虚拟机的迁移将大幅度提高迁移速度,因为虚拟机内存中已经没有活动数据了。
展开阅读全文