使用Microsoft虚拟机转换器
- 2016/08/31
- 14分钟阅读时长
适用于:Hyper-V Server 2012,Windows Server 2012 R2,Windows Server 2012,Hyper-V Server 2012 R2,Azure,带有SP1的Windows Server 2008 R2
备注
要下载转换器,请参阅Microsoft下载中心上的Microsoft 虚拟机转换器3.0。您还可以从此页面下载有关转换器使用的Windows PowerShell cmdlet的信息。转换器的可用性和支持将于2017年6月3日结束。建议将Azure Site Recovery作为长期解决方案。有关Microsoft虚拟机转换器退出的详细信息,请参阅博客文章“ 有关Microsoft虚拟机转换器(MVMC)的重要更新”。
安装MVMC之后,您可以使用它来:
- 使用Windows PowerShell将VMware虚拟机和虚拟磁盘转换为Hyper-V。
- 转换磁盘并将其上传到Microsoft Azure。
- 使用GUI将VMware虚拟机和虚拟磁盘转换为Hyper-V。
- 使用GUI将物理机转换为Hyper-V。
- 使用Windows PowerShell将物理机转换为Hyper-V。
使用Windows PowerShell转换VMware虚拟机和虚拟磁盘
在使用MVMC cmdlet之前,必须执行以下操作:
- 在Windows Server 2012 R2或Windows Server 2012上运行MVMC Windows PowerShell cmdlet。如果已安装Windows PowerShell 3.0和Microsoft .NET Framework 4,也可以在Windows Server 2008 R2 SP1上运行MVMC Windows PowerShell cmdlet。
- 从MVMC安装位置导入MVMC Windows PowerShell模块清单。运行以下示例命令:
PS C:\>导入模块“ C:\ Program Files \ Microsoft虚拟机转换器\ MvmcCmdlet.psd1”
有关使用Windows PowerShell cmdlet的详细信息,请参阅Windows PowerShell cmdlet帮助。提供以下脚本示例作为参考。
样例脚本
复制中
Start-Transcript "c:\Test\SampleLog.log"
# establish a connection to the source server
$sourceUser= 'root'
$sourcePassword = ConvertTo-SecureString 'SecurePassword' -AsPlainText -Force
$sourceCredential = New-Object PSCredential ($sourceUser,$sourcePassword)
$sourceConnection = New-MvmcSourceConnection -Server ' ContosoTestServer' -SourceCredential $sourceCredential -verbose
# select the the virtual machine to convert
$sourceVM = Get-MvmcSourceVirtualMachine -SourceConnection $sourceConnection -verbose | where {$_.Name -match 'testvm'}
# convert the source virtual machine
$destinationLiteralPath = 'c:\test'
$machineDriveCollection = ConvertTo-MvmcVirtualHardDiskOvf -SourceConnection $sourceConnection -DestinationLiteralPath $destinationLiteralPath -GuestVmId $sourceVM.GuestVmId -verbose
# copy the disks and .ovf file to the destination Hyper-V host. The .ovf file contains the source virtual machine’s configuration information
# NOTE: this step is not needed on 2-box conversions,this represents a 3-box conversion.
$hyperVServerVhdPath = '\\ContosoTestDestination\c$\Test'
Copy-Item -Path $machineDriveCollection.Ovf.DirectoryName -Destination $hyperVServerVhdPath -recurse
$destinationLiteralPath = Join-Path $hyperVServerVhdPath $machineDriveCollection.Ovf.Directory.Name
# provision a Hyper-V virtual machine
$hyperVServer = ' ContosoTestDestination '
$convertedVM = New-MvmcVirtualMachineFromOvf -DestinationLiteralPath $destinationLiteralPath -DestinationServer $hyperVServer
Stop-Transcript
转换磁盘并将其上传到Microsoft Azure
使用以下过程将磁盘转换并上传到Microsoft Azure。
转换磁盘并将其上传到Microsoft Azure
- 打开MVMC,打开“ 迁移目标”页面,选择“ 迁移到Microsoft Azure”,然后单击“ 下一步”。
图1.迁移目标页面
- 在“ Azure连接”页面上,指定在开始转换过程之前获得的订阅ID和证书指纹。有关详细信息,请参阅本指南前面的转换为Microsoft Azure的要求。
图2. Azure连接页面
- 在“ Azure配置”页面上,选择您创建的用于存储转换后的虚拟硬盘的Microsoft Azure存储帐户。有关详细信息,请参阅本指南前面的转换为Microsoft Azure的要求。
图3. Azure配置页面
-
在“ 源”页面上,输入以下详细信息以连接到VMware vCenter Server,VMware ESX或VMware ESXi服务器,然后单击“ 下一步”。
- 在“ 地址”框中,键入服务器IP地址或VMware源服务器的名称。
- 在“ 用户名”框中,键入用户名。
- 在“ 密码”框中,键入密码。
图4. Source页面
- 在“ 虚拟机”页面上,选择要从源VMware服务器进行转换的虚拟机,然后单击“ 下一步”。
图5.虚拟机页面
备注
附加到源虚拟机的磁盘将转换为基于IDE的VHD,并将附加到源虚拟机的所有数据磁盘都转换为SCSI VHD。
重要
MVMC基于源虚拟机配置在Hyper-V上创建虚拟机的另一个实例。如果源虚拟机在转换过程中处于联机状态,则它保持不变,但在转换过程中将被关闭。
- 在“ 虚拟机连接”页面上,输入可以连接到虚拟机的管理帐户的以下凭据,然后单击“ 下一步”。
备注
需要连接才能在源虚拟机上卸载VMware Tools。虚拟机必须加入Active Directory域。
-
- 在“ 虚拟机”框中,键入虚拟机的名称。
- 在“ 用户名”框中,键入域和用户名。
- 在“ 密码”框中,键入密码。
- 在源虚拟机的最终状态下,单击打开或关闭以指示还原完成后应打开还是关闭源虚拟机。
备注
前面所有项目仅适用于在线转化。在脱机转换中,该工具不会连接到源虚拟机以卸载VMware Tools,并且源虚拟机在还原后处于脱机状态。
-
- 在“ 目标虚拟机的最终状态”选项中,单击“ 打开”或“ 关闭”以指示转换完成后应打开还是关闭目标虚拟机。
图6.虚拟机连接页面
重要
在卸载VMware Tools之前,MVMC始终会为原始源虚拟机拍摄快照,并在成功复制了附加到虚拟机的磁盘后将虚拟机还原到其原始状态。
重要
必须在源虚拟机上启用通过Windows Management Instrumentation(WMI)的远程访问。有关详细信息,请参阅本指南中的转换为Hyper-V目标的要求。
- 在“ 工作区”页面上,单击“ 浏览”以选择可以从中运行用户界面(UI)的工作区文件夹的路径(选择具有足够可用磁盘空间用于转换后的虚拟硬盘的位置),然后单击“ 下一步”。
图7.工作区页面
- 在“ 摘要”页面上,查看详细信息,然后单击“ 完成”以完成转换。如果出现警告,请先进行检查,然后再进行转换。
图8. Summary页面
虚拟机转换成功完成后,将显示“ 完成”页面。
- 在“ 完成”页面上,虚拟机转换完成后,单击“ 关闭”。
使用GUI将VMware虚拟机和虚拟磁盘转换为Hyper-V
使用以下过程通过GUI将虚拟机转换为Hyper-V。
备注
为了获得最佳性能,我们建议您在目标主机上运行转换,这意味着已安装MVMC并从Hyper-V虚拟机管理程序运行它。
使用GUI将虚拟机转换为Hyper-V
- 打开MVMC,打开“ 迁移目标”页面,然后单击“ 迁移到Hyper-V”,然后单击“ 下一步”。
图1A。迁移目标页面
-
在“ Hyper-V主机”页面上,输入以下详细信息以连接到运行Hyper-V的目标服务器,在转换后将在其中创建虚拟机,然后单击“ 下一步”。
- 在“ 地址”框中,键入服务器IP地址或Hyper-V源服务器的名称。
- 在“ 用户名”框中,键入域和用户名。
- 在“ 密码”框中,键入密码。
备注
您应该有权访问后续页面中提供的UNC路径。
- 图2A。Hyper-V主机页面
- 如果目标是运行Hyper-V的远程服务器,则在“ 磁盘”页面上,为放置VHD文件的UNC路径指定以下信息,然后单击“ 下一步”。
备注
您可以指定本地网络共享,但MVMC仅接受UNC路径。如果指定本地路径,则禁用后续按钮。
-
- 在“ 路径”框中,单击“ 浏览”以选择将VHD文件复制到运行Hyper-V的目标服务器上的路径。
- 单击用于转换后的磁盘的虚拟硬盘类型,固定大小或动态扩展。
- 单击虚拟硬盘的格式以用于转换后的磁盘VHD或VHDX。
备注
VHDX格式仅在运行Windows 8或带有Hyper-V的Windows Server 2012的服务器上受支持。
图3A。磁盘页面
-
在“ 源”页面上,输入以下详细信息以连接到VMware vCenter Server,VMware ESX服务器或VMware ESXi服务器,然后单击“ 下一步”。
- 在“ 地址”框中,键入服务器IP地址或VMware源服务器的名称。
- 在“ 用户名”框中,键入用户名。
- 在“ 密码”框中,键入密码。
图4A。来源页面
- 在“ 虚拟机”页面上,选择要从源VMware服务器进行转换的虚拟机,然后单击“ 下一步”。
备注
附加到源虚拟机的磁盘将转换为基于IDE的VHD,并将附加到源虚拟机的所有数据磁盘都转换为SCSI VHD。
重要
MVMC基于源虚拟机配置在Hyper-V上创建虚拟机的另一个实例。如果源虚拟机在转换过程中处于联机状态,则它保持不变,但在转换过程中将被关闭。只有安装了VMware Tools,虚拟机才会保持打开状态。
图5A。虚拟机页面
- 在“ 虚拟机连接”页面上,为可以连接到虚拟机的管理帐户输入以下凭据,然后单击“ 下一步”。
备注
需要连接才能在源虚拟机上卸载VMware Tools。虚拟机必须加入Active Directory域。
-
- 在“ 虚拟机”框中,键入虚拟机的名称。
- 在“ 用户名”框中,键入域和用户名。
- 在“ 密码”框中,键入密码。
- 在源虚拟机的最终状态下,单击打开或关闭以指示还原完成后应打开还是关闭源虚拟机。
备注
前面所有项目仅适用于在线转化。在脱机转换中,该工具不连接到源虚拟机以卸载VMware Tools,并且源虚拟机在还原后处于脱机状态。
-
- 在目标虚拟机的 “ 最终状态”下,单击“ 打开”或“ 关闭”以指示转换完成后应打开还是关闭目标虚拟机。
重要
在卸载VMware Tools之前,MVMC始终会为原始源虚拟机拍摄快照,并在成功复制了附加到虚拟机的磁盘后将虚拟机还原到其原始状态。
重要
必须在源虚拟机上启用通过Windows Management Instrumentation(WMI)的远程访问。有关详细信息,请参阅本指南中的转换为Hyper-V目标的要求。
图6A。虚拟机连接页面
- 在“ 工作区”页面上,单击“ 浏览”以选择到工作区文件夹的路径(可以是本地路径),可以在该工作区文件夹中临时存储已转换的VHD(选择具有足够可用磁盘空间用于已转换的虚拟硬盘的位置),然后然后单击“ 下一步”。
图7A。工作区页面
- 在“ 摘要”页面上,查看详细信息,然后单击“ 完成”以完成转换。如果出现警告,请先进行检查,然后再进行转换。
虚拟机转换成功完成后,将显示“ 完成”页面。
- 在“ 完成”页面上,虚拟机转换完成后,单击“ 关闭”。
图8A。完成页面
使用GUI将物理机转换为Hyper-V
使用以下过程,通过GUI将物理机转换为Hyper-V。
备注
为了获得最佳性能,我们建议您在目标主机上运行转换,这意味着已安装MVMC并从Hyper-V虚拟机管理程序运行它。
使用GUI将物理机转换为Hyper-V
- 打开MVMC,打开“ 机器类型”页面,单击“ 物理机器转换”,然后单击“ 下一步”。
图1B。机器类型页面
-
在“ 源”页面上,输入以下详细信息以连接到物理机,然后单击“ 下一步”。
- 在“ 地址”框中,键入源物理机的服务器IP地址,计算机名或标准域名。
- 在“ 用户名”框中,键入用户名。
- 在“ 密码”框中,键入密码。
图2B。来源页面
- 在“ 系统信息”页面上,单击“ 扫描系统”以在源物理计算机上临时安装代理。
图3B。系统信息页面
- 在“ 卷配置”页面上,选择要包含在转换中的卷。每个转换后的虚拟硬盘可以固定大小,也可以动态扩展。单击下一步。
备注
引导卷默认为选中状态。如果卷是同一分区的一部分,则应选择所有这些卷,以免发生故障。
图4B。卷配置页面
- 在“ VM配置”页面上,键入目标虚拟机的名称,处理器和内存分配,然后单击“ 下一步”。
图5B。VM配置页面
-
在“ Hyper-V主机”页面上,输入以下详细信息以连接到运行Hyper-V的目标服务器,在转换后将在其中创建虚拟机,然后单击“ 下一步”。
- 在“ 地址”框中,键入服务器IP地址或Hyper-V源服务器的名称。
- 在“ 用户名”框中,键入域和用户名。
- 在“ 密码”框中,键入密码。
备注
您应该有权访问后续页面中提供的UNC路径。
图6B。Hyper-V主机页面
- 在“ 磁盘”页面上的“ 路径”框中,单击“ 浏览”以选择将VHD文件复制到运行Hyper-V的目标服务器上的路径,然后单击“ 下一步”。
备注
如果转换器和目标主机在同一服务器上,则可以指定本地网络。
**图7B。**``磁盘''页面
- 在“ 工作区”页面上,单击“ 浏览”以选择到工作区文件夹的路径(可以是本地路径),可以在该工作区文件夹中临时存储已转换的VHD(选择具有足够可用磁盘空间用于已转换的虚拟硬盘的位置),然后然后单击“ 下一步”。
图8B。工作区页面
- 在“ 网络配置”页面上,选择要用于目标虚拟机的任何虚拟交换机,然后单击下一步。
备注
如果Hyper-V主机没有任何虚拟交换机,则虚拟机上的网络适配器将为未连接。
图9B。网络配置页面
- 在“ 摘要”页面上,查看详细信息,然后单击“ 完成”以完成转换。如果出现错误,请先进行检查,然后再进行转换。
虚拟机转换成功完成后,将显示“ 完成”页面。
图10B。完成页面
- 在“ 完成”页面上,虚拟机转换完成后,单击“ 关闭”。
图11B。“完成”页面显示错误,并带有指向日志文件的链接
使用Windows PowerShell将物理机转换为Hyper-V
在使用MVMC cmdlet之前,必须执行以下操作:
- 在Windows Server 2012 R2或Windows Server 2012上运行MVMC Windows PowerShell cmdlet。如果已安装Windows PowerShell 3.0和Microsoft .NET Framework 4,也可以在Windows Server 2008 R2 SP1上运行MVMC Windows PowerShell cmdlet。
- 从MVMC安装位置导入MVMC Windows PowerShell模块清单。运行以下示例命令:
PS C:\>导入模块“ C:\ Program Files \ Microsoft虚拟机转换器\ MvmcCmdlet.psd1”
有关使用Windows PowerShell cmdlet的详细信息,请参阅Windows PowerShell cmdlet帮助。提供以下脚本示例作为参考。
备注
所有斜体变量都需要替换为实际值。
样例脚本
复制中
## Create the credentials
$user = 'domain\username'
$pass = convertto-securestring 'Password' -asplaintext -force
$cred = new-object pscredential ($user,$pass)
## Import the module
Import-Module "C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1"
$SourceMachine = 'SourceMachineName'
$VMName = 'NameOfTheVM'
## Get system information and logical drives
$conn = new-mvmcp2vsourceconnection -physicalserver $SourceMachine -sourcecredential $cred
$sys = Get-MvmcP2VSourceSystemInformation -P2VSourceConnection $conn
$lcs = $sys.LogicalDrives
$lcs | ft driveletter
$nads = $sys.NetworkAdapters
## Create the P2V target VM configuration
$p2vparam = New-MvmcP2VRequestParam
## Disks created for the VM are “Dynamic” by default. To explicity change the disk(s) to ## be fixed disks,the following step should be done.
## $lcs[0].IsFixed = $true
$p2vparam.SelectedDrives.AddRange($lcs)
$p2vparam.CpuCount = 1 ##Number of Processors on the destination VM
$p2vparam.StartupMemoryInMB = 512 ##Memory for the destination VM
$p2vparam.SelectedNetworkAdapters.add($nads[0],"NameOFVSwitch") ##VSwitch Name on the HyperV Host
$HyperVHostName = 'NameOFDestination'
$HyperVHostUser = 'domain\username'
$HyperVHostPass = convertto-securestring 'Password' -asplaintext -force
$HyperVHostCred = new-object pscredential ($HyperVHostUser,$HyperVHostPass)
$hvconn = New-MVMCHyperVHostConnection -HyperVServer $HyperVHostName -HostCredential $HyperVHostCred
$DestinationPath = 'path' #THis can be a local path (c:\VMPath),if the converter and host are the same machine,else only a share path (\\Server\Share)
$TempWorkingFolder = 'tempPath' #this path is used for disk fixups,and must be a local path (c:\temp)
## P2V conversion
ConvertTo-MvmcP2V -SourceMachineConnection $conn -DestinationLiteralPath $DestinationPath -DestinationHyperVHostConnection $hvconn -TempWorkingFolder $TempWorkingFolder -VmName $VMName -P2VRequestParam $p2vparam -Verbose -Debug
MVMC 3.0的新cmdlet
有关MVMC 3.0的新cmdlet的完整列表,请参阅MVMC –虚拟机转换Cmdlet。
原文地址:https://blog.csdn.net/allway2
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。