为服务器上的每个虚拟机配备一张网卡是最佳做法吗?

为服务器上的每个虚拟机配备一张网卡是最佳做法吗?

我正在考虑购买一台新服务器来为客户托管 3 台虚拟机。我读到过虚拟机应该有自己的网卡。在这种情况下,最佳做法是配备 4 张网卡,一张用于 Hyper-V 服务器,3 张用于虚拟机。

答案1

简短的回答:不是,因为通常您可以在单个物理服务器上运行数十台虚拟机,但无法在其中安装足够的网络端口。

较长的回答:不,您通常在软件中做一些事情(例如网络桥接、NATting、软件定义网络设备、vSwitch、Vyatta 等),如果您真的需要“类似真正的以太网端口的东西”,您将会研究 I/O 虚拟化技术(这意味着兼容的主板、固件、以太网卡)。

答案2

不是。每个虚拟机都应该有自己的虚拟网卡 (vNIC),连接到一个或多个虚拟交换机 (vSwitch),而虚拟交换机又绑定到一个或多个物理网卡 (pNIC)。您可以在服务器中拥有少至 1 个物理网卡,并在主机和虚拟机之间共享,尽管这不是一个好的做法。

您通常会在虚拟机管理程序中创建一个与其中一个 pNIC 绑定的虚拟交换机,然后通过 vNIC 将 VM 连接到 vSwitch,进而将 VM 连接到物理网络。

当然,这是一个过于简单的解释,虚拟网络可能会变得相当复杂(VLAN、VST、EST 等),但希望您能了解要点。

答案3

这不会有什么坏处,但我不会说这是最佳实践。虚拟化背后的整个想法就是共享资源。通常,您使用的虚拟机管理程序将被构建为以高效的方式处理虚拟客户机之间的物理资源共享。

答案4

为每个虚拟机配备一张卡可能没有必要,但我明白为什么建议这样做,以便让虚拟机充分利用网络。在大多数情况下,这可能有点过头了,如果您需要在每个虚拟机上充分利用网络,那么可能值得考虑虚拟机可能造成的其他瓶颈,共享 I/O 总是会带来一些限制。

相关内容