欢迎光临散文网 会员登陆 & 注册

[旧作整理补档] 手把手教你配置基于Windows Server的Hyper-V服务器(上)

2021-04-13 10:59 作者:进栈检票  | 我要投稿

原帖(图吧精品帖):https://tieba.baidu.com/p/6546561163

照例的账号信息证明身份

照例的项目文件夹(备份里的)
当时用B450M DS3H带3600X……现在在B550M迷你雕上,U生巅峰,等5700G

现在补充的内容以深蓝色表示

目录

  1. Windows Server产品线介绍(上篇)

  2. 准备工作(上篇)

  3. Windows Server 2019 + Hyper-V角色 服务器端配置(中篇)

  4. Hyper-V Server 2019 服务器端配置(中篇)

  5. 控制端(本地)配置(下篇)

  6. 虚拟机的管理(下篇,只写了开头)

  7. 客户端连接配置(还没写)

计划中内容

  1. Hyper-V上的GPU虚拟化

  2. Hyper-V桌面虚拟化

Hyper-V和ESXI各有千秋,但如果你要虚拟化的系统基于Linux内核,基本上这篇教程不用看了。其实Hyper-V对新版本Linux的支持已经很不错了(WSL2就是基于Hyper-V),但是Hyper-V还是配合Windows生态使用比较好。如果一部分虚拟机是Windows而一部分是Linux,也可以选择Hyper-V;但是如果要使用大量Linux虚拟机,则建议使用KVM、Xen等。另外本文适用于个人用户虚拟化用于使用(而非部署服务)的虚拟机,如果只是要在一台物理服务器上部署多个服务,建议使用Docker(Windows也可以使用),另外生产环境的Web服务还是推荐在Linux上运行,即使对于dotnet服务,ASP.NET Core也相当完善了。

1. Windows Server产品线介绍

1.1 更新频道

现在的Win10和Windows Server都有两种更新频道:半年频道和长期服务频道(也就是大家所熟悉的LTSC,曾用名LTSB,实际上是一种东西(微软改名部石锤),也没有什么所谓LTSD,下一个Win10 LTSC版本为2021)。

半年频道,官方解释为遵循“现代生命周期策略”的版本,半年一次大版本更新,每个大版本只提供18个月的服务。在Server平台上为没有年份后缀的版本(一般会标注Windows Server, SAC);在Win10平台上就是我们平常用的Win10。需要注意的是采用现代生命周期策略的Windows软件是SaaS,这意味着使用停止支持的SAC版本违反协议的,甚至有法律风险。所以有需要的尽量采用LTS频道,1809代码库的2019目前很多功能都比较落后了,可以等21H2代码库的2021。

长期服务频道,官方解释为遵循“固定生命周期策略”(即Win10(所有Windows)以前的策略)的版本,3年一次大版本更新,提供5年主要支持和5年外延支持。在Server平台上就是Server 2016和Server 2019这样的版本;在Win10平台上就是常说的LTSC,一共发布过2015、2016、2019这3个版本(早期叫LTSB的时候一年一更,从2016/1607开始,Win10和Server的LTS频道更新同步,基于同一版本的代码库)。

关于Windows更新频道的问题,可以去看看微软的“生命周期说明书”。

最近还发动态详细解释过这个问题

相关评论


1.2 版本

现在的Windows Server共有三种版本:Standard(标准版),Datacenter(数据中心版),Hyper-V Server

Standard和Datacenter版共用一个发布映像

Server 2019:

fig. 1.2-1 Server 2019的发布映像

Server 1909:

fig. 1.2-2 Server 1909的发布映像

可以注意到Server 2019每个版本有“桌面体验”选项,而Server 1909则没有。半年更新频道已不提供“桌面体验”版本。无“桌面体验”的版本安装大小大概小3G左右,但是登录后长这样:

fig. 1.2-3 Windows Server Core登录后的界面示例

