我有两个主机。 一个是iSCSI启动器。 另一个是iSCSI目标。 他们都运行Ubuntu 16.04 LTS,并且都使用open-iscsi。
具体来说,目标主机(我们称之为“目标”)正在运行iscsid服务。 它有16个SSD磁盘作为iSCSI目标导出。 其configuration在/etc/iscsi/iscsi.conf文件中指定。
其目标在/etc/tgt/conf.d/config文件中指定。 configuration文件具有关于目标的iqn名称,设备以及允许安装目标的启动器列表的信息。
我们没有使用iscsitarget包,因为它不适用于ISER。
目标和启动器都使用端口3260.目标和启动器都通过独立Infiniband交换机上的专用Infiniband卡进行通信。 iSCSI连接不通过以太网连接/交换机。
有没有办法使每个iSCSI目标使用专用端口?
我想这样做的原因是因为我正在Infiniband卡上testing性能。 如果我在所有的iSCSI目标上同时运行性能testing,它们每个只能获得大约300MB / s的吞吐量。 InfiniBand卡提供的最大吞吐量不足40MB * 16。
我怀疑瓶颈是TCP / IP端口连接。 即使我并行运行所有16个iSCSI目标的性能testing,他们都通过端口3260。
有没有办法设置iSCSI目标,使每个目标使用一个单独的端口? 目标0可以在端口3261上,目标1可以在端口3262上等,并且从发起者,我可以在“iscsiadm -m discovery”和“iscsiadm -m node”命令中指定ip和端口。
Infiniband将是每秒 40 千兆位。 这是每秒5000 兆字节 。 您的硬盘组合输出(300MB /秒* 16)为4800 兆字节每秒(38.4Gb / s)。
听起来像是你的Infiniband最大化。 我不相信共同的港口问题是你的问题。 除非我误解了你的configuration?