这几天尝试了一下微软的虚拟系统Hyper-V R2,记录一下安装和配置的过程。
Hyper-V作为一个组件被包含在Windows Server 2008 R2中,所以最简单的安装Hyper-V的方法就是在已经安装好的Windows Server 2008 R2里添加一个Hyper-V的角色,跟随向导下一步到底就行了。
这样2008就成为了Hyper-V的宿主系统,可以在该主机上安装和运行虚拟机了。同时Hyper-V的控制台也会被安装好,可以用以控制本机或者其他宿主机内的虚拟机。
但上述方式首先需要一个给宿主机Windows Server 2008 R2的合法授权,其次如果是一个纯粹的用作跑虚拟机的宿主机的话,其他的组件和服务也会一定程度上占用系统资源。
所以还有另一种方案,纯粹的Hyper-V宿主机。
先留一个Hyper-V R2的主页:
http://www.microsoft.com/hyper-v-server/en/us/default.aspx
安装盘在微软官网就有免费下载:
安装的话没啥需要说的,刻盘或者灌进优盘装直接装,一切顺利。
装好的就是一个没有GUI的Windows Server 2008 R2的核心 + Hyper-V R2的最小系统。
没有图形界面,启动进去以后只有一个命令行,和一个基于命令行的配置界面。
该配置界面也只提供一些最基本的功能,见下图。
需要注意的是,因为该系统没有提供任何用以在本机配置和管理虚拟机的界面,所有的这些工作都是需要从其他电脑远程连接到宿主机来做的。所以必须开放远程管理的权限。
在该命令行的管理界面里按4进入配置远程管理,将其中的1>Allow MMC Remote Management,2>Enable Windows PowerShell,3>Allow Server Manager Remote Management全部打开。
然后设置好计算机名和工作组等信息。因为是在家里测试,所以这里是加入了和我Win 7相同的工作组而非域。
至此在宿主机上的工作基本完成。那么既然不能在本机安装和管理虚拟机,该怎么做呢?在微软的文档MS_HyperV_overview.doc中提供了3个方法:
· Use Hyper-V Manager in a Full installation of Windows Server 2008 R2.
· Use Hyper-V Manager in Windows 7 using Remote Server Administration Tools.
· Use Microsoft System Center Virtual Machine Manager 2008 R2.
偶的管理机装的是Win 7,so~
To manage from Windows 7
1. On the remote computer you will be managing Hyper-V Server 2008 R2 from, download and install the Hyper-V Manager MMC snap-in from Remote Server Administration Tools (http://go.microsoft.com/fwlink/?LinkID=130862). 2. After the computer restarts, click the Start menu, click Administrative Tools, and then click Hyper-V Manager. 3. On the left side of the MMC window, click Hyper-V Manager. 4. From the Actions menu, click Connect to Server, select Another Computer, and then enter the name or IP address of the server that you want to connect to. |
To manage Hyper-V Server remotely from Microsoft System Center Virtual Machine Manager, see the Virtual Machine Manager content (http://go.microsoft.com/fwlink/?LinkID=129168).
装好amd64fre_GRMRSATX_MSU.msu这个补丁后,进入控制面板,在打开或关闭Windows功能中打开远程服务器管理工具/角色管理工具/Hyper-V 工具,至此管理机的安装也算完成。
但是,但是,好事总是要多磨的,就像预感的那样,事情不会这么简单。在Win 7的Hyper-V管理器中填入宿主机的计算机名或者ip地址,都无法连接到宿主机。
几次Google以后,得知还需做以下工作:
- 以管理员权限编辑c:\Windows\System32\drivers\etc\hosts,加入宿主机的IP地址和主机名,如192.168.1.250 Hyper-Server。
- 在管理机(Win 7)中必须使用和宿主机中相同的帐号&密码。举例说,如果我在Win 7的当前登录用户是Elvin,密码123,则需要在宿主机中也创建一个帐号Elvin,密码123的本地管理员帐户。
- 使用上述帐户开管理远程的宿主机,并且应使用宿主机的主机名而非ip地址来连接。
至此已经可以从Win 7连接到宿主机了,但连进去以后仍然会看到无法建立连接的错误信息。试图无视它,直接创建虚拟机,但仍然会在最后一步因为这个错误而终止。
再一番Google之后,方知还需要给匿名帐户的远程DCOM访问权限,不过同时也找到这么个小工具:
http://code.msdn.microsoft.com/HVRemote
通过它给匿名帐户授予了权限以后,连接远程的宿主机终于不再报错。
实际上这个工具还可以完成之前手工做掉的那些工作,使用它可以一条龙的搞定这些配置。(为啥没一开始就找到,泪流满面……)
但是,但是,仍然还是遇到了奇怪的问题……
用远程管理界面在宿主机上新建虚拟机的向导完成后,会卡在创建磁盘的对话框很久。不清楚是什么原因。取消掉该对话框以后,在Hyper-V管理器中刷新一下,仍然可以看到刚才创建的虚拟机。进去设置IDE0设备为刚才的向导创建出来的VHD文件,IDE1指定好安装虚拟机所用的ISO文件,启动该虚拟机即可开始安装OS了。
其实还是有一点小问题的,似乎先连接上某个虚拟机,再启动它,画面会一直黑的不动,要关闭重新连接,或者先启动某个虚拟机,过几秒钟再连……
还有一个就是,虚拟机的ISO文件需要事先放在宿主机里,不能从网上邻居里读。可以拿个优盘什么的拷过去。