你没看错,虽然还有GUI的窗口,但是Explorer(文件资源管理器)等桌面程序都消失了,只剩下命令行界面。在Server 2012时代还有图形登录界面,到了现在甚至连LogonUI.exe也命令行化了。这种版本主要为企业用户设计,运行在服务器环境(尤其是云服务器环境下)的Windows桌面会占用可观的资源,浪费本应该由Web服务使用的宝贵系统资源;而现在微软提供了Admin Center等远程管理工具,还有PowerShell这样方便的管理语言,桌面管理环境就被放到控制端了。对于个人用户的母服务器,一般不选择这样的安装选项,还是选择带“桌面体验”的常规版本。

Standard版本功能很受限制,Hyper-V只能开两个虚拟机,所以之后我们只能使用Datacenter版本。

Hyper-V Server比较特殊,它专为只运行Hyper-V的服务器设计,也是只有命令行界面,但是多了一个叫Server Config的VBS脚本,每次登录都可以看到,方便我们进行一些系统配置。只有命令行界面的原因和上面差不多,桌面环境开销太大,有这开销还不如多开一台虚拟机。

fig. 1.2-4 Server Config CUI界面示例

与Datacenter版高昂的售价形成对比的是,Hyper-V Server是免费的,无需激活。Hyper-V Server 2019服务器的部署,之后也会讲到。为了管理虚拟机,控制端配置是必须的

1.3 Hyper-V的体系结构简介

虚拟化体系结构主要有两种:寄居式虚拟化层在主机操作系统之上运行,代表有VirtualPC、VBox、VMware Workstation等虚拟化软件)和裸金属式Bare Metal的直译,指虚拟化层直接在主机上运行,代表有VMware ESXI、Hyper-V)。显然寄居式由于多了一层主机操作系统,效率较低。

Windows Server在开启Hyper-V后,主机操作系统还能用,让人很容易认为Hyper-V是寄居式的虚拟化。但其实主机操作系统也运行在虚拟化层之上,相当于唯一一个有权直接访问内存、存储、网络的虚拟机,被称为“半虚拟化”。放一张微软官方的图。

fig. 1.3-1 Hyper-V半虚拟化体系结构示意图(图源微软)

但是不需要担心性能问题,半虚拟化对性能的影响微乎其微。因此你可以放心地在开启Hyper-V的服务器上运行大型程序。

这只是一个通俗的解释,要详细了解Hyper-V的体系结构,可以去找微软的官方文档。//其实搞过开发的都知道,微软的文档很全,而且大多数有中文版,简直是开发者的福音。(当时还不怎么写代码,现在真入坑了dotnet,确实文档全减少了很多麻烦,但是最佳实践等等让你能写好代码的东西还是得看一些大佬的博客等其他资料)

//了解虚拟化多一点的人可能会发现,Hyper-V的体系结构其实和Xen比较像 

9月份写的关于虚拟化体系结构的几条动态:驳“Hyper-V把物理机虚拟化成虚拟机”论 纠错和补充 网上找的拓补图

相关评论

1.4 如何选择

如果你在你的服务器上只运行Hyper-V,就像ESXI主机那样,建议安装Hyper-V Server。如果你还打算在服务器上运行大型软件,比如渲染、科学计算等,建议安装Server 2019 Datacenter。

2. 准备工作

2.1 硬件准备

首先要有一台Win10 1809以上的机器作为控制端,可以减少很多远程连接等交互时产生的麻烦。如果你要使用Hyper-V Server,控制端是必需的。接下来当然是一台服务器了,CPU最好有4个及以上的物理核心,内存8GB起步,要不然你开不了多少虚拟机的。在服务器端最好准备一个容量小但速度快的固态硬盘作为系统盘,傲腾是最好的选择。如果安装Hyper-V Server,可以把系统装进一个8GB或以上的U盘,但你的服务器不一定支持从U盘启动服务器系统。还要准备一个64GB起步的固态硬盘用于存放软件和虚拟硬盘

