Skip to content

服务器虚拟化(Hyper-V / KVM)

这一页讲的是服务器这一侧的虚拟机,分两套互不相干的东西:

  • 在管理服务器自己身上开虚拟机——Windows 服务器用 Hyper-V,Linux 服务器用 KVM。适合「服务器上还要顺带跑点别的东西」。
  • 对接现场已有的 PVE 集群——把 PVE 上的虚拟机当成 VDI 云桌面,按人、按角色、按池分给使用者。

两者都挂在管理台左侧的**「其他(Others)」**菜单下,但是两套完全独立的页面、两套完全独立的对象。

先说三条,能省掉一半误会

  • 无盘云桌面一台虚拟机都不需要。 机房里那批网络启动的终端走的是镜像下发那条路,与本页的虚拟化能力并行、互不依赖。本页是给「服务器上要额外跑东西」和「要发 VDI 桌面」这两类现场准备的。
  • 「服务器虚拟化」不等于「虚拟机更新 / 模板在线编辑」。 后者入口在 桌面 → 桌面池 → 桌面模板 →「虚拟机更新」,是 Linux 服务端上由引导服务驱动的模板编辑通道,见如何在浏览器里编辑模板镜像(模板在线编辑)这是最容易认错的一点。
  • PVE 相关的页面要求现场确实部署了 PVE。 没有 PVE 集群时这些页面无对象可操作,它们也不会把一台普通服务器变成 PVE。

一、先分清三件容易搞混的事

这件事虚拟机跑在哪入口用来干什么
服务器虚拟化管理服务器自己(Hyper-V / KVM)其他 → 服务器虚拟化在服务器上多跑几台虚拟机
VDI / PVE 桌面现场已有的 PVE 集群其他 → VDI虚拟机给使用者发云桌面
虚拟机更新(模板在线编辑)管理服务器自己,由引导服务托管桌面 → 桌面池 → 桌面模板 →「虚拟机更新」在浏览器里改模板镜像

两个页面同名,别点错

「服务器虚拟化」下有一页叫虚拟机管理,「VDI虚拟机」下也有一页叫虚拟机管理。前者管的是本机 Hyper-V / KVM 上的虚拟机,后者管的是 PVE 上的 VDI 实例,两页的对象没有任何交集

「服务器虚拟化」整个菜单及其三个子页都受权限控制,角色里没有勾上对应权限的账号看不到这个菜单。需要给人开放时到「权限管理」里给角色补勾。

二、服务器虚拟化:在这台服务器上开虚拟机

入口:控制台 → 其他(Others)→ 服务器虚拟化,下有三页:初始化虚拟网络管理虚拟机管理。三页有先后顺序——没初始化过,后两页只显示「请先完成初始化」,新建按钮是灰的。

2.1 初始化:看清本机是哪一套,再装组件

页面顶部先给三行结论:

取值
当前系统Windows / Linux / 未知
虚拟化类型Hyper-V / KVM (libvirt) / 未知
状态已就绪 / 未初始化

已就绪时页面是一条绿色提示「虚拟化环境已就绪」,写明当前用的是哪一套、可以去做虚拟网络与虚拟机管理了;未初始化时提示「请先完成虚拟化环境初始化」。右上角「刷新」重新取一次结论。

Windows 服务器:安装 / 启用 Hyper-V

1,页面下方「Hyper-V 状态」区先给当前状态。已启用就不必再做。

2,未启用时页面会多出一小块「安装选项(可选,与 Windows 向导一致)」,两项都可以不填,见下表。

3,点「安装/启用 Hyper-V」。按钮变成「安装进行中…」,页面每两秒半刷一次进度并显示当前阶段(正在启动… / 正在安装…)。

4,装完若需要重启,会弹「初始化完成」窗口:「Hyper-V 安装已完成,需重启计算机后生效。是否立即重启服务器?」点「确定重启」由页面发起重启,也可以自己挑时间重启。

安装选项默认值说明
绑定网卡(默认外部虚拟交换机)不指定不指定就等以后在「虚拟网络管理」里单独建网络。服务器只有一块网卡时页面会自动替你选上那一块
默认存储路径(虚拟机与虚拟硬盘)输入框预填 C:\Hyper-V清空则用系统默认位置

装不上多半是权限问题

页面提示很直白:按钮执行失败多为当前服务没有管理员权限。这种情况下可以改用另一条路——以管理员身份打开 PowerShell,执行 Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All,完成后重启计算机。安装失败时页面会把失败原文完整贴出来,并一并给出这条命令。

Linux 服务器:KVM / libvirt

Linux 这一侧页面只做检查与告知,不代为安装

