ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Windows Hyper-V虚拟机实战:从开启到优化全指南

Windows Hyper-V虚拟机实战:从开启到优化全指南 我们直接从主题开始。很多人问我同一个问题我想在本机跑虚拟机做开发测试到底用什么方案合适如果你手头的系统是Windows 10或Windows 11专业版我真的建议你优先看看系统自带的Hyper-V而不是再去折腾Vmware或者VirtualBox。Hyper-V是微软官方提供的虚拟化平台核心优势就是它在系统底层直接跟Windows内核整合性能损耗非常小尤其对内存、CPU的虚拟化支持做得比第三方虚拟机软件更干净。这篇文章我会带你走通从检查硬件、开启功能、用图形界面和PowerShell命令行创建虚拟机再到配置网络、装系统、优化性能的完整流程全部基于我自己实测过的经验。无论你是刚接触虚拟机的纯小白还是已经在用Vmware但想换个轻量方案的开发者这篇文章都适用。我会把每个环节的原理跟操作一起讲清楚搞清楚为什么这么做才不会下次遇到同样的坑还继续踩。1. 启用前的硬件准备与版本限制先别急着敲命令很多人在这一步就卡住了倒不是操作有多难而是根本找不到“Hyper-V”这个功能入口。我遇到过好几个同事对着控制面板翻半天回来跟我说“我的系统里根本没这个选项”。这里有两个最常见的原因系统版本不支持或者CPU虚拟化没有打开。1.1 系统版本要求别拿家庭版硬碰Hyper-V不是所有Windows版本都有。它只存在于Windows 10/11专业版、企业版、教育版以及Windows Server系列系统。家庭版Home默认不带这个功能组件无论你怎么去“启用或关闭Windows功能”界面里翻都找不到Hyper-V的勾选项。如果你用家庭版又不想换系统严格来说没法用系统自带的Hyper-V。市面上有些“取巧”的手段比如提取安装包或者修改系统文件这类操作我不推荐一来不稳定二来系统更新容易被重置。一个更务实的思路是如果你只是偶尔跑虚拟机可以考虑Vmware Workstation Player免费版或者VirtualBox这两者都不挑Windows版本门槛低很多。如果你未来长期要用虚拟化做开发、跑Docker、用WSL2这些那还是升级到专业版更省心。关于怎么查自己系统版本右键“此电脑”选“属性”或者按Win R输入winver回车就能看到版本信息。这个方法比任何第三方工具都准。1.2 BIOS/UEFI开启虚拟化这一步漏了就全白搭假设你的系统是专业版打开“启用或关闭Windows功能”后还是找不到Hyper-V那多半是CPU虚拟化技术在BIOS里被关了Windows没有识别到硬件支持。具体原因在于Hyper-V依赖CPU的虚拟化指令集Intel叫VT-xAMD叫SVM。如果这两个开关在BIOS里是Disabled状态Windows功能列表就直接隐藏Hyper-V选项。进BIOS的方式每台机器略有不同一般是开机时按Del、F2、F10或F12具体看主板品牌。进去之后找“Advanced”或者“CPU Configuration”相关的菜单不同的BIOS叫法不一样Intel平台找名字里带“Intel Virtualization Technology”、“VT-x”或“Virtualization”的选项设为Enabled。AMD平台找“SVM Mode”或者类似字眼的选项同样改为Enabled。改完保存退出进系统后按Ctrl Shift Esc打开任务管理器切到“性能”标签下面选中CPU右下角能看到“虚拟化”状态。如果显示“已启用”说明这一步就过了。如果是“已禁用”或者完全不显示这一栏大概率还是BIOS层面没开干净或者主板固件太老需要更新。这里有个我自己遇到过的细节有些笔记本的BIOS界面比较简单可能在“Security”菜单下才找得到虚拟化选项而不是“Advanced”。别只盯着一个菜单翻多找找。2. 开启Hyper-V的两种方式图形界面和命令行全覆盖现在硬件条件满足、CPU虚拟化也开了就可以正式启用Hyper-V组件了。我会分别说明传统图形界面操作和PowerShell命令行两种方式以及为什么我更推荐后者。2.1 通过“启用或关闭Windows功能”图形化开启这是最直观的做法适合不熟悉命令行的人按Win R输入optionalfeatures并回车弹出“Windows功能”窗口。注意直接输入control进控制面板再找“程序”也可以但optionalfeatures是直达命令更快。在功能列表中找到“Hyper-V”节点把前面对勾勾上。展开它里面有两个子项Hyper-V 管理工具和Hyper-V 平台。建议两个都勾上只勾管理工具不勾平台等于只有操作面板没有底层的虚拟化引擎虚拟机根本起不来。同时如果你之后要跑Linux发行版做内核调试或者研究内核结构建议再把“Windows 虚拟机监控程序平台”这个选项一并勾上。它是让第三方软件在确保安全的环境里使用Hyper-V底层能力的关键最新版本的Vmware Workstation和VirtualBox也都兼容它。点击“确定”后Windows会提示你重启系统才能完成安装。重启过程会卡在“配置更新”的阶段大概几分钟正常现象等它自己走完。这个方式的缺点是你只能看到“安装”这个过程看不到具体安装了什么组件、装在了哪里。如果哪天想彻底清理Hyper-V同样回到这个界面把勾去掉再重启就行。2.2 用PowerShell一行命令搞定效率翻倍如果你经常要在多台机器上配置环境图形界面一个个去勾选就太慢了。这种情况下我强烈建议用PowerShell一条命令就把所有需要的功能全部装上。右键开始菜单选“终端(管理员)”或者“Windows PowerShell(管理员)”然后逐条执行以下命令Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All这条命令会自动安装Hyper-V的全部功能。你可以看到它过程和结果的输出如果功能已经启用过会显示Online : True和重启是否需要等状态信息。如果你的机器需要支持WSL2、Windows沙盒、以及基于虚拟化的安全VBS等功能那么建议再多执行Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatformVirtualMachinePlatform是虚拟机监控程序的基础平台Hyper-V的底层也依赖它。顺带提一句新版的WSL2切换到这个平台之后整体I/O性能比第一代WSL好非常多如果你打算用Windows跑Linux开发环境这两个功能建议一起开。执行完成后同样会提示你需要重启系统。命令行方式比图形界面多的一个优势在于脚本化部署、批量执行很省事。你甚至可以提前写好一个.ps1脚本里面包含多个Enable-WindowsOptionalFeature命令一键跑完重启就全配好了。2.3 关于专业版用户“没有Hyper-V选项”的特别情况热词里有一类搜索很典型“window11家庭版没有hyper-v开关”。上面已经解释了家庭版不支持。但还有一种情况是你明明用的是专业版、CPU虚拟化也开了但功能列表里就是没有Hyper-V。别慌这在某些预装系统上会碰到原因是系统出厂镜像可能做了精简或者禁用了部分Windows功能组件。我给出的验证与处理思路是再次确认系统版本不是伪装的“专业版”用winver看清楚。检查是否开启了“基于虚拟化的安全性”VBS或者内核隔离在某些安全策略限制下Hyper-V功能入口会被隐藏。如果上述都没问题试试从命令行强制安装功能包。上面提到的Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All其实有尝试修复功能注册表项的作用可以跑一遍看有没有报错。目前来看多数情况都属于前述版本不对或者BIOS虚拟化未开启第三种极少见。真有需求也可以考虑重装原版专业版系统一劳永逸。3. 虚拟机创建实战图形界面加PowerShell双路线Hyper-V装好重启进系统之后从开始菜单搜索“Hyper-V管理器”打开就能看到Hyper-V管理器的主页面。此时你已经有了一台可用于创建虚拟机的虚拟化平台接下来怎么建第一台虚拟机我会把两条路线都走一遍你看自己的习惯选。3.1 图形界面创建Windows/Linux虚拟机打开Hyper-V管理器后右侧操作面板点“新建”-“虚拟机”就会进入虚拟机创建向导。这个向导总共7步一步步说“开始之前”就是介绍页右下角勾选“不再显示此页”点下一步。“指定名称和位置”给虚拟机起个名字位置可以选择默认路径也可以单独指定一个空间足够的硬盘目录。这里需要注意虚拟机的配置文件.vmcx和虚拟磁盘文件.vhdx默认是存放在C:\ProgramData\Microsoft\Windows\Hyper-V目录下的。如果C盘紧张建议指定到其他盘我一般会单独建一个D:\Hyper-V\虚拟机名\的目录存放。“指定代数”这里有两个选项“第一代”和“第二代”。第一代兼容性最好可以用来装各种32位、64位的老系统比如Windows 7、Windows XP的镜像第二代则更快支持UEFI启动和安全启动能获得更好的体验但仅支持64位的新系统比如Windows 10/11、Windows Server 2016及以上、主流Linux发行版。如果你从网上下载的镜像比较新直接选第二代没问题。装老系统就选第一代。“分配内存”设置启动内存大小。如果只是测试用4GB刚好做编译、跑数据库建议8GB以上。这里有个“使用动态内存”的选项勾上可以让Hyper-V根据虚拟机内部实际负载动态调整内存分配防止多个虚拟机同时开机把宿主机内存吃满。我的建议是内存充足并且只是给这台虚拟机轻载使用可以勾选动态内存如果虚拟机上要跑MySQL、Java服务等内存大户建议取消勾选直接给固定大内存以免动态调整造成性能抖动。“配置网络”这个稍后会重点讲先选一个虚拟交换机或者选“未连接”待会再配。“连接虚拟硬盘”这步创建一个VHDX虚拟磁盘文件大小按需设置。比如装Windows 10系统建议至少40GB并且选择“动态扩展”模式。动态扩展的好处是文件在磁盘上开始很小随着虚拟机内部数据写入再逐步增大不会一次性占用掉实际磁盘空间。“安装选项”如果你有系统镜像ISO文件选“从可启动的CD/DVD-ROM安装操作系统”点击“浏览”选好ISO文件。然后在虚拟机设置的“DVD驱动器”里把“启动时加载”的镜像挂载上。如果已经有制作好的VHDX或者准备用网络安装等方式也可以选其他选项。点完成之后选中这台虚拟机右键“连接”再点工具栏上的“启动”按钮就能看到系统安装界面了。整个过程和用实体机装系统没有本质区别只是显示、键鼠输入都跑在Hyper-V控制台里。3.2 用命令行快速创建和启动虚拟机说句心里话图形界面创建虚拟机不是不行但如果你有自动化部署需求或者想要创建的虚拟机数量比较多每次打开向导点7步真的会烦。这时候PowerShell就体现出价值了。管理员权限打开PowerShell执行下面的命令创建一台名为“DevMachine”的虚拟机分配8GB内存使用第二代挂载镜像是D:\ISO\Win11.iso网络连接到名为“Default Switch”的虚拟交换机New-VM -Name DevMachine -MemoryStartupBytes 8GB -Generation 2 -NewVHDPath D:\Hyper-V\DevMachine\DevMachine.vhdx -NewVHDSizeBytes 80GB -SwitchName Default Switch -BootDevice CD这条命令跑完后还会自动生成一个VHDX文件。接着把ISO挂载上去Set-VMDvdDrive -VMName DevMachine -Path D:\ISO\Win11.iso最后启动虚拟机Start-VM -Name DevMachine再通过命令行连上控制台查看安装界面vmconnect.exe localhost DevMachinevmconnect.exe是Hyper-V自带的远程连接工具可以直接调起来虚拟机控制台窗口。整套流程下来一分钟内就能完成一台虚拟机的创建并进入启动状态比图形界面快捷太多。还有几个常用的管理命令顺手给你# 查看所有虚拟机状态 Get-VM # 关闭指定虚拟机相当于点“关闭” Stop-VM -Name DevMachine # 强制断电 Stop-VM -Name DevMachine -Force # 暂停虚拟机 Suspend-VM -Name DevMachine # 设置虚拟机开机自启 Set-VM -Name DevMachine -AutomaticStartAction Start这些命令配合计划任务或者脚本可以轻松实现虚拟机的批量生命周期管理比如每天定时开启开发环境、晚上定时关闭释放资源省心不少。3.3 管理工具增强解决复制粘贴和文件互传的老大难很多人装上虚拟机后第一件事就是装系统系统装完发现鼠标切换不流畅、文件拖不进去、也没法和宿主机互相复制文本。这个问题在Hyper-V里尤其容易遇到。解决思路是安装Hyper-V集成服务。对Windows系统来说集成服务组件默认在Windows更新里随系统一起启用所以正常情况下只需要在虚拟机内通过“操作”菜单点击“插入集成服务安装盘”里面的安装程序会自动把驱动和服务补齐。安装完成后所有流畅鼠标切换、剪贴板共享、文件拖拽等功能都可以在虚拟机设置的“管理”-“集成服务”里勾选。对Linux发行版来说路径略有不同。如果装的是Ubuntu、Debian等系统Hyper-V的集成服务叫Linux Integration Services简称LIS已经包含在Linux内核中只要内核版本不是特别老默认就能利用到虚拟机的动态内存和时间同步等增强功能。热词里有“kali linux安装hyper-v增强功能实现与物理机自由复制”这类需求本质上也是在虚拟机内安装或启用Linux Integration Services再配合图形桌面的剪贴板共享设定来实现。如果你在Linux虚拟机里发现文本复制、文件拖拽无效先检查Hyper-V模块是否加载lsmod | grep hv_正常情况下能看到hv_vmbus、hv_storvsc、hv_netvsc这类内核模块。如果看不到说明内核里这些模块没启用需要重新编译内核或者安装配套的Linux Integration Services包。这一步比较折腾但是完成后体验提升非常明显值得花时间。4. 网络配置与文件传输打通宿主机和虚拟机的桥梁虚拟机创建好了、系统也装完了接下来最核心的就是网络两台机器之间怎么互通、虚拟机怎么上网、怎么能让局域网内其他电脑也访问到虚拟机里跑的服务。4.1 三种虚拟交换机道理其实很直白Hyper-V管理器右侧“虚拟交换机管理器”里你可以新建“外部”、“内部”和“专用”三种交换机。我的建议是先把“Default Switch”用起来其实Hyper-V默认就有一个名为“Default Switch”的内部NAT交换机它使用NAT方式让虚拟机共享宿主机的上网连接。好处是零配置虚拟机开箱即用能上网宿主机与虚拟机之间也能互相通信。我在做日常开发测试时绝大多数场景直接用这个Default Switch就够。如果虚拟机要对外提供网络服务比如Web服务、游戏服务器那就需要新建“外部”虚拟交换机。这个交换机的作用说白了就是在宿主机上创建一个虚拟网卡把它和你的物理网卡桥接起来让虚拟机直接接入物理局域网获得一个和宿主机同一网段的IP这样局域网其他设备就能直接访问虚拟机了。热词里那个“hyper-v 虚拟交换机与物理网卡桥接”指的就是这个场景。操作为打开虚拟交换机管理器新建虚拟网络交换机选择“外部”把类型选为“外部网络”然后在下方下拉框里选到你当前正在使用的物理网卡比如“Realtek PCIe GbE Family Controller”或“Intel I211 Gigabit Network Connection”。如果你电脑插的是有线网卡的选有线网卡如果是连WiFi的就选无线网卡。确定后宿主机的网络可能会短暂断开重连这是正常现象。这里一个常见的坑外部交换机桥接无线网卡时部分网卡型号或者旧驱动下虚拟机内可能会遇到网络掉线、延迟高的问题。我实测下来多数是驱动兼容性引起的更新网卡驱动后基本能解决。实在不行退回用“内部交换机”配合NAT方式也能解决大多数上网需求只是外部设备访问不到虚拟机而已。4.2 给虚拟机配置固定IP告别IP漂移如果用外部交换机从路由器拿IP虚拟机每次重启后IP可能会变化很不适合做固定服务。所以我习惯在虚拟机系统内部手动配置静态IP。以Windows虚拟机为例右键右下角网络图标进入“网络和Internet设置”-“更改适配器选项”找到对应的网卡右键“属性”双击“Internet协议版本4(TCP/IPv4)”填入固定IP。假设宿主机是192.168.1.100网关是192.168.1.1那你给虚拟机配192.168.1.150就行只要保证和宿主机在同一子网并且不和其他设备冲突即可。Linux虚拟机配置静态IP也不难以Ubuntu 20.04以上版本为例直接改netplan配置sudo nano /etc/netplan/00-installer-config.yaml配置内容如下network: ethernets: eth0: dhcp4: no addresses: - 192.168.1.150/24 routes: - to: default via: 192.168.1.1 nameservers: addresses: [223.5.5.5, 114.114.114.114] version: 2保存后执行sudo netplan apply生效。之后这台虚拟机的IP就固定下来了不管是宿主机访问虚拟机里的Web服务还是用SSH远程登录都很稳定。4.3 文件传输的三种高效姿势文件在宿主机和虚拟机之间互传有许多方案我按效率排序给你第一直接拖拽复制。这也是体验最好的方式。前提条件是把第一节说到的Hyper-V集成服务装好。在虚拟机窗口内文件管理器窗格和宿主机之间直接拖文件比装什么虚拟光驱都方便。唯一局限性是文件如果特别大好几个GB拖拽过程可能卡建议大文件走网络拷贝。第二创建共享文件夹。在Hyper-V管理器里选中虚拟机打开“设置”在“管理”-“共享文件夹”中指定一个宿主机的目录然后在虚拟机内部网络路径里挂载。Windows虚拟机的网络地址输入\\192.168.x.x\share即可访问Linux虚拟机则可以用mount命令挂载mount -t cifs //192.168.1.100/share /mnt/share -o username你的用户名这种方式适合日常开发频繁读写文件的场景效率高而且不用来回复制。第三直接用scp或ftp传大文件。如果你和我一样习惯用终端直接执行scp命令scp ./test.zip user192.168.1.150:/home/user/这种方式不需要额外安装什么软件前提是两边网络通。说实话如果只是偶尔传一个小文件拖拽就够但如果要传大目录或者频繁往虚拟机里同步代码我更推荐用git仓库或者共享文件夹省得每次都要手动传。5. 常见问题排查与系统优化这些坑我几乎每次都碰到普通人用Hyper-V最容易在几个地方“翻车”。我把这些年踩过的坑集中整理一下基本覆盖了热词里搜得最多的几类问题。5.1 安全中心关闭和系统更新别为了跑虚拟机把自己坑了热词里有一类搜索频率很高叫“win10安全中心关闭”多半是把“内核隔离”和“基于虚拟化的安全性”关掉来解决与虚拟机性能冲突的问题。事实确实如此如果你开启了“设备安全性”-“内核隔离”-“内存完整性”CPU要同时兼顾宿主机的安全性虚拟化和Hyper-V的虚拟机调度性能必然打折扣。但这里我建议不要一刀切关掉如果你的宿主机配置只是普通级别又想同时跑3个虚拟机那可以把内存完整性关掉换取更充裕的资源。另外热词里的“win11关闭自动更新”也是为了稳定运行虚拟机的常见操作。Windows更新重启后宿主机如果处于待机状态Hyper-V虚拟机会被强制关闭或者挂起。如果你正在跑关键任务虚拟机确实建议开启“活动时间”模式让Windows不在工作时段自动重启或者设置成“下载更新但让我选择是否安装”。注意不是让你完全关闭更新而是尽量避开虚拟机工作时间。5.2 Win11右键菜单和系统里的小问题顺手一起解决网络热词里“win11右键菜单改回win10”特别多。在装完Hyper-V后如果你还在频繁操作宿主机文件Win11那个精简右键菜单确实影响效率。想让右键菜单恢复完整显示打开PowerShell执行两行命令即可reg add HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32 /f /ve taskkill /f /im explorer.exe start explorer.exe执行完资源管理器会重新启动之后右键菜单就恢复成Win10样式的完整菜单了。如果你用的是Win11 23H2之后的版本部分系统版本这个改法可能失效这是微软后续版本加了限制目前暂时没有特别稳定干净的方案所以我更建议多练习Win11新增的快捷操作比如选中多个文件后右键直接显示更多选项用久了也是能接受的。5.3 虚拟交换机重置解决网络突然失联有一种情况非常烦躁宿主机一切正常虚拟机也没报错但虚拟机怎么都上不了网。我排查过几回问题出在虚拟交换机上——电脑切换了网络环境从家里有线网切换到公司WiFi之后原先把物理网卡桥接到的外部交换机失效了因为那个网卡已经不存在或者名称变化。解决办法是在管理器中删除掉失效的交换机重新新建一个外部交换机并选择当前正在使用的物理网卡然后到虚拟机设置里把网络适配器切到新交换机上。如果不想全部重建也可以在PowerShell里跑一句刷新Get-VMSwitch | Update-VMSwitch这条命令会让现有交换机重新检测底层的物理网卡绑定情况有些场景下能救回来。但更可靠的做法是重建。我也试过在“网络连接”界面把物理网卡和Hyper-V虚拟网卡的桥接解绑再重绑有时能生效但稳的还是重选物理网卡。5.4 虚拟机和宿主机的性能调优技巧如果虚拟机的响应速度不理想不要盲目加内存。先按这个顺序排查CPU资源在虚拟机设置-处理器中把“虚拟处理器数量”调高。第二代虚拟机默认等于宿主机的CPU核心数。如果是编译大型项目可以适当把“虚拟机保留”和“虚拟机限制”的百分比都设到100让虚拟机尽量用满物理CPU。注意Hyper-V里虚拟CPU数量超过物理核心数并不能直接提升单线程性能它更适合多任务并发场景。内存资源勾选“启用动态内存”后建议把“最大内存”设置到物理内存的70%左右避免内存耗尽触发宿主机卡顿。磁盘性能这是最容易忽略的地方。虚拟机的VHDX文件如果放在机械硬盘上性能会非常差。建议在所有SSD可用的情况下把VHDX放到M.2 NVMe固态硬盘上。另外在虚拟机设置里把硬盘控制器的类型选成“SCSI”而不是默认的“IDE”因为SCSI在Hyper-V里走的是半虚拟化驱动吞吐量更高延迟更低。网络性能如果有多块虚拟网卡不要全部接到默认交换机上。直接给虚拟机分配一个外部虚拟交换机网络吞吐会明显提升。数据包转发量大的场景还可以考虑开启“SR-IOV”需要网卡和系统都支持但普通用户没必要折腾默认就够了。6. 命令行进阶技巧把Hyper-V用出“效率党”的快乐文章开头说了命令行启用Hyper-V再用命令行创建虚拟机现在我再分享几个平时工作中高频使用的PowerShell管理命令帮你把虚拟机运维自动化程度拉满。6.1 批量导出和导入虚拟机如果你想迁移虚拟机到新电脑或者给虚拟机做个备份用“导出”功能会比你直接把VHDX文件拷走更稳妥。图形界面的操作是在Hyper-V管理器右键虚拟机选“导出”然后选个目录它会把整个虚拟机配置和磁盘打包到指定路径。命令行也一样Export-VM -Name DevMachine -Path D:\Hyper-V\Backup导入时如果只是从备份恢复执行Import-VM -Path D:\Hyper-V\Backup\DevMachine.vmcx这里提醒一下导出的目录里通常会包含虚拟机的快照文件占空间不小。如果只想迁移VHDX可以不导出快照直接拷贝虚拟磁盘文件到新路径然后用New-VM重新挂载一下就好。6.2 创建快照实验前必备的后悔药热词里有“导出hyper-v虚拟机”和“hyper-v重置交换机”说明很多人都在折腾、并且在折腾前想留后路。快照就是最直接的后悔药。在PowerShell里为虚拟机创建快照Checkpoint-VM -Name DevMachine -SnapshotName Before-Update恢复到某个快照Restore-VMCheckpoint -Name DevMachine -SnapshotName Before-Update -Confirm:$false查看快照列表Get-VMCheckpoint -VMName DevMachine快照的原理是差分磁盘它记录的是虚拟机磁盘在某个时间点之后的增量变化而原始数据保留不变。因此快照创建得很轻量几秒钟就能完成。但要注意快照越堆越多磁盘占用会持续增长性能也可能下降。所以我每次做完一次大的环境更改并确认没问题后就会把旧快照删掉保留一个稳定基线即可。6.3 批量创建并配置多台虚拟机的完整脚本参考如果你需要在本地跑几台一样的机器用于集群测试手动一台台建太蠢了。一个简单的PowerShell循环就能搞定。$vmNames (Node1, Node2, Node3) foreach ($vmName in $vmNames) { New-VM -Name $vmName -MemoryStartupBytes 4GB -Generation 2 -NewVHDPath D:\Hyper-V\$vmName\$vmName.vhdx -NewVHDSizeBytes 40GB -SwitchName Default Switch Set-VMDvdDrive -VMName $vmName -Path D:\ISO\CentOS7.iso Start-VM -Name $vmName }我过去搭建K8s集群测试环境时就是用这个思路把三台虚拟机创建完毕再配合Ansible去批量配置体验比在一台机器上反复装系统强太多。当然这里用到的ISO镜像要预先放在某个固定路径虚拟机启动后会自动从镜像引导安装。7. 我的一些心得体会最后想说的是Hyper-V虽然学习曲线比Vmware稍微陡一点但一旦上手你会发现它和Windows系统的整合程度确实高。虚拟机启动速度、网络性能、稳定性都相当可靠而且它是系统自带的没有授权费用不用担心破解问题也不会有“个人使用免费、商业使用收费”这类边界模糊的顾虑。我个人的建议是如果你把自己的Windows升级到了专业版并且这辈子根本不想再为虚拟机软件去安装什么额外的驱动、权限和后门程序那Hyper-V是绝对值得投入时间学习的第一选择。反而如果你身边团队同事都在用Vmware且有大量现成的.ovf、.vmdk格式的镜像要直接跑那Hyper-V转换起来也是可以的只是在导入格式兼容性上不如Vmware自己做得顺滑。这两种方案并不冲突我自己就是Vmware、VirtualBox和Hyper-V三个都在用按需选择。还有一个小技巧如果你打算长期用Hyper-V建议把虚拟机的存放目录固定到一个容量充足、性能好的固态硬盘并且定期清理不再用的虚拟机和快照。磁盘空间被VHDX文件塞满是Hyper-V用户最常见的问题我见过太多同事因为C盘满了虚拟机打不开而且一旦出现这种情况虚拟机文件又无法直接移动处理起来相当被动。这篇文章的内容到这里就是全部分享了。你如果是从零开始接触Hyper-V建议按步骤一步步来先确认系统和硬件支持再开启功能然后创建一台测试虚拟机把网络和集成服务都配置好你就会发现它其实远比想象中好用。等到熟练之后再用PowerShell搭建批量的自动化环境效率能有一个质的提升。
返回列表