本教程的实验环境为镇楼图服务器上的虚拟机,Server 2019 Datacenter虚拟机一台,Hyper-V Server 2019虚拟机一台,Win10 LTSC 2019虚拟机一台。第一台虚拟机系统盘32GB,第二台8GB。独立的固态硬盘大小为64GB。

2.2 软件下载

先把准备好的64GB以上的固态硬盘下称存储区)格式化成ReFS格式。这种格式要远比NTFS稳定,更重要的是对虚拟硬盘进行了大量的优化,固定大小虚拟硬盘可以做到秒创建。不是一个分区的整成一个分区,最好是GPT分区表。

fig. 2.2-1 选择格式化
fig. 2.2-2 格式化设置

存储区新建一个文件夹,命名为"image"。

要安装Server 2019 Datacenter的,在next itellyou上搜索"server 2019 jan 2020(目前next itellyou更新到补丁包版本July 2020,通过其他渠道或者直接从MSDN应该可以下载到更新的补丁包版本,不过其实多等一段时间更新就是)"就出来了,结果就一条,下载到"image"文件夹,下载完成后记得用itellyou提供的SHA1256校验码校验。下载完成后重命名为"server.iso"方便找。

要安装Hyper-V Server 2019的,百度搜"Microsoft Evaluation Center",进入后选择"查看最新产品" -> "Windows Server " -> "Microsoft Hyper-V Server 2019",随便填写一下注册信息,就可以获取到下载地址。微软已经在页面上告诉你Hyper-V Server 2019是免费的,所以其实是不分试用版的,你下载的就是使用版镜像,不用担心激活。下载完成后重命名为"hyperv.iso"方便找。

fig. 2.2-3 准备好的镜像文件夹示例

相关评论

补充:之前有一段时间Microsoft Evaluation Center无法访问(点击选项没动静),但是现在是可以访问的。这里补几张图:

fig. 2.2-补1 Microsoft Evaluation Center页面
fig. 2.2-补2 选择下载Hyper-V Server 2019安装镜像

点击“继续”后会让你填写个人信息,随意填写即可,再选择语言之后就可以看到文件名和下载按钮了

这里直接给出下载地址

根据文件名推测之后应该没有更新补丁包版本,所以SHA256就用之前下载的了,SHA1见上面评论区图片

2.3 工具准备

在之后的部署中要用到几个重要工具。

第一个当然是地表最强Windows管理工具Dism++了,百度找到官网直接去GitHub(https://github.com/Chuyu-Team/Dism-Multi-language/releases/,需要注意的是Dism++出于保护的原因没有选择开源,GitHub项目仅仅是为了发布二进制、通过Issue接受反馈以及进行i18n工作)下载即可。

第二个就是同样赫赫有名的硬盘管理软件DiskGenius,只不过它的戏份比较少,可能只是用来创建EFI启动分区。百度找到官网,下载最新免费版即可。(PowerShell其实就可以建立EFI启动分区,以后分区脚本再讲)

没错,就两个,没有了。有时候可能会用一下UltraISO,也不是必须的。现在的Windows不是十几年前的了,很多重要功能都内置了,不再需要借助第三方软件,以近乎hack的方式实现很多功能了。

下载、解压后,新建一个"tools"文件夹,把它们装进去备用。

2.3 常用软件准备

虚拟机中或者Server系统的服务器上,一般要安装一些常用软件,还有驱动之类。//Hyper-V第二代虚拟机不需要安装驱动和增强工具,操作系统会自动识别。EFI就是好。

在存储区新建一个"required"文件夹,把这些驱动和软件分门别类地放进去。

到这一步为止,准备工作就做完了。

[旧作整理补档] 手把手教你配置基于Windows Server的Hyper-V服务器(上)的评论 (共 条)

分享到微博请遵守国家法律