我应该绑定 iSCSI 网络连接吗?

我应该绑定 iSCSI 网络连接吗?

我正在设置一些 iSCSI 存储(Lenovo)以及运行 RHEL7 的物理服务器。该服务器有 2 个用于主 LAN(绑定)的 NIC 和 2 个用于 iSCSI 网络的 NIC。联想存储有 4 个端口连接到 2 个物理交换机。服务器中的 iSCSI NIC 连接到每个交换机中的 1 个端口。

我已经安装了 iscsi-initiator-utils 和 dm-multipath。

当我运行此命令时,我可以看到以下输出

iscsiadm -m 发现 -t 发送目标 -p 192.168.1.11

192.168.1.13:3260,2 iqn.2002-09.com.lenovo:thinksystem.600a098000f8709a000000005cfff0e0
192.168.1.14:3260,2 iqn.2002-09.com.lenovo:thinksystem.600a098000f8709a000000005cfff0e0
192.168.1.11:3260,1 iqn.2002-09.com.lenovo:thinksystem.600a098000f8709a000000005cfff0e0
192.168.1.12:3260,1 iqn.2002-09.com.lenovo:thinksystem.600a098000f8709a000000005cfff0e0

令人放心的是,发现过程已找到联想存储网卡上的所有 4 个地址。

然后我使用 rescan-scsi-bus.sh 通过 SCSI 总线重新扫描

我使用 puppet multipath 为磁盘 wwid 定义了一个名为 lenovo01 的别名

然后我运行此命令并看到以下输出

多路径-ll

lenovo01 (3600a098000f63bc40000027d5d680d78) dm-14 LENOVO  ,DE_Series       
size=16T features='0' hwhandler='0' wp=rw
|-+- policy='service-time 0' prio=1 status=active
| `- 11:0:0:1  sdg  8:96   active ready running
|-+- policy='service-time 0' prio=1 status=enabled
| `- 12:0:0:1  sdc  8:32   active ready running
|-+- policy='service-time 0' prio=1 status=enabled
| `- 13:0:0:1  sdd  8:48   active ready running
`-+- policy='service-time 0' prio=1 status=enabled
  `- 14:0:0:1  sde  8:64   active ready running

这也很好,因为它显示了我的存储卷“lenovo01”,可通过 4 个联想网卡访问

我正在使用 puppet 配置 iSCSI NIC,想知道是否应该为与存储的连接创建绑定?目前它们是 2 个独立的 NIC,存储仅报告看到服务器的单个“主机端口”(我可能希望看到两个主机端口?)。存储使用 iscsi 启动器名称描述主机端口(如 /etc/iscsi/initiatorname.iscsi 中所示)

我是否正确地假设,如果第一个存储 NIC 发生故障,则多路径足够智能,可以自动使用第二个存储 NIC。还是我需要明确绑定它们?

谢谢,

抢。

答案1

您可以将计划用于 iSCSI 的 LACP NIC 设置为 LACP,但只能在一种情况下使用 - 如果两个“端”(目标和发起方)都支持所谓的“每个会话多个连接”。如果它们不支持或此功能配置不正确(例如,连接数 = 1,这是显而易见的),您将获得正常运行时间,但不会获得任何性能提升。原因很简单:每个新的 TCP 会话都应属于另一个物理 NIC,因此对于少数 TCP 会话,增加将是微不足道的。处理此问题的首选方法是使用 iSCSI MPIO 而不是 MC/S。请参阅(这是 SCST 页面,但对于所有目标和发起方来说都是相同的):

http://scst.sourceforge.net/mc_s.html

答案2

我假设您所说的“绑定”是指“端口通道”或“以太通道”。我不会绑定它们。多路径驱动程序和存储应该足够智能,能够使用多个活动路径并安排将存储事务发送到哪条路径。

在服务器上使用端口通道/绑定会使服务器只具有单个逻辑 NIC,通常意味着单个 IP 和 MAC 地址。交换机和服务器将参与在服务器到交换机链路上做出负载平衡决策,而不是存储和 iSCSI 启动器。我宁愿让存储基础设施为存储流量做出负载平衡决策。

大多数人的最佳做法是,在存储/iSCSI 启动器上设置 A 侧和 B 侧,每个侧使用不同的子网。我两种方式都做过,从来没有遇到过问题。

您说得对,存储基础设施足够智能,可以检测到存储路径是否故障。

相关内容