1,「KVM / libvirt 状态」区列出三行:KVM 模块(已就绪 / 未检测到)、libvirt(版本号 / 未安装)、说明

2,点「查看安装脚本」弹出一份 KVM 安装脚本,可一键复制,到服务器上自己执行。

较新的 Linux 服务端装完就是就绪状态

新版 Linux 服务端安装包已经把虚拟化引擎、虚拟化管理服务与命令行、UEFI 固件、光盘镜像制作工具、NTFS 读写工具列为硬性依赖(x86_64 与 ARM64 都是),按常规方式安装时会自动一并装好,并自动启用、启动虚拟化后端服务,因此本页多数情况下会直接显示已就绪。

安装阶段还会当场检查本机虚拟化是否可用:CPU 虚拟化没开会直接给出明确提示——物理机要到 BIOS 里打开;这台服务器本身就是虚拟机的,要在它的宿主上开启嵌套虚拟化。

2.2 虚拟网络管理

列表列出已创建的虚拟网络(虚拟交换机):名称类型/状态网卡/说明,每行可删除(有二次确认)。

点右上「新建网络」:

字段可选值说明
名称自填必填,例如 my-net
类型Internal(内部)/ External(外部)/ Private(专用);Linux 另有 NAT (default) 与 桥接 (bridge)按需选
网卡 / 桥接名下拉选物理网卡,或输入桥接名只在类型选 External 或 桥接时才出现

物理网卡下拉的候选就是服务器上真实存在的网卡,可搜索。

建了虚拟网络,服务器上就会多出一块虚拟网桥

这块虚拟网桥天然带着虚拟化厂商的标识。早期版本会因此把物理服务器判成虚拟机,授权页弹红色告警要求加密狗。现已改为只看真实物理网卡,虚拟网卡一律不参与判断(见第四节「本机虚拟机识别」)。

2.3 虚拟机管理(本机 Hyper-V / KVM)

页面顶部常驻一条虚拟磁盘默认存储路径,右侧「设置路径」可改(新建虚拟机时虚拟盘就存在这个目录下)。右上角三个动作:刷新平台、上传 ISO新建虚拟机

上传 ISO

只收 .iso 文件。超过 100 MB 的自动走分片上传(每片 5 MB),弹窗里显示文件名与进度条,上传期间不能关窗口。上传好的 ISO 之后在「新建虚拟机」的启动 ISO 下拉和「挂载 ISO」里都能选到。

新建虚拟机

字段默认值取值范围
名称必填
CPU 核数21 ~ 64
内存(MB)2048512 ~ 524288
磁盘(GB)4010 ~ 2048
网络不选已建好的虚拟网络,可清空
启动 ISO不选已上传的 ISO。建议选——创建后会自动挂载并设为首启,方便首次开机装系统

创建是后台任务。 提交后页面出一条「正在创建虚拟机「××」,请稍候…」的提示,结果稍后回来;如果查询结果超时,页面会明确提示「请刷新列表查看是否已创建成功」,不要重复提交。

每行能做什么

操作按钮按虚拟机当前状态自动置灰:

动作什么状态下可用
开启未运行、未暂停
关闭 / 暂停运行中
恢复已暂停
重启 / 强制关机运行中或已暂停
控制台随时
ISO → 挂载 / 弹出随时
快照随时
配置随时(只读查看当前配置)
删除随时

挂载 ISO:选一份已上传的 ISO,另有一个「下次启动从光驱引导」开关,默认打开

快照:抽屉里列出快照名与创建时间,可创建快照、回滚(二次确认)、删除快照。

控制台分两种:

1,Windows(Hyper-V):点「在宿主机上打开控制台」,VMConnect 窗口会出现在宿主机的桌面上——也就是说,只有当你正通过远程桌面登录到这台宿主机时才看得到它。窗口里也给出可复制的连接命令与虚拟机 GUID,方便你自己连。远程连接时:宿主机在域中可用域账号;宿主机是工作组的,要在 VMConnect 弹出时输入宿主机上有权限的账号(形如 主机名\Administrator),并确保宿主机已开启远程管理。本机没装 VMConnect(只装了管理工具、没装 Hyper-V 角色)时,页面给出一条可复制的安装命令,适用于 Windows 10/11 专业版、企业版或教育版,执行后按提示重启。

2,Linux(KVM):页面给出一个可复制的画面地址,用 virt-viewer 或 noVNC 代理连接。

删除虚拟机不可逆

删除确认框写得很明确:「确定删除该虚拟机吗?删除后不可恢复。」另外,改动虚拟网络配置或重启服务会中断正在进行的业务,不要在上课时间做。

