08 安装虚拟机:Windows 10
在安装虚拟机之前,总是要有安装来源媒体(例如:ISO映像之类),方可顺利进行。在Proxmox VE中有几种将ISO档置入Proxmox VE的方式,本节介绍其中两种最简便的方式。
经由网页上载方式
第一种是我们先把ISO映像档下载至电脑,再把ISO档经由Proxmox VE管理界面上载进去,本章以Windows 10作为示范案例。
- 在“资源检视区【中选择‘local(host-106)】,切换至【ISO映像】页签,再按下【上传】按钮。
- 选择档案-->上传
- 必须等到它全部传输完成后再关闭它。
- 上传完成后,它会自动出现在ISO映像清单里。
节点直接下载方式
第二种方法更加便利,我们请Proxmox VE节点直接前往指定网址来下载ISO映像档,可以省去先下载再上传的两次工作。
- 到映像档下载页面,把下载链接复制起来。
- 回到Proxmox VE界面,切换到【ISO映像】页签,再按下【从网址下载】按钮。
- 弹出下载档案的对话框,把下载链接粘贴在【URL】栏位里,再按下【查询网址】按钮,稍候一下,即可取得【档案名称】并显示在栏位里。若确认正确,即可按下【下载】按钮开始作业。
- 开始下载后,你可以把讯息视窗关闭,它会作业记录区里持续运作,不会影响你进行其他的操作。
- 下载完成后,它会自动出现在ISO映像档案清单里。
8.2 建立虚拟机客体
有了安装ISO映像档后,我们来建立第一个虚拟机吧!
- 请在Proxmox VE管理介面的右上方找到【建立VM】按钮,点按【进入】按钮。
- 来到建立虚拟机的引导程序第一步【一般】,请在名称栏位输入主机名称,而【VM ID】栏位是自动编号,Proxmox VE会为我们自动挑选一个没有使用的ID填入,你也可以自行手动填入。
- 引导程序第二步【作业系统】,请在【ISO映像】右方的下拉清单里选择前一节我们放置好的Windows ISO安装映像档,【类别】选择【Microsoft Windows】,版本选择【10/2016/2019】,完成后请按【继续】按钮。
- 引导程序第三步【系统】,请保持预设值。
- 引导程序第四步【硬碟】,请将【储存】的下拉清单由预设的【local-zfs】改为我们另外建立出来的ZFS储存集区【vmdisk-2】,确保它放在我们所规划的独立虚拟磁碟存放集区,磁碟大小则以预计的容量调整。
- 引导程序第五步【CPU】,填入核心数量,至于CPU的【类别】除了某些用途考量外,请尽量保持预设的【KVM64】,以确保最高程度的相容性。
- 引导程序第六步【记忆体】,依据需要填入。
- 引导程序第七步【网路】,保持预设的【vmbr0】,型号【Intel E1000】。MAC位址会自动产生,若你想要指定,则可在【MAC位址】栏位里手动填入。
- 引导程序最后一步【确认】,可以按下【完成】按钮来开始进行建立作业。
- 建立完成后,你可以在左方资源检视区看到出现一部新的虚拟机【100(win10-pc1)】,点选它后可以查看目前的运作状况。
- 切换至【主控台】页签,可以看到这部虚拟机已经开机,并且启动Windows10的安装程序,等待着我们进行下一步。
卸除映像档
刚刚用来安装作业系统的Windows10 ISO映像档可以卸除。
- 切换至【硬体】页签,在【CD/DVD装置】该列上点选两下,进入设定画面。
- 在对话框选择【不要使用任何媒体】,再按下【完成】按钮即可。
- 回到【硬体】装置清单,可以看到【CD/DVD装置】已经变成【none,media=cdrom】,即表示卸除成功。
8.4 取得VirtIO安装档映像
Proxmox VE虚拟机中的KVM套件开发者们提供了一系列的驱动程式与软体工具,分别对应了不同的Windows操作系统版本,我们需要先行下载完成后再安装。来到VirtIO的下载页面,取得最新的Stable版本ISO映像档案链接,再到Proxmox VE的‘从网址下载’功能取得ISO档案。链接大概地址:https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.208-1/virtio-win-0.1.208.iso
8.5 安装Qemu Agent
它是一个对于虚拟化管理平台与客体虚拟机之间很重要的沟通桥梁,而在Proxmox VE中Qemu Agent主要提供两项功能:
- 正确下达关机指令给虚拟客体机,而不仅仅依靠ACPI或Windows原则。
- 当要进行备份时,先通知客体机作业系统冻结(FreeZe)档案系统,以确保能够备份当下所有的档案内容。在Windows作业系统中是呼叫阴影复制服务(Volume Shadow Copy Service,VSS)。
要启用Windows的Qemu Agent功能,请先切换至客体机的【选项】页签,到【QEMU Guset Agent】上双击,或是按上方的【编辑】按钮进行修改。
安装VirtIO Serial驱动程序
- 选择虚拟客体机后,切换至【硬体】页签,在【CD/DVD装置】上双击开启设定视窗。
- 点选【使用CD/DVD光碟映像档(ISO)】,并在【ISO映像】下拉清单选择之前下载好的virtio-win-0.1.208.iso映像档,再按下【完成】按钮。
- 回到清单后,已经在CD/DVD装置处看到挂接成功,它会显示档案名称以及容量。
- 接着,我们开启主控台进入Windows客体机,进入装置管理员。
- 展开【其他装置】-->PCI简单通讯装置-->更新驱动程式-->浏览电脑上的驱动程式,以准备从光碟机安装来自VirtIO映像档里的驱动程式。
- 在浏览资料夹的视窗中,将目录展开至【D:\vioserial\w10\amd64】,再按下‘确定’按钮。
安装Qemu Agent程式
- 开启档案总管来到光碟机的位置,切换到【D:\guest-agent】资料夹,双击【qemu-ga-x86_64】进行安装,它在安装完成后会自动结束安装程式。
- 安装完成后,请到【服务】里面确认【QEMU Guset Agent】服务是否正在【执行中】,若无请手动启动。
- 来到管理介面查看该客体机的概观页面,下方的【IPs】后如果有显示IP位址,即表示成功了。
概观备注功能
在概观的右方有个【备注】栏位,我们可以将一些与客体机有关的事项或笔记填写在此,以方便随时提醒及取用。
这个【备注】功能更棒的地方是它支援Markdown语法。
8.6 启用VirtIO Balloon机制
在Windows 10安装完成以后,查看资源使用状况的时候会发现一个问题:在客体机内看到的记忆体使用量与Proxmox VE管理平台上看到的记忆体使用量差距很大(管理平台上看到的内存使用量大很多)。
在Windows 10里面还需要安装VirtIO Balloon的驱动程式,才能让记忆体管理与Proxmox VE管理平台正确连动。
VirtIO Balloon是一种虚拟记忆体管理的技术,它除了可以让管理平台取得正确的记忆体使用状况外,还可以让虚拟机尚未使用到的空间‘借’给其他需要记忆体的虚拟机使用,从而让整个节点的记忆体使用更加灵活。
安装VirtIO Balloon驱动程式
- 依次展开【装置管理员-->其他装置-->PCI装置】,并双击,点选【更新驱动程式】,再按下【浏览电脑上的驱动程式】按钮。
- 按下【浏览】按钮进入档案选择视窗,并点选至资料夹【D:\Balloon\w10\amd64】,再按下【确定】按钮即可。
安装VirtIO Balloon服务程式
- 开启【D:\Balloon\w10\amd64】资料夹,将它复制为【C:\Balloon】资料夹。
- 按下【开始】功能表后输入【cmd】,在上方的【命令提示字元】上单击右键,选择【以系统管理员身份执行】。
- 输入【C:\Balloon\blnsvr.exe -i】,将服务注册起来运作,最后一行显示【Service RUNNING】表示成功。
- 当完成以后,再回头对比Windows工作管理员及PVE管理平台看到的记忆体资讯就会一致。
8.7 更换VirtIO Net网络装置
在先前的安装过程中,我们采用预设的【Intel E1000】相容网路介面的模式安装,但这个模拟出来的网路介面有效能的限制,原因在于这些网路装置采用的是【全虚拟化方式】所模拟出来。而VirtIO Net网路装置采用【半虚拟化】方式工作,让网路传输的过程中减少架构的层数。
不过也因为这种新开发的装置,我们需要在客体机内安装对应的驱动程式,才能让客体机的作业系统正确用到VirtIO Net网路装置。Linux系统一般有内建,而Windows需要另外安装。
更换网路装置型号
- 切换至【硬体】页签,在【网路装置(net0)】项目上点两下进入编辑。
- 将【型号】栏位的下拉清单选择为【VirtIO(半虚拟化)】,再按下【完成】按钮存入。
安装VirtIO Net网路装置驱动程式
- 开启【装置管理员--其他装置--Ethernet】,双击后按下【更新驱动程式】按钮。
- 接着按下【浏览】按钮,在资料夹中选择【D:\NetKVM\w10\amd64】,再按下【确定】按钮。
8.8 更换VirtIO SCSI控制器装置
除了网路之外,磁碟的存取效能更是整个客体机运作效能的绝对关键,在预设安装所使用的IDE可以让Windows安装时直接以内建驱动运作起来,但它的效能并不出色。若要运作有效能要求的服务,则需要进行更换为VirtIO SCSI控制器(VirtIO SCSI Controller)。
新增VirtIO SCSI类型磁碟型号
- 切换至【硬体】页签,按下【增加】按钮,并于弹出选单中选择【硬碟】。
- 进入设定对话视窗后,在【汇流排/装置】下拉清单选择【SCSI】,【储存】选择我们另外建立的【vmdisk-2】,【磁碟大小】选择【0.1GB】,再按下【增加】按钮。
安装VirtIO SCSI磁碟驱动程式
- 回到客体机的主控台视窗,在【装置管理员】中可以发现多出一个新的未知装置【SCSI控制器】,双击后在对话视窗中按下【更新驱动程式】。
- 按下【浏览】按钮,选择【D:\vioscsi\w10\amd64】,再按下【下一步】按钮进行安装。
更换系统磁碟为VirtIO SCSI类型
- 请先将客体机【关机】,然后到PVE管理界面切换至【硬体】页签,选取【硬碟(ide0)】项目,再按下【中断连结】按钮。
- 系统磁碟此时会变为【未使用的磁碟0】,在该项目上双击,进入编辑对话框。
- 在【汇流排/装置】下拉清单选择【SCSI】,再按下【增加】按钮存入。
- 修改完成后,会看到系统磁碟重新连结上来,名称显示为【硬碟(scsi0)】,表示它已经是采用VirtIO SCSI的方式挂接给客体机使用。
- 我们再选取刚才临时用的0.1GB磁碟【硬碟(scsi1)】,再按下【中断链接】按钮。
- 最后我们选取已经中断链接的临时硬碟,再按【移除】按钮,接着启动客体机。
等一下!重新开机后,怎么一直无法成功进入Windows 10,而且感觉一直在重复开机的流程? - 回想一下,刚才我们修改了磁碟类型,所以磁碟名称也从【ide0】变为【sici0】了,还记得吗?跟实体的BIOS开机设定一样,如果更换成不同开机磁碟,要记得调整开机顺序的设定。Proxmox VE中客体机的开机顺序在【选项】-->【开机顺序】里。
- 这里可以看到第一个开机顺序是【ide2】,也就是【虚拟光碟机】,第二个装置是【net0】装置,原先的【ide0】已经随着我们移除它而消失,新增的【scsi0】也没有出现在这里。双击进入设定视窗,先将【scsi0】的【启用】核取方块勾选,第一个栏位可以用滑鼠拖拽改变开机顺序,完成后点击【确定】按钮。
- 再次启动后Windows 10,就会自己对系统碟新的类型安装相应的驱动程式,有状况会提示要重新开机,依据指示重开机一次后,就可以正常使用了。
更快速的VirtIO驱动程式安装技巧
目前最新版本的VirtIO映像档里也提供一支打包好的安装程式,只要双击执行后,依据画面提示完成安装,再重新启动后就可以完成相关的驱动程式、Balloon等安装程序。
- 在VirtIO ISO映像档里的【virtio-win-gt-x64.msi】上双击,进入安装程序。
- 在安装程序中可以选择要安装的项目,建议全部安装,以节省往后要再次安装的时间。
- 安装完成后,请重新开机让Windows自动为相关硬体安装驱动程式,即可顺利完成所有作业。