一、虚拟机
虚拟机(Virtual Machine,VM)是一种软件实现的计算机系统,它在物理计算机上模拟了一个完整的计算机硬件环境,包括处理器、内存、存储设备和网络接口等。通过虚拟机,用户可以在单个物理计算机上同时运行多个独立的操作系统和应用程序,每个虚拟机相当于一个独立的计算机系统。
虚拟机的工作原理是通过虚拟化技术来实现的。虚拟化软件在物理计算机上创建一个或多个虚拟机实例,并将它们隔离开来,使它们能够独立地运行不同的操作系统和应用程序。虚拟机软件会在虚拟机和物理计算机之间进行资源的分配和管理,以确保每个虚拟机都能够获得所需的计算资源。
虚拟机可以用于各种用途,包括软件开发和测试、服务器托管、应用程序部署和运行旧版软件等。它们提供了更高的灵活性、可扩展性和资源利用率,同时也能够实现更好的资源隔离和安全性。常见的虚拟机软件包括 VMware、VirtualBox、Hyper-V 等。
二、ubuntu下载地址
官方网站:https://releases.ubuntu.com
中科大源:http://mirrors.ustc.edu.cn/ubuntu-releases
阿里云开源镜像站:http://mirrors.aliyun.com/ubuntu-releases
兰州大学开源镜像站:http://mirror.lzu.edu.cn/ubuntu-releases
清华大学开源网站镜像站:https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases
推荐用国内镜像站,下载速度更快
三、安装流程
1、选择自定义高级
2、虚拟机硬件兼容性
3、选择从镜像站下载的iso
4、处理器设置
1)通过任务管理器查看CPU数据
以我的电脑为例,可以看到有24个内核,32个逻辑处理器。
2)配置原则
-
处理器数量:
如果打算同时运行多个虚拟机或者需要高性能,你可以考虑将虚拟机的处理器数量设置为主机的逻辑处理器数量(即 32 个),但要确保不要超过主机的物理核心数量(即 24 个),因为这可能会导致过度分配和性能下降。 -
每个处理器的内核数量:
- 对于每个处理器的内核数量,一般来说,设置为 1 或者 2 是比较常见的选择。这取决于虚拟机的工作负载和性能需求。
- 如果你的虚拟机主要用于轻量级任务或者测试目的,设置每个处理器的内核数量为 1 是足够的。
- 如果你的虚拟机需要处理较重的工作负载或者需要更高的性能,可以考虑将每个处理器的内核数量设置为 2,以提高虚拟机的处理能力。
常见的设置是将虚拟机的处理器数量设置为主机的逻辑处理器数量,并将每个处理器的内核数量设置为 1 或者 2。
最佳的设置取决于你的具体需求和工作负载,你可能需要进行一些实验和性能测试来找到最适合你的配置。
3)原理
处理器(Processor)通常指的是中央处理器(Central Processing Unit,CPU),它是计算机中负责执行指令和处理数据的主要组件之一。处理器可以包含一个或多个计算核心(Core),每个核心都能够执行独立的指令流,因此也被称为计算单元。内核数量指的是处理器中包含的计算核心的数量。
举例来说,一颗处理器可能包含有多个核心,比如双核处理器、四核处理器、六核处理器等。每个核心都能够独立执行指令,因此多核处理器可以同时处理多个任务,提高计算机的性能和效率。
内核数量的增加通常可以提高处理器的并行处理能力,因此在多线程应用程序和多任务环境下,多核处理器能够更好地发挥其性能优势。
在某种程度上可以这样理解,但这种理解还是有些简化。让我更详细地解释一下。
在计算机系统中,一个进程可以包含多个线程。每个线程都是一个执行单元,负责执行特定的任务。现代操作系统通过时间分片技术使得多个线程能够在单个CPU上交替执行,从而实现并发性。
当一个 CPU 包含多个核心时,每个核心都能够执行独立的指令序列,因此可以理解为每个核心能够处理一个线程。因此,如果一个 CPU 包含多个核心,它就可以同时执行多个线程,从而提高了系统的并发性和性能。
操作系统的线程调度器会根据系统的负载和调度策略来决定哪些线程在哪些核心上执行。
5、内存分配
分配给虚拟机的内存大小取决于在虚拟机中运行的操作系统、应用程序以及预期的工作负载。
-
基本用途的虚拟机:如果只是在虚拟机中运行一些基本的操作系统和应用程序,比如一些轻量级的 Linux 发行版或者 Windows 虚拟机,可以考虑分配 2GB 到 4GB 的内存给每个虚拟机。
-
多任务虚拟机:如果打算在虚拟机中运行多个虚拟机实例,或者在单个虚拟机中运行多个应用程序或者进行多任务操作,可能需要分配更多的内存。在这种情况下,你可以考虑分配 4GB 到 8GB 的内存给每个虚拟机。
-
资源密集型应用程序:如果打算在虚拟机中运行一些资源密集型的应用程序,比如数据库服务器、开发环境等,需要分配更多的内存。在这种情况下,可以考虑分配 8GB 到 12GB 甚至更多的内存给每个虚拟机。
-
留出主机内存:需要留出至少 4GB 的内存给物理主机,以便确保主机的稳定性和响应速度。
6、网络类型
虚拟机可以使用不同的网络模式来连接到主机或外部网络。
有桥接网络、网络地址转换 (NAT) 和主机模式三种网络模式。
-
桥接网络(Bridge Network):
- 桥接网络模式将虚拟机连接到物理网络中,并且虚拟机会像物理机一样被路由器分配一个独立的IP地址。
- 这使得虚拟机可以直接与物理网络中的其他设备通信,就像它们是通过网络交换机连接的一样。
- 桥接网络模式使得虚拟机可以在网络上表现得像是独立的物理设备。
-
网络地址转换 (NAT):
- 在NAT模式下,虚拟机与物理网络相连,但是虚拟机的IP地址是由虚拟机软件(如VMware或VirtualBox)的网络服务管理的。
- 外部网络上的数据包会通过主机的IP地址和端口号被转换成虚拟机内部的IP地址和端口号。
- 这样,虚拟机可以访问外部网络,但外部网络无法直接访问虚拟机,除非进行端口转发或配置特定的规则。
-
主机模式网络(Host-Only Network):
- 在主机模式网络中,虚拟机与主机机器之间形成一个独立的网络,而不连接到外部网络。
- 虚拟机可以与主机进行通信,但无法与外部网络直接通信。
- 这种模式通常用于搭建测试环境或者创建局域网内部的虚拟机互联。
桥接网络模式使虚拟机与外部网络连接并可直接通信,NAT模式允许虚拟机通过主机与外部网络通信,而主机模式网络则是虚拟机与主机形成一个独立的网络。
7、选择I/O控制器类型
1)SCSI控制器
SCSI(Small Computer System Interface)是一种用于连接计算机系统与外部设备(如硬盘驱动器、光驱、磁带驱动器等)的标准接口。SCSI 接口通常用于连接高性能存储设备,提供了较高的数据传输速率和更多的可扩展性,适用于需要高性能存储和大容量存储的场景。
SCSI 控制器是计算机系统中负责管理和控制 SCSI 设备的硬件组件。它位于计算机系统的主板上,负责与 SCSI 设备进行通信,并控制数据传输和设备操作。
在虚拟化环境中,虚拟机通常需要连接到虚拟化软件模拟的 SCSI 控制器以访问虚拟化环境中的存储设备。这样可以提供较高的存储性能和更多的存储选项,以满足虚拟机和应用程序的需求。
2)可选类型
-
BusLogic:BusLogic 是一种传统的虚拟机 SCSI 控制器,用于连接虚拟机中的 SCSI 设备(如硬盘驱动器、光驱等)。它提供了可靠的性能和广泛的兼容性,适用于许多虚拟化环境。
-
LSI Logic:LSI Logic 是一种高性能的虚拟机 SCSI 控制器,通常用于连接虚拟机中的 SCSI 设备。它提供了更高的性能和更广泛的兼容性,适用于需要较高性能存储的虚拟机和应用程序。
-
LSI Logic SAS(S):LSI Logic SAS(Serial Attached SCSI)是一种串行连接的 SCSI 控制器,提供了更高的性能和更高的数据传输速率。它通常用于连接高性能存储设备,适用于需要高性能存储的虚拟机和工作负载。
-
SCSI(P):SCSI(Parallel)是一种传统的并行 SCSI 控制器,通常用于连接低性能和低成本的 SCSI 设备。由于并行 SCSI 性能较低且逐渐被淘汰,所以现在很少使用。
8、磁盘类型选择
2)可选类型
-
IDE (I):IDE(Integrated Drive Electronics)是一种传统的硬盘控制器,用于连接虚拟机中的硬盘设备。IDE 控制器通常用于连接较旧的硬盘设备,提供了基本的硬盘控制功能。
-
SCSI (S):SCSI(Small Computer System Interface)是一种高性能的硬盘控制器,通常用于连接虚拟机中的存储设备(如硬盘、光驱等)。SCSI 控制器提供了更高的性能和更多的功能选项,适用于需要高性能存储的虚拟机和工作负载。
-
SATA (A):SATA(Serial Advanced Technology Attachment)是一种串行连接的硬盘控制器,用于连接虚拟机中的硬盘设备。SATA 控制器提供了较高的性能和较低的成本,适用于大多数虚拟机和应用程序。
-
NVMe (V):NVMe(Non-Volatile Memory Express)是一种用于连接固态硬盘(SSD)的高性能硬盘控制器。NVMe 控制器提供了低延迟和高吞吐量的存储性能,适用于需要极高性能存储的虚拟机和工作负载。
9、选择磁盘
后面就一直下一步