如何转换VMware虚拟磁盘镜像到Virtual Server?(上)

2008-12-1    | |
打印本文章
RSS

导读:本系列学习将VMware虚拟机迁移到Virtual Server的方法。本文将讲述如何为迁移准备源虚拟机。

关键词:VMware 虚拟机 Virtual Server

正在加载数据...

【TechTarget中国原创】取决于环境,迁移虚拟机可能变成一件棘手的工作。Platespin的PowerConvert是大多数迁移里有用的工具,其价格也相对较低。当你需要转换虚拟磁盘,但没有PowerConvert的预算时会发生什么样的情况?

  如果你需要转换微软(.vhd)虚拟磁盘到VMware(.vmdk)虚拟磁盘,可以使用VMware的Virtual Machine Importer,这是一个可免费下载的工具。为了将VMware的虚拟机转换到Virtual Server或Virtual PC,仅有的来自微软的开源产品是Virtual Server Migration Toolkit (VSMT)。

【TechTarget中国原创】取决于环境,迁移虚拟机可能变成一件棘手的工作。Platespin的PowerConvert是大多数迁移里有用的工具,其价格也相对较低。当你需要转换虚拟磁盘,但没有PowerConvert的预算时会发生什么样的情况?

  如果你需要转换微软(.vhd)虚拟磁盘到VMware(.vmdk)虚拟磁盘,可以使用VMware的Virtual Machine Importer,这是一个可免费下载的工具。为了将VMware的虚拟机转换到Virtual Server或Virtual PC,仅有的来自微软的开源产品是Virtual Server Migration Toolkit (VSMT)。

  不过由于VSMT有大量烦琐的要求,包括Microsoft Automated Deployment Services(ADS),许多管理员更喜欢使用另一种方法。

  在本文中,TechTarget中国的特约作者Chris Wolf将描述这种将VMware虚拟机迁移到Virtual Server的方法。第一部分将讲述如何为迁移准备源虚拟机,第二部分将讨论如何准备FTP服务器、克隆源虚拟机以及准备目标虚拟机。

  下面是需要具备的:

  • Symantec Ghost磁盘镜像软件。对于没有Ghost的管理员,本文说明使用开源Ghost for UNIX(G4U)创建和部署镜像。我分别使用Symantec Ghost和G4U测试了这个过程。使用G4U,部署镜像到新Virtual Server虚拟机比使用Symantec Ghost快两倍。
  • 上传与存储克隆镜像的FTP Server。
  • 迁移Windows Setup CD或为虚拟机操作系统安装的最新服务包。
  • prepvm.vbs脚本,用于禁止服务以及可能阻止已迁移的虚拟机成功启动的驱动。

  将VMware虚拟机作为Virtual Server虚拟机部署相对比较容易,只要移除不必要的驱动和服务,并用现有的硬件抽象层(HAL)代替。

  确保目标硬盘配置与源虚拟机磁盘配置相同,以便在克隆虚拟机之前不需要修改boot.ini文件。

  现在我们来看看迁移过程。

  准备源虚拟机

  迁移过程最重要的一部分就是准备源虚拟机。当部署到Virtual Server时,新虚拟机不会在启动时出现蓝屏。

  为了保证迁移成功,将使用我的prepvm.vbs脚本以禁用任何可能遗留的VMware驱动,避免Windows启动时阻碍虚拟机。下面是这个脚本:

'prepvm.vbs
'Removes VMware-specific drivers from a system
On Error Resume Next

' Instantiate Shell Object
Set objShell = CreateObject("WScript.Shell")

' Disable VMware Tools Service
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\VMTools\\Start", _
                 4, "REG_DWORD"

' Disable VMware vmx_svga video driver
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\vmx_svga\\Start", _
                 4, "REG_DWORD"

' Disable VMware vmmouse driver
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\vmmouse\\Start", _
                 4, "REG_DWORD"

' Disable VMware vmscsi driver
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\vmscsi\\Start", _
                 4, "REG_DWORD"
             
' Disable VMware PCnet driver
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\PCnet\\Start", _
                 4, "REG_DWORD"

' Disable VMware Buslogic driver
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\buslogic\\Start", _
                 4, "REG_DWORD"

' Disable SCSI Miniport drivers
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\symc810\\Start", _
                 4, "REG_DWORD"
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\symc8xx\\Start", _
                 4, "REG_DWORD"
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\cpqarray\\Start", _
                 4, "REG_DWORD"
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\pcntn4m\\Start", _
                 4, "REG_DWORD"
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\cpqnf3\\Start", _
                 4, "REG_DWORD"
objShell.RegWrite "HKLM\\SYSTEM\\CurrentControlSet\\Services\\MRaidNT\\Start", _
                 4, "REG_DWORD"

' Restart Computer
strComputer = "."

'Prompt user of impending reboot
WScript.Echo("The system is prepared for imaging and will now shutdown.")
WScript.Sleep(3)
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate,(Shutdown)}!\\\\" & _
        strComputer & "\\root\\cimv2")

