WEBVTT

00:00.120 --> 00:03.090
导师：在使用虚拟化时安装和配置虚拟机时,

00:03.090 --> 00:08.250
了解存在的不同资源要求非常重要｡

00:08.250 --> 00:09.900
在资源需求方面,

00:09.900 --> 00:12.690
我们真正关注四个主要领域｡

00:12.690 --> 00:15.390
CPU及其虚拟化扩展､

00:15.390 --> 00:18.930
系统内存､ 存储和网络｡

00:18.930 --> 00:20.580
让我们来看看每一个｡ 

00:20.580 --> 00:24.150
首先, 我们有CPU及其虚拟化扩展｡ 

00:24.150 --> 00:25.980
现在, 当我们谈论CPU时,

00:25.980 --> 00:31.470
每个制造商（如Intel和AMD）都使用不同的虚拟化技术｡

00:31.470 --> 00:33.420
如果您使用的是基于英特尔的芯片,

00:33.420 --> 00:39.840
那么您将寻找VT-x, 这是其虚拟化技术, 代表VT｡

00:39.840 --> 00:41.910
如果您使用的是AMD处理器,

00:41.910 --> 00:48.180
他们将其虚拟化扩展称为AMD虚拟化扩展AMD-V｡

00:48.180 --> 00:52.080
现在, 无论您使用的是托管虚拟机管理程序还是裸金属虚拟机管理程序,

00:52.080 --> 00:57.990
如果您拥有支持虚拟化的CPU, 它们都将获得显着的性能提升｡

00:57.990 --> 01:05.490
现在, 有些虚拟化软件不需要CPU启用虚拟化支持就可以使用虚拟化｡

01:05.490 --> 01:09.360
但是, 如果您没有将虚拟化作为处理器扩展启用,

01:09.360 --> 01:12.090
它将显著降低您的性能｡

01:12.090 --> 01:17.550
而且, 在进行一些实际生产工作时, 您将拥有一个非常无法使用的虚拟机｡

01:17.550 --> 01:19.830
现在, 如果您的处理器支持虚拟化,

01:19.830 --> 01:21.750
并且大多数现代处理器都支持虚拟化,

01:21.750 --> 01:27.210
则必须进入BIOS或UEFI才能启用这些虚拟化扩展｡

01:27.210 --> 01:33.180
通常情况下, 如果您尝试在VirtualBox或VMware之类的设备中安装虚拟机,

01:33.180 --> 01:34.710
并且它没有检测到启用了虚拟化,

01:34.710 --> 01:36.060
它会给您一条错误消息,

01:36.060 --> 01:39.720
告诉您需要启用VT-x或AMD-V｡

01:39.720 --> 01:42.990
现在, 除了这两个虚拟化技术扩展之外,

01:42.990 --> 01:45.690
还有另一个称为SLAT的扩展,

01:45.690 --> 01:48.540
它代表第二级地址转换｡

01:48.540 --> 01:51.810
这是许多现代处理器中的一个处理器特性,

01:51.810 --> 01:55.020
当您在单个物理主机上运行多个虚拟机时,

01:55.020 --> 01:58.500
它将有助于提高虚拟内存的性能｡

01:58.500 --> 02:00.540
现在, 如果您使用的是Intel处理器,

02:00.540 --> 02:06.000
他们将SLAT称为EPT, 这是扩展的页表｡

02:06.000 --> 02:07.980
如果您使用的是AMD处理器,

02:07.980 --> 02:14.010
他们将SLAT称为RVI, 即快速虚拟化索引｡

02:14.010 --> 02:20.430
无论哪种方式, 如果您看到术语SLAT, EPT或RVI, 您实际上是在谈论以更快的方法访问虚拟内存的能力,

02:20.430 --> 02:25.590
并且能够从CPU中获得更好的性能｡

02:25.590 --> 02:27.180
这是你的处理器必须支持的东西,

02:27.180 --> 02:30.660
你才能使用这些扩展｡

02:30.660 --> 02:35.640
现在, 除了讨论处理器和CPU内部的虚拟化扩展之外,

02:35.640 --> 02:38.490
我们还想讨论CPU本身｡

02:38.490 --> 02:43.350
如果您在处理虚拟化时希望拥有一台性能非常高的机器,

