当你谷歌“什么是虚拟机”时,你会得到虚拟服务器、虚拟网络等结果。但如果你没有这方面的基本知识,试着去理解构成虚拟机的元素虚拟化架构可能有点混乱。在本文中,我们试图尽可能简单地解释如何检测构成虚拟化方案的主要资源之间的差异:机器、网络和虚拟服务器。
什么是虚拟服务器
多年来,网络服务器的使用在大公司中非常普遍。但是,成本非常高,服务器效率不高。通常,一台服务器专门用于单一功能,例如,一台用于托管数据库,另一台用于电子邮件客户端等。由于服务器的技术发展及其功能的增加,像以前那样将服务器用于单一功能是低效的。只用了法拉利15%的动力,却永远体验不到60%的马力,那岂不是太可惜了?
这个问题的解决方案称为虚拟化。想象一下虚拟化是如何工作的,可以想象将一块蛋糕切成几片与您的客人分享。完整的蛋糕就是你的服务器,但是当你分割它时,每个切片都变成了一个虚拟机,可以有自己的操作系统和应用程序用于不同的功能。通过这种方式,您现在拥有了一个 虚拟服务器 ,其容量已使用高达 70% 或 80%。
如何创建虚拟服务器?
要创建虚拟服务器 ,我们需要在物理服务器的硬件和软件之间建立一个抽象层(虚拟化软件)。这样做时,物理服务器将其转换为一个或多个虚拟机,并根据物理服务器的容量为每个虚拟机分配一定数量的硬件资源(内存、CPU、存储等)。通过这种方式,无需使用大量物理服务器单独运行电子邮件系统、数据库等,所有这些应用程序都可以在单个服务器中虚拟化。
虚拟化服务器的另一个优势是迁移虚拟机的灵活性。这是什么意思?您可以将一个或多个 VM 从一台服务器移动到另一台服务器,而不会遇到硬件问题,因为 VM 可以适应新的虚拟化服务器资源。在某些情况下,您甚至可以将虚拟机复制到 USB 驱动程序中以将它们移动到其他位置。最受欢迎的虚拟化软件包括 VMWare、Microsoft Virtual Server 或 Xen Server。要虚拟化服务器,除了多个网络连接和存储连接之外,通常还需要具有 16GB RAM 的多处理器系统。
什么是虚拟机?
虚拟机概念在许多情况下不断使用。在这种情况下,我们将讨论创建独立环境背后的虚拟化技术,以执行通常无法在单个服务器或 PC 客户端中同时运行的不同操作系统和应用程序。那么,什么是虚拟机?简单来说,是安装在模拟专用硬件的软件中的操作系统或应用程序环境。然后,用户不需要专门用于运行单个操作系统的服务器或计算机的资源。
例如,假设您可以在运行 Windows 的同时运行 Linux,而不会受到两者同时运行的影响或中断。一切似乎都好像您在主操作系统中打开一个新窗口以在另一个程序中工作。一个虚拟机需要一个叫做管理程序的东西。这种特殊的软件能够完全模拟PC客户端及其所有硬件资源,如内存、硬盘等。这种技术允许多个虚拟机共享资源。
为了让 VM 在同一物理主机上运行 Linux 和 Windows 服务器操作系统,管理程序必须模拟多个虚拟硬件平台。它们应该保持相互隔离,以允许每个 VM 独立使用它们而不会发生操作冲突。使用 VM 的最大优势之一是硬件的使用效率更高。但是,在虚拟化环境中工作需要更多的带宽、存储和内存消耗。由于每个虚拟机可以消耗不同数量的资源,因此需要 IT 专业人员的干预来平衡每个虚拟机的需求。
虚拟网络
虚拟网络的工作原理与我们在前面的示例中回顾的虚拟化概念基本相同。让我们考虑一个需要分离流量的客户。通常,这需要对创建新的物理网络进行大量投资。如今,借助虚拟化技术,您可以使用相同的物理硬件创建和配置虚拟网络。与VM一样,虚拟网络需要与其他虚拟网络隔离,即使它们共享相同的物理资源,例如电缆、路由器和交换机。总之,网络虚拟化提供的灵活性允许将不同的物理网络组合在一个虚拟网络中,或者将一个物理网络划分为多个虚拟网络。
虚拟网络如何工作?
虚拟网络的目的是为其托管的所有应用程序建立一个充分且有效的网络结构。虚拟网络必须灵活地根据服务需求通过软件改变其结构。虽然物理网络除了网络适配器外,还需要在其各个层中使用交换机、路由器、负载平衡器和防火墙,但在虚拟网络中,所有这些技术需求都由网络软件覆盖。
这称为解耦虚拟化,这意味着网络软件的功能可以从托管它的硬件中分离出来,以便在任何其他标准硬件中使用。虚拟网络有两种类型:虚拟专用网络和VLAN(虚拟局域网)。虚拟专用网络可以创建一个虚拟地址空间,对它发送的所有流量进行加密,使其成为私有的。另一方面,VLAN 允许设备在不建立路由的情况下相互通信。这是可能的,因为设备位于所谓的冲突域中,这使它们有可能多次接收相同的数据包。