我正在考虑在家庭网络上设置基于软件的 iSCSI SAN。我之所以考虑这个,是因为我有两台 VM 服务器在运行,并且想要一个通用的、易于管理的存储池,而不是单独管理每台 VM 服务器。
我想知道的是……在组成 iSCSI LAN 的每台服务器中使用多个 NIC 是否真的有好处。我打算在 iSCSI 服务器中安装四个千兆位 PCI* 适配器,在每个 VM 服务器中安装两个。(为了回答这个问题,我们假设磁盘访问不会成为限制瓶颈。)所有八个端口都将连接到同一个非托管千兆位(消费级)交换机,该交换机仅具有 iSCSI 流量。(假设有一个单独的 LAN 用于常规流量。)
这样设置硬件有意义吗?我是否真的能看到可用速度的合理提升?
*我说 PCI 是因为存储服务器只有可用的 PCI 插槽。
(编辑 - 在这种情况下,我并不关心冗余,只是想从硬件中获得最高的带宽)
答案1
如果我对您的情况理解正确,我假设您将在您的虚拟化环境中组合多个物理网卡并将其呈现给您的虚拟机?如果是这样的话,我认为您在通过传入连接到虚拟机时会遇到获得更高性能的问题。
您会看到,如果虚拟环境支持,出站连接可以由虚拟环境进行负载平衡。但是,入站连接负载平衡是交换机的属性,虚拟环境在物理上不可能影响它。我可以介绍 ARP 表和 IP 地址的基础知识,但我假设您已经知道这些。除非交换机支持 Etherchannel 之类的功能,否则进入虚拟机的流量只能定向到交换机上的一个物理端口。编辑:让我澄清一下。来自虚拟机并发往一个目标的流量只能与非托管交换机的单端口速度一样快。如果多台 PC(每台都在自己的端口上)访问虚拟机,并且虚拟机响应多个请求,那么它可以同时与多个端点一起承载多个端口速度的流量流。从这个意义上讲,如果您经常同时与虚拟机建立多个连接,而这些连接往往会限制交换机的端口速度,那么您会看到性能提升。我希望这是有道理的。结束编辑。
第二次编辑由于您想提高 iSCSI 目标的传入流量吞吐量,因此 NIC 组合实际上无法帮助您。瓶颈仍然是交换机无法聚合端口,因此 iSCSI 目标的 IP 地址将始终限制在一个交换机端口,因此所有传入流量都将限制在交换机的端口速度。我能想到的最佳解决方案是在 iSCSI 目标中放置两个 NIC,并将一个具有自己 IP 地址的 NIC 专用于一个 VM 的 LUN...如果您使用的任何 iSCSI 服务器都可以做到这一点。在您当前的设置中,您从虚拟 NIC 组合中获得的唯一好处是将多个流量流发送到不同的端口,但您永远无法在该交换机上的任何主机上接收超过端口速度的流量。结束第二次编辑
我首先想到的是,除非您特别想获得这方面的经验,否则我认为这种冗余/团队设置对于家庭环境来说有点过度了。但是,没有什么能够告诉您是否需要这种性能,例如进行一些网络分析和绘制带宽使用情况图表。同样,除非是为了体验或托管 pr0n,否则对于家庭设置来说似乎有点过度了。=)
答案2
您将获得更大的吞吐能力,考虑到所有其他您永远不会使用或注意到的可能变量。但如果您只是想玩和学习,是的,iscsi 对于循环多路径来说非常简单。