我对使用 ISCSI 和多路径设置 SAN 有点困惑。我们正在将网络升级到 10Gbit,因此有 2 个 10Gbit 交换机配置了 MLAG 以用于正常以太网流量。LAG 组是在适当的 NIC 上创建的,因此仅适用于以太网。
现在有一个带有 2 个控制器的 SAN。每个控制器装有 4 个 10Gbit NIC。因此,我最初的计划是使用每个控制器上的所有 4 个 NIC 来最大化吞吐量,因为有多个服务器连接到 SAN。
连接的服务器有 2 个专用的 10Gbit NIC 用于 SAN 流量。每个 NIC 连接到其中一个交换机。这些接口上没有 LAG,它们在 SAN 网络中配置了静态地址。
- SAN 的两个控制器位于同一子网中可以吗?这样就可以有一个主 SAN 网络。还是我需要为每个控制器设置一个独立的段?
- 那么每个 SAN 控制器的 4 个 NIC 怎么办?我是否只需在每个控制器上的 LACP 组中捆绑 2 个 NIC?或者根本不需要 LAG?我有点困惑,合理的配置是什么。将每个控制器的 2 个 NIC 连接到一个交换机?我是否应该在 SAN 网络中为每个 NIC 分配一个专用地址,并使用总共 8 个地址进行多路径处理?
好吧,正如大家所见,我并不是一个存储专家……:-)
所以我得到了问题 1 的更新。假设我将使用每个 SAN 控制器的 2 个 NIC(暂时不全部使用 4 个,以保持简单),那么使用两个不同的子网是有意义的。这似乎增加了有效使用 MPIO 的机会。
如果所有 NIC 都在同一个子网上,则无法保证使用 MPIO。
不过,我仍在调查答案 2。我发现多篇文章描述了如上所述的设置,但仅使用每个 SAN 控制器的 2 个 NIC。我对此进行了测试,但与所有文章相反的是,我没有得到 1 个 ISCSI 目标,而是得到了两个(每个控制器一个)。当使用两个目标配置 MPIO 时,我的吞吐量从 1800MB/s 下降到 30MB/s 左右,...
交换机:2 个 Mellanox SX1012
存储:QSAN XS5200,每个控制器配备 4 个 SFP+ 10Gbit 适配器
服务器:Supermicro 2028TP-HC1R-SIOM,4 x SFP+ Intel X710
当前配置如下:
答案1
由于您有 iSCSI SAN,我建议您使用 MPIO 拆分 iSCSI 网络并使用不同的子网。LACP 执行与 MPIO 相同的故障转移,但由于不支持每个会话的多个连接 (MCS),因此会带来性能损失,这意味着在相同配置下它不会提高性能。https://www.starwindsoftware.com/blog/lacp-vs-mpio-on-windows-platform-which-one-is-better-in-terms-of-redundancy-and-speed-in-this-case-2
调整配置 NIC 和交换机的巨型帧值 9k 的性能。
答案2
在这种情况下,您应该遵循存储供应商的指导方针。
我不知道谁会消耗你的SAN资源,但一般的做法应该是:
- 使用 LACP 的常规服务器应该具有由到两个交换机的链接组成的 LACP 绑定。
- 您的 MLAG 应该具有某种跨交换机对等链接。
- 您的 iSCSI 应通过 MPIO 传送,使用一个或多个端口从一个控制器到特定 VLAN 上的一个交换机,并使用一个或多个端口从另一个控制器到不同 VLAN 上的另一个交换机。
- 这些 iSCSI VLAN 对于每个交换机来说应该是唯一的,并且不参与 MLAG。
- 如果您的服务器将直接使用 iSCSI,请采用 MPIO 方法...从服务器到每个交换机有两个 VLAN 和一个端口。如果每个服务器只有两个端口,这可能会使正常数据变得复杂。