02:43.350 --> 02:50.640
那么您将需要在给定系统上寻找支持多核超线程或多个物理处理器的处理器｡

02:50.640 --> 02:54.810
通过提供额外的内核, 这意味着您拥有额外的处理能力｡

02:54.810 --> 02:56.310
如果您有多个处理器,

02:56.310 --> 03:00.630
这意味着您在主板上安装了两个或更多物理处理器｡

03:00.630 --> 03:01.770
现在, 这是相当罕见的,

03:01.770 --> 03:04.470
除非你使用的是基于服务器的技术,

03:04.470 --> 03:06.960
但在家里的台式机或笔记本电脑中,

03:06.960 --> 03:12.810
你更有可能在处理器上找到多核或超线程来为你提供虚拟核心｡

03:12.810 --> 03:17.760
通过这种方式, 它使您能够为运行这些来宾操作系统的各个虚拟机分配处理器,

03:17.760 --> 03:23.520
并为它们提供更多专用资源, 从而提高其性能｡

03:23.520 --> 03:24.540
现在, 另一个侧面说明,

03:24.540 --> 03:25.650
当谈到CPU时,

03:25.650 --> 03:31.260
请记住, CPU实际上有三种不同的机制, 你会在市场上找到这些天｡

03:31.260 --> 03:34.320
第一个是老学校的x86｡ 

03:34.320 --> 03:36.720
现在, 当我们谈论基于x86的处理器时,

03:36.720 --> 03:39.180
我们实际上是在谈论32位处理器｡

03:39.180 --> 03:44.310
这意味着你的系统使用其他东西的能力会受到很大的限制｡

03:44.310 --> 03:45.143
因为当您处理32位操作系统时,

03:45.143 --> 03:47.130
您只能访问4GB的RAM,

03:47.130 --> 03:55.290
当您想要在单个物理服务器上托管多个虚拟机时, 这是一个非常小的数量｡

03:55.290 --> 03:58.860
相反, 最好运行一个x64基础处理器,

03:58.860 --> 04:01.560
它可以为您的给定系统提供高达16

04:01.560 --> 04:08.100
EB的RAM, 这取决于您的底层主机操作系统是否支持｡

04:08.100 --> 04:09.870
与4GB相比, 这16

04:09.870 --> 04:11.310
EB意味着如果我们使用x64基本处理器,

04:11.310 --> 04:17.580
我们有超过40亿倍的RAM可用｡

04:17.580 --> 04:20.070
现在, 如果您运行的是64位处理器,

04:20.070 --> 04:28.890
如果您愿意, 仍然可以在该物理服务器上运行32位程序和32位操作系统作为客户操作系统｡

04:28.890 --> 04:30.060
但真正的限制是,

04:30.060 --> 04:32.430
如果你有一个32位处理器,

04:32.430 --> 04:39.810
你不能运行64位应用程序或64位操作系统作为虚拟机在客户机操作系统｡

04:39.810 --> 04:44.520
因此, 最好还是使用基于x64的处理器｡

04:44.520 --> 04:47.587
现在你可能会遇到的第三种类型的处理器是所谓的ARM｡

04:47.587 --> 04:53.310
ARM是计算机处理器的精简指令集计算机架构｡

04:53.310 --> 04:56.760
现在, 你会在哪里遇到ARM处理器在这些天的领域？

04:56.760 --> 04:59.130
好吧, 如果你使用任何现代Mac,

04:59.130 --> 05:01.110
他们都使用ARM处理器｡

05:01.110 --> 05:03.210
这一点很重要, 因为如果你运行的是现代系统,

05:03.210 --> 05:07.050
比如MacBook Pro或运行M1或M2处理器的新iMac,

05:07.050 --> 05:11.610
这些都是基于ARM的｡

05:11.610 --> 05:13.230
而且因为它们是基于ARM的,

05:13.230 --> 05:18.330
所以它们不能本地托管不在ARM上运行的客户操作系统｡

05:18.330 --> 05:20.880
因为一定会有一个翻译发生｡ 

05:20.880 --> 05:23.820
例如, 如果您购买使用M1或M1 Pro处理器的Mac或MacBook

05:23.820 --> 05:28.530
Pro, 则是基于ARM的处理器｡