Set colOperatingSystems = objWMIService.ExecQuery _
    ("Select * from Win32_OperatingSystem")

For Each objOperatingSystem in colOperatingSystems
    objOperatingSystem.Shutdown()
Next

  照以下步骤准备源虚拟机

  1.创建虚拟机的备份副本,并在余下步骤使用这个副本。为克隆准备副本,确保在克隆期间发生错误时,源虚拟机仍然可用。

  2.从源虚拟机的副本启动并登录。复制prepvm.vbs脚本到虚拟机,这时候不要运行这个脚本。

  3.使用添加/删除程序卸载VMware Tools。出现对话框时重启虚拟机。

  4.重新登录虚拟机。如果在登录后显示Found New Hardware Wizard,取消向导。如果提示重新启动,点击“NO”。

  5.检查系统的服务器包级别。如果没有安装服务包,那么需要用到OS Setup CD。如果安装了,需要访问服务包设置文件。

  注意,你复制的文件与OS/Service Pack版本想匹配非常重要。复制旧一点的版本可能使用系统不能启动。

  6.打开命令提示符窗口。

  7.恢复到默认HAL,运行以下命令(假定Service Pack或Setup CD-ROM有驱动器号D):

expand d:\\i386\\hal.dl_ %windir%\\system32\\hal.dll

  注意,如果你从%windir%\\system32\\servicepackfiles文件夹复制文件(假定在服务包安装期间,在本地复制SP备份文件到系统的硬盘)的话,你只需要复制servicepackfiles\\i386\\hal.dll文件到%windir%\\system32文件夹。

  8.将目前的ntoskrnl更换成默认值,使用下面的命令:expand d:\\i386\\ntoskrnl.ex_ %windir%\\system32\\ntoskrnl.exe。

  注意,如果你从%windir%\\system32\\servicepackfiles文件夹复制文件,只需要复制servicepackfiles\\i386\\ntoskrnl.exe文件到%windir%\\system32文件夹。

  9.现在运行prepvm.vbs脚本。虚拟机现在将关闭并可以进行镜像了。

  准备好源虚拟机后,现在就能开始镜像过程了。

  在第二部分,我们将讨论如何准备FTP服务器、克隆源虚拟机以及准备目标虚拟机。

查看全文
 
我们不妨看一下在越来越拥挤的虚拟化环境迁移和管理工具领域出现了哪些最新的竞争对手。有些工具甚至还是免费的。
 
微软集群服务应用依赖用裸设备即RDM格式显示的共享存储。如果有些人期望改换存储阵列或平台,这带来了几个难题……
 
为什么需要将工作负载转换到Hyper-V?如何使用微软MSCVMM或者第三方工具将现有系统迁移到Hyper-V环境?
 
微软决定在Windows Server 2008 R2里对Hyper-V进行改进。将1.0版本的快速迁移转变为2.0版本的热迁移。那么快速迁移与热迁移有何不同?如何实现虚拟机热迁移?
 
虽然离Windows Server 2008 R2的发布还有一段时间,但Windows Server 2008 R2的一些功能正在陆续被解密。其中,最受争议的新功能是虚拟机迁移。
虚拟化部署项目包括几个阶段和重大的规划,以满足IT现有的技术环境。如果执行得正确,虚拟化部署的这些阶段能帮助你评估和测量现有的技术资产,并决定你的虚拟化需求。本手册将介绍虚拟化项目实施过程中的三大阶段,教您如何正确执行以便获得成功。
在之前的专题“虚拟桌面基础架构VDI”以及“桌面虚拟化VDI实施流程指导手册”中,我们学习了VDI的定义以及实施流程。在本专题中,我们主要学习VDI的使用情况,需要注意的事项及技巧。
什么是VMware vSphere?它主要有哪些新功能?如果升级到vSphere,硬件要求是什么?如何创建VMware vSphere子操作系统?VMware vSphere的亮点究竟在哪里?  2009年4月21日,VMware公司宣布推出新一代虚拟化平台VMware vSphere。这是VMware继三年前发布VMware ESX之后的又一重大举措。在本期技术手册中,我们将详细介绍VMware vSphere,从下面几个方面进行探讨……
最新更新
专家答疑
技巧
吴炫国
能否简单介绍一下Hyper-V的远程控制台功能?我不太清楚如何实现远程管理的功能,许多时候会出现RPC错误。我的环境是公网。
Serdar Yegulalp
在主机物理磁盘上如何排列虚拟硬盘最合适?排列虚拟硬盘的最佳方式是什么?如果你的服务器有三个驱动,宿主了两个虚拟操作系统,可以……
Scott Feuless
如果业务单位反对采用虚拟化的话,IT该怎么办?阻碍虚拟化采用的关键是什么?如何说服业务单位采用虚拟化?

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
登录Email
请输入您的登录Email
密码
下次自动登录