三、VDI / PVE 桌面:见另一页

这一块内容多、也自成体系,已单独成页:VDI 桌面池与 PVE 集群

那页讲的是「对接现场已有的 Proxmox VE 集群,用模板克隆虚拟机、一人一台发下去」——节点登记与连接失败诊断、模板注册、VDI 使用者名单与 Excel 批量导入、一键分发、桌面池的分配 / 归还 / 回收、克隆与迁移、Cloud-Init 与用户数据盘、连接策略与在线会话,以及「回收」和「销毁」的区别。

别和本页混为一谈

本页说的「服务器虚拟化」是这台服务器自己开虚拟机(Windows 走 Hyper-V、Linux 走 KVM),与 PVE 无关。两者在管理台里是两组不同的页面,配置也互不影响。

四、这几项没有菜单入口

下面四项属于服务端的后台能力,控制台里没有对应页面,写在这里是为了让你知道它们存在、以及排障时该怎么理解现象。

能力干什么平时要不要管
服务端缓存管理查缓存统计与占用大小、清空全部缓存不用管
对时(NTP)给终端侧返回校准后的时间用于校时,可强制刷新时间缓存不用管,内网自动调用
本机虚拟机识别判断这台服务器是不是跑在虚拟机里不用管,结论体现在授权页
上报健康与手动补报查上报健康状态(最后一次成功、连续失败次数),可手动触发一次立即上报排查「到中心服务器通不通」时用

服务端缓存管理:查询类的动作没有副作用;「清空全部缓存」被列为高危动作——经 AI 助手发起时一律先出待确认卡片,管理员点确认后才执行。

对时:终端侧校时用的就是它。终端本地时钟不准会让按本地时刻触发的行为整体偏移(例如定时合并的执行时刻),这类现象排查时先想到时钟。

本机虚拟机识别:判据取自操作系统对硬件的登记信息——主板与 BIOS 厂商、CPU 标志、虚拟化平台自检、以及网卡的厂商标识——不靠猜名字。早期版本因为「启用虚拟化后系统自动多出一块虚拟网桥、而虚拟网桥天然带虚拟化厂商标识」,把物理服务器判成了虚拟机,授权页因此弹红色横幅;现已改为只看真实物理网卡,修复后该物理服务器的结论恢复为「非虚拟机」,横幅消失。授权页相关说明见如何使用上机认证进行上机实名记录

上报健康与手动补报:用来核对本机到中心服务器的联通性——最后一次成功是什么时候、连续失败了几次,必要时手动触发一次立即上报再看结果。

这几项只在内网调用,不要把管理服务暴露到公网

上面这几项后台能力按设计走本机或受信内网调用,响应里只有数值型状态。即便如此也不要把管理服务开到公网上。

五、边界与常见误判速查

现象 / 疑问说明
虚拟网络管理、虚拟机管理页只显示「请先完成初始化」先去「初始化」页把 Hyper-V 或 KVM / libvirt 装好、校验通过
点「安装/启用 Hyper-V」失败多为当前服务没有管理员权限;改用管理员 PowerShell 执行页面给出的命令,完成后重启
Linux 上点不到「安装 KVM」的按钮设计如此——Linux 侧只给安装脚本,由你到服务器上执行
授权页说「服务器运行在虚拟机环境中」,但这明明是台物理机早期版本把启用虚拟化后多出的虚拟网桥当成了本机属性,已修为只看物理网卡;仍误报请联系技术支持核对本机虚拟机识别的结论
分配桌面时下拉里找不到某个人到「用户管理」看这个人的「可分配桌面」是不是「是」
新建的桌面池里一台机器都没有池建好之后还要在「池内桌面」里点「补充实例
想删桌面池删不掉池内必须先清空虚拟机
虚拟机迁移按钮点不动迁移只支持已关机的虚拟机,且要在「按节点」视图下、是 PVE 实例、目标不能是当前节点
VNC 控制台按钮是灰的只有运行中或已暂停的虚拟机能开 VNC 控制台
「编辑配置」提示要在「按节点」视图下节点筛选器选了「全部」时只列本系统创建的实例,改配置要先切到具体节点
移除模板会不会把 PVE 上那台机器删掉不会,只删登记信息
销毁实例能不能找回不能,会删掉 PVE 上的虚拟机并移除记录
PVE 那些页面在没有 PVE 的现场能用吗不能,它们无对象可操作,也不会把普通服务器变成 PVE
这些虚拟化能力会不会影响机房里的无盘终端不会,两条路并行;但改虚拟网络配置或重启服务会中断正在进行的业务,避开上课时段

六、配套阅读