导师：在使用虚拟化时安装和配置虚拟机时,
了解存在的不同资源要求非常重要｡
在资源需求方面,
我们真正关注四个主要领域｡
CPU及其虚拟化扩展､
系统内存､ 存储和网络｡
让我们来看看每一个｡
首先, 我们有CPU及其虚拟化扩展｡
现在, 当我们谈论CPU时,
每个制造商（如Intel和AMD）都使用不同的虚拟化技术｡
如果您使用的是基于英特尔的芯片,
那么您将寻找VT-x, 这是其虚拟化技术, 代表VT｡
如果您使用的是AMD处理器,
他们将其虚拟化扩展称为AMD虚拟化扩展AMD-V｡
现在, 无论您使用的是托管虚拟机管理程序还是裸金属虚拟机管理程序,
如果您拥有支持虚拟化的CPU, 它们都将获得显着的性能提升｡
现在, 有些虚拟化软件不需要CPU启用虚拟化支持就可以使用虚拟化｡
但是, 如果您没有将虚拟化作为处理器扩展启用,
它将显著降低您的性能｡
而且, 在进行一些实际生产工作时, 您将拥有一个非常无法使用的虚拟机｡
现在, 如果您的处理器支持虚拟化,
并且大多数现代处理器都支持虚拟化,
则必须进入BIOS或UEFI才能启用这些虚拟化扩展｡
通常情况下, 如果您尝试在VirtualBox或VMware之类的设备中安装虚拟机,
并且它没有检测到启用了虚拟化,
它会给您一条错误消息,
告诉您需要启用VT-x或AMD-V｡
现在, 除了这两个虚拟化技术扩展之外,
还有另一个称为SLAT的扩展,
它代表第二级地址转换｡
这是许多现代处理器中的一个处理器特性,
当您在单个物理主机上运行多个虚拟机时,
它将有助于提高虚拟内存的性能｡
现在, 如果您使用的是Intel处理器,
他们将SLAT称为EPT, 这是扩展的页表｡
如果您使用的是AMD处理器,
他们将SLAT称为RVI, 即快速虚拟化索引｡
无论哪种方式, 如果您看到术语SLAT, EPT或RVI, 您实际上是在谈论以更快的方法访问虚拟内存的能力,
并且能够从CPU中获得更好的性能｡
这是你的处理器必须支持的东西,
你才能使用这些扩展｡
现在, 除了讨论处理器和CPU内部的虚拟化扩展之外,
我们还想讨论CPU本身｡
如果您在处理虚拟化时希望拥有一台性能非常高的机器,
那么您将需要在给定系统上寻找支持多核超线程或多个物理处理器的处理器｡
通过提供额外的内核, 这意味着您拥有额外的处理能力｡
如果您有多个处理器,
这意味着您在主板上安装了两个或更多物理处理器｡
现在, 这是相当罕见的,
除非你使用的是基于服务器的技术,
但在家里的台式机或笔记本电脑中,
你更有可能在处理器上找到多核或超线程来为你提供虚拟核心｡
通过这种方式, 它使您能够为运行这些来宾操作系统的各个虚拟机分配处理器,
并为它们提供更多专用资源, 从而提高其性能｡
现在, 另一个侧面说明,
当谈到CPU时,
请记住, CPU实际上有三种不同的机制, 你会在市场上找到这些天｡
第一个是老学校的x86｡
现在, 当我们谈论基于x86的处理器时,
我们实际上是在谈论32位处理器｡
这意味着你的系统使用其他东西的能力会受到很大的限制｡
因为当您处理32位操作系统时,
您只能访问4GB的RAM,
当您想要在单个物理服务器上托管多个虚拟机时, 这是一个非常小的数量｡
相反, 最好运行一个x64基础处理器,
它可以为您的给定系统提供高达16
EB的RAM, 这取决于您的底层主机操作系统是否支持｡
与4GB相比, 这16
EB意味着如果我们使用x64基本处理器,
我们有超过40亿倍的RAM可用｡
现在, 如果您运行的是64位处理器,
如果您愿意, 仍然可以在该物理服务器上运行32位程序和32位操作系统作为客户操作系统｡
但真正的限制是,
如果你有一个32位处理器,
你不能运行64位应用程序或64位操作系统作为虚拟机在客户机操作系统｡
因此, 最好还是使用基于x64的处理器｡
现在你可能会遇到的第三种类型的处理器是所谓的ARM｡
ARM是计算机处理器的精简指令集计算机架构｡
现在, 你会在哪里遇到ARM处理器在这些天的领域？
好吧, 如果你使用任何现代Mac,
他们都使用ARM处理器｡
这一点很重要, 因为如果你运行的是现代系统,
比如MacBook Pro或运行M1或M2处理器的新iMac,
这些都是基于ARM的｡
而且因为它们是基于ARM的,
所以它们不能本地托管不在ARM上运行的客户操作系统｡
因为一定会有一个翻译发生｡
例如, 如果您购买使用M1或M1 Pro处理器的Mac或MacBook
Pro, 则是基于ARM的处理器｡
如果您尝试将Windows 11或Windows
10安装到来宾操作系统中, 并且这些是基于x86或x64的操作系统版本,
则它们不会运行, 并且您会收到错误｡
因此, 如果您在物理系统上使用基于ARM的处理器,
您将在其上托管不同的虚拟机, 这将大大限制您对来宾操作系统的选择,
因为并非所有操作系统都有基于ARM的版本｡
在这次拍摄时, Windows
11目前正在为基于ARM的处理器制作一个版本,
这些处理器将在这些ARM芯片上工作｡
还有基于ARM的Linux版本,
您可以在MacBook或其他基于ARM的处理器上运行｡
但我只是想向你们指出这一点,
因为这是你们将要遇到的一个限制｡
现在, 我们需要讨论的第二个资源领域是系统内存｡
当我们谈论系统内存时,
我们实际上是在谈论安装在充当主机操作系统的物理服务器或工作站中的物理内存量｡
例如, 在托管虚拟机时, 如果我有8GB或16GB或32GB的内存总是更好,
因为如果我的笔记本电脑上只有8GB的RAM,
例如, 我想运行四个不同的客户操作系统, 那么, 如果每个操作系统需要2GB的RAM, 我已经用完了所有的物理内存, 这没有给我的底层主机操作系统留下任何内存｡
从这个角度来看, 如果你运行的是像MacOS这样的东西,
这大约需要8GB的内存来启动Mac,
并能够做它需要做的事情｡
如果您使用的是Windows机器,
通常需要大约4GB的内存才能将Windows作为主机操作系统充分运行｡
因此, 如果您有8 GB内存, 并且您希望在Windows
10主机内运行Windows 11作为客户机,
则需要4 + 4或全部8 GB内存｡
所以, 当你谈论你的资源时,
你真的想看看你可以为这些客户操作系统贡献多少内存,
你拥有的物理内存越多,
你就越能做到这一点｡
资源的下一个考虑因素是我们的存储｡
我们正在讨论将所有这些虚拟机映像存储在何处｡
请记住, 我们使用客户操作系统创建的所有这些虚拟机都将占用物理服务器上的磁盘空间｡
因此, 如果你有一台只有256
GB空间的笔记本电脑, 并且你想在该系统上安装Windows
10客户操作系统, 这可能需要大约50 GB的空间｡
因此, 您仅在该虚拟机映像上使用了总硬盘驱动器的五分之一｡
现在, 如果你有三个或四个不同的副本,
你现在已经占用了三个或四个乘以50,
现在是150到200千兆字节,
这几乎是你的整个磁盘驱动器｡
因此, 大容量存储成为你必须意识到的事情｡
通常情况下, 当您进行Windows安装时,
准系统Windows安装将占用大约20
GB的空间, 但您希望使用大约40或50
GB的空间, 因为当您想要在那里存储文件, 安装应用程序等时, 您需要有额外的空间｡
如果你使用的是Linux,
一般来说, 它们要轻量级得多,
你会发现大多数发行版的安装空间大约在4到8
GB之间, 这比Windows要少得多｡
如果您将Mac环境作为来宾操作系统处理,
这通常会占用大约20到40
GB的空间｡
所以请记住这一点,
如果您的物理设备上的磁盘空间非常有限, 您可能需要升级并增加存储量｡
这样, 您就可以在同一台物理服务器上托管更多的客户机操作系统｡
我们需要考虑的最后一个领域是网络｡
这是因为在主机操作系统上运行的虚拟机管理程序将为该系统上托管的所有其他虚拟机创建一个虚拟网络环境,
以便进行通信｡
但是, 如果他们都想上网或到你的局域网下载文件,
他们都是通过你的物理设备上的同一个网络接口卡来完成的｡
因此, 如果您使用的是每秒仅以100兆比特运行的旧网卡,
并且您在该服务器上运行五台虚拟机, 则每台虚拟机实际上每秒仅获得20兆比特｡
在这种情况下,
您肯定希望升级托管这些来宾的物理服务器上的网络接口卡,
并放入千兆网卡, 如果您托管多个虚拟机, 甚至是10千兆网卡｡
这将允许您拥有额外的吞吐量和带宽,
以便能够托管所有这些虚拟机, 而不会使网络减慢速度｡
除此之外, 正如您将在稍后的网络研究中了解到的那样,
您还可以放入多个网络接口卡, 并将它们放置到所谓的分组配置中｡
这允许多个卡协同工作, 为您提供更高的速度｡
因此, 如果您有两个, 一个千兆网卡, 并且它们在一个团队中工作,
您现在有两个千兆的吞吐量,
您可以使用它们连接到网络｡
通常情况下, 如果您在公司或企业环境中托管大量虚拟机的服务器上工作,
您会看到它们将拥有多达四个网络接口卡, 所有这些都在一个团队中工作, 因此它们可以获得高达每秒4千兆比特甚至每秒40千兆比特的速度｡
如果他们在那个特定的服务器上使用每秒10吉比特的网络接口卡｡
因此, 请记住, 当涉及到资源需求时,
重要的是要考虑CPU和处理器及其功能,
以及您有多少内存, 有多少存储和有多少网络｡
这四个方面都是你要考虑的｡
当您决定能够在给定服务器或工作站上托管多少虚拟机以及如何提高在特定虚拟机管理程序上的虚拟机内运行的来宾操作系统的性能时｡