05:28.530 --> 05:30.660
如果您尝试将Windows 11或Windows

05:30.660 --> 05:33.240
10安装到来宾操作系统中, 并且这些是基于x86或x64的操作系统版本,

05:33.240 --> 05:40.410
则它们不会运行, 并且您会收到错误｡

05:40.410 --> 05:43.470
因此, 如果您在物理系统上使用基于ARM的处理器,

05:43.470 --> 05:47.910
您将在其上托管不同的虚拟机, 这将大大限制您对来宾操作系统的选择,

05:47.910 --> 05:53.340
因为并非所有操作系统都有基于ARM的版本｡

05:53.340 --> 05:54.510
在这次拍摄时, Windows

05:54.510 --> 05:56.400
11目前正在为基于ARM的处理器制作一个版本,

05:56.400 --> 06:00.990
这些处理器将在这些ARM芯片上工作｡

06:00.990 --> 06:02.580
还有基于ARM的Linux版本,

06:02.580 --> 06:07.170
您可以在MacBook或其他基于ARM的处理器上运行｡

06:07.170 --> 06:08.250
但我只是想向你们指出这一点,

06:08.250 --> 06:11.160
因为这是你们将要遇到的一个限制｡

06:11.160 --> 06:15.240
现在, 我们需要讨论的第二个资源领域是系统内存｡

06:15.240 --> 06:16.650
当我们谈论系统内存时,

06:16.650 --> 06:25.200
我们实际上是在谈论安装在充当主机操作系统的物理服务器或工作站中的物理内存量｡

06:25.200 --> 06:30.960
例如, 在托管虚拟机时, 如果我有8GB或16GB或32GB的内存总是更好,

06:30.960 --> 06:33.630
因为如果我的笔记本电脑上只有8GB的RAM,

06:33.630 --> 06:49.140
例如, 我想运行四个不同的客户操作系统, 那么, 如果每个操作系统需要2GB的RAM, 我已经用完了所有的物理内存, 这没有给我的底层主机操作系统留下任何内存｡

06:49.140 --> 06:53.160
从这个角度来看, 如果你运行的是像MacOS这样的东西,

06:53.160 --> 06:55.980
这大约需要8GB的内存来启动Mac,

06:55.980 --> 06:59.130
并能够做它需要做的事情｡

06:59.130 --> 07:00.600
如果您使用的是Windows机器,

07:00.600 --> 07:06.720
通常需要大约4GB的内存才能将Windows作为主机操作系统充分运行｡

07:06.720 --> 07:10.290
因此, 如果您有8 GB内存, 并且您希望在Windows

07:10.290 --> 07:13.110
10主机内运行Windows 11作为客户机,

07:13.110 --> 07:17.160
则需要4 + 4或全部8 GB内存｡

07:17.160 --> 07:19.410
所以, 当你谈论你的资源时,

07:19.410 --> 07:24.090
你真的想看看你可以为这些客户操作系统贡献多少内存,

07:24.090 --> 07:25.860
你拥有的物理内存越多,

07:25.860 --> 07:28.230
你就越能做到这一点｡

07:28.230 --> 07:31.440
资源的下一个考虑因素是我们的存储｡ 

07:31.440 --> 07:35.850
我们正在讨论将所有这些虚拟机映像存储在何处｡

07:35.850 --> 07:42.870
请记住, 我们使用客户操作系统创建的所有这些虚拟机都将占用物理服务器上的磁盘空间｡

07:42.870 --> 07:44.430
因此, 如果你有一台只有256

07:44.430 --> 07:48.780
GB空间的笔记本电脑, 并且你想在该系统上安装Windows

07:48.780 --> 07:54.480
10客户操作系统, 这可能需要大约50 GB的空间｡

07:54.480 --> 07:59.610
因此, 您仅在该虚拟机映像上使用了总硬盘驱动器的五分之一｡

07:59.610 --> 08:01.860
现在, 如果你有三个或四个不同的副本,

08:01.860 --> 08:03.600
你现在已经占用了三个或四个乘以50,

08:03.600 --> 08:05.130
现在是150到200千兆字节,

08:05.130 --> 08:09.480
这几乎是你的整个磁盘驱动器｡

08:09.480 --> 08:13.080
因此, 大容量存储成为你必须意识到的事情｡

