为什么Hyper-V虚拟机配置版本号如此重要

简介:

虚拟机配置版本号决定了虚拟机能够运行在哪些类型的主机上,以及特性集合。下面的步骤可以帮助管理员升级版本号或者创建向后兼容的虚拟机。

几乎对于任何类型的应用程序来说,都有一个和Hyper-V虚拟机相关联的版本号。过去,这个版本号并没有太大实际意义。但是现在,Hyper-V管理员会发现这个虚拟机配置版本号正在变得越来越重要。

微软开始逐渐重视虚拟机配置版本号,这一点在最近发布的Windows 10 Anniversary Update当中得到印证。可能很多虚拟化管理员都已经知道,某些版本的Windows10已经能够在桌面操作系统当中运行Hyper-V。如果用户在微软发布Windows 10 Anniversary Update之前创建Hyper-V虚拟机,那么只需要右键单击某台虚拟机,就会发现一个全新的快捷方式菜单选项,允许对配置版本号进行更新。

与此同时这种“全新”概念也引发了管理员的诸多问题。首先,配置版本号究竟是如何升级的?其次,更改配置版本号将会带来哪些影响?

在升级虚拟机的配置版本号之前,可以使用下面的PowerShell命令查询虚拟机的现有配置版本号信息:

Get-VM * | Select-Object Name, Version

这条命令会显示所有虚拟机的主机名和配置版本号信息,如图A所示,

为什么Hyper-V虚拟机配置版本号如此重要

  图A.这台虚拟机的配置版本号为7.0

回到Hyper-V Manager,右键单击虚拟机,在弹出的快捷菜单中选择“Upgrade Configuration Version”,Windows将会显示一个对话框,允许管理员终止当前操作。根据虚拟机当前状态的不同,对话框中可能包含一些警告信息。比如,Windows会警告继续操作可能会造成虚拟机保存的状态数据和检查点丢失。

而真正的升级过程实际上非常简单。完成之后系统并不会显示任何提示信息。管理员可以通过PowerShell检查版本信息,确认虚拟机是否已经获得全新配置版本号。

而整个版本升级过程究竟完成了哪些事情,为什么必须要进行升级?配置版本号非常重要的主要原因之一在于其直接影响虚拟机能够运行在哪些目标主机上。

桌面Hyper-V的潜在用途之一就是其允许在工作站上创建和测试虚拟机,当虚拟机被证明能够应用在生产环境当中之后,再将其迁移到服务器环境。而这种方式的问题在于Windows Server 2012 R2 Hyper-V所支持的最高虚拟机配置版本号为5.0。具有更高版本号的虚拟机不能运行在Windows Server 2012 R2 Hyper-V当中。其所支持的配置版本号信息如下:

Windows 8.1/Windows Server 2012 R2 5.0

Windows 10 (pre-10565) 5.0, 6.2

Windows 10 (10565 and later) 5.0, 6.2, 7.0

Windows Server 2016 Technical Preview 5.0, 6.2, 7.0, 7.1

Windows 10 Anniversary Update 5.0, 6.2, 7.0, 7.1, 8.0

如果管理员需要在Windows 10上创建一台虚拟机,之后迁移到Windows Server上,应该怎样做呢?这种情况下,管理员首先需要做的就是查询服务器能够支持哪些虚拟机配置版本号。尽管管理员也可以使用上面的列表,但是有时候微软会进行更改,因此最好使用PowerShell检查当前系统支持哪些配置版本号。下面这条命令可以帮助实现这项任务:

Get-VMHostSupportedVersion

不幸的是,并非所有版本的Windows都支持这条命令。如果执行这条命令之后收到错误提示信息,那么最好检查现有虚拟机的配置版本号。图B显示Windows Server 2012 R2并不支持这条命令,但是我们可以看到现有虚拟机的配置版本号为5.0。

为什么Hyper-V虚拟机配置版本号如此重要

  图B. Windows Server 2012 R2虚拟机使用的配置版本号为5.0

而在Windows 10上运行这条命令会显示其支持的所有版本号。如果后面加上”-Default”这个参数,那么会显示虚拟机默认使用8.0的配置版本号,如图C所示,

为什么Hyper-V虚拟机配置版本号如此重要

  图C.Windows 10所支持的配置版本号

如果管理员希望使用Windows 10创建虚拟机,并且向后兼容Windows Server 2012 R2,那么必须使用PowerShell的全新虚拟机cmdlet指定希望使用的版本号,如图D所示,

图D.管理员可以使用PowerShell来创建过时虚拟机

本文转自d1net(转载)

相关文章
|
5月前
|
网络协议 Linux Shell
搭建虚拟机的网络布局类型和配置操作
搭建虚拟机的网络布局类型和配置操作
|
5月前
|
Oracle 关系型数据库 Linux
windows 11 hyper-v中oracle linux虚拟机中添加硬盘
在windows 11自带的hyper-v虚拟机中添加硬盘,并分区
164 6
|
5月前
|
PHP
百度虚拟机 bcloud_nginx_user.conf配置
百度虚拟机 bcloud_nginx_user.conf配置
161 0
|
2月前
|
应用服务中间件 nginx Docker
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
这篇文章介绍了如何通过域名在本地访问虚拟机上的nginx服务,包括创建nginx容器、修改配置文件、修改本地host文件以及进行访问测试的详细步骤。文章提供了具体的Docker命令来创建并配置nginx容器,展示了配置文件的修改示例,说明了如何在本地系统的hosts文件中添加虚拟机IP和自定义域名,以及如何通过浏览器进行测试访问。
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
|
2月前
|
安全
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
|
2月前
|
存储 网络协议 搜索推荐
在Linux中,如何配置和管理虚拟机的网络和存储?
在Linux中,如何配置和管理虚拟机的网络和存储?
|
2月前
|
网络协议 Linux 网络安全
Hyper-v 如何配置 Centos7 虚拟机网络?
Hyper-v 如何配置 Centos7 虚拟机网络?
|
3月前
|
缓存 监控 Java
Java中的虚拟机参数配置详解
Java中的虚拟机参数配置详解
|
5月前
|
数据安全/隐私保护
给虚拟机配置网络 Xshell 使用
给虚拟机配置网络 Xshell 使用
|
5月前
|
网络协议 Java 应用服务中间件
记录_centos7离线环境和虚拟机共享文件安装jdk和tomcat(配置环境变量)
记录_centos7离线环境和虚拟机共享文件安装jdk和tomcat(配置环境变量)
48 0
下一篇
无影云桌面