08:13.080 --> 08:15.390
通常情况下, 当您进行Windows安装时,

08:15.390 --> 08:17.130
准系统Windows安装将占用大约20

08:17.130 --> 08:19.440
GB的空间, 但您希望使用大约40或50

08:19.440 --> 08:28.230
GB的空间, 因为当您想要在那里存储文件, 安装应用程序等时, 您需要有额外的空间｡

08:28.230 --> 08:30.000
如果你使用的是Linux,

08:30.000 --> 08:31.470
一般来说, 它们要轻量级得多,

08:31.470 --> 08:33.480
你会发现大多数发行版的安装空间大约在4到8

08:33.480 --> 08:38.460
GB之间, 这比Windows要少得多｡

08:38.460 --> 08:41.640
如果您将Mac环境作为来宾操作系统处理,

08:41.640 --> 08:43.140
这通常会占用大约20到40

08:43.140 --> 08:45.840
GB的空间｡

08:45.840 --> 08:47.070
所以请记住这一点,

08:47.070 --> 08:53.760
如果您的物理设备上的磁盘空间非常有限, 您可能需要升级并增加存储量｡

08:53.760 --> 08:58.320
这样, 您就可以在同一台物理服务器上托管更多的客户机操作系统｡

08:58.320 --> 09:01.380
我们需要考虑的最后一个领域是网络｡ 

09:01.380 --> 09:09.690
这是因为在主机操作系统上运行的虚拟机管理程序将为该系统上托管的所有其他虚拟机创建一个虚拟网络环境,

09:09.690 --> 09:12.480
以便进行通信｡

09:12.480 --> 09:14.490
但是, 如果他们都想上网或到你的局域网下载文件,

09:14.490 --> 09:21.810
他们都是通过你的物理设备上的同一个网络接口卡来完成的｡

09:21.810 --> 09:24.000
因此, 如果您使用的是每秒仅以100兆比特运行的旧网卡,

09:24.000 --> 09:32.820
并且您在该服务器上运行五台虚拟机, 则每台虚拟机实际上每秒仅获得20兆比特｡

09:32.820 --> 09:34.110
在这种情况下,

09:34.110 --> 09:38.280
您肯定希望升级托管这些来宾的物理服务器上的网络接口卡,

09:38.280 --> 09:45.870
并放入千兆网卡, 如果您托管多个虚拟机, 甚至是10千兆网卡｡

09:45.870 --> 09:47.760
这将允许您拥有额外的吞吐量和带宽,

09:47.760 --> 09:53.280
以便能够托管所有这些虚拟机, 而不会使网络减慢速度｡

09:53.280 --> 09:56.430
除此之外, 正如您将在稍后的网络研究中了解到的那样,

09:56.430 --> 10:01.980
您还可以放入多个网络接口卡, 并将它们放置到所谓的分组配置中｡

10:01.980 --> 10:06.600
这允许多个卡协同工作, 为您提供更高的速度｡

10:06.600 --> 10:10.710
因此, 如果您有两个, 一个千兆网卡, 并且它们在一个团队中工作,

10:10.710 --> 10:12.540
您现在有两个千兆的吞吐量,

10:12.540 --> 10:15.330
您可以使用它们连接到网络｡

10:15.330 --> 10:18.330
通常情况下, 如果您在公司或企业环境中托管大量虚拟机的服务器上工作,

10:18.330 --> 10:28.680
您会看到它们将拥有多达四个网络接口卡, 所有这些都在一个团队中工作, 因此它们可以获得高达每秒4千兆比特甚至每秒40千兆比特的速度｡

10:28.680 --> 10:33.240
如果他们在那个特定的服务器上使用每秒10吉比特的网络接口卡｡

10:33.240 --> 10:36.090
因此, 请记住, 当涉及到资源需求时,

10:36.090 --> 10:38.850
重要的是要考虑CPU和处理器及其功能,

10:38.850 --> 10:44.850
以及您有多少内存, 有多少存储和有多少网络｡

10:44.850 --> 10:47.430
这四个方面都是你要考虑的｡ 

10:47.430 --> 10:59.373
当您决定能够在给定服务器或工作站上托管多少虚拟机以及如何提高在特定虚拟机管理程序上的虚拟机内运行的来宾操作系统的性能时｡
