我有一堆 VM 服务器,它们通过 Open-iSCSI 从 Dom0 主机上安装的 iSCSI LUN 运行 Xen VM。这只是一个简单的单路径设置(冗余通过集群存储和虚拟 IP 在目标端实现)
我正在考虑使用 Open-iSCSI README 中的设置作为 iSCSI 根目录,因为它基本上就是这样:
8.2 iSCSI settings for iSCSI root
---------------------------------
When accessing the root parition directly through a iSCSI disk, the
iSCSI timers should be set so that iSCSI layer has several chances to try
to re-establish a session and so that commands are not quickly requeued to
the SCSI layer. Basically you want theopposite of when using dm-multipath.
For this setup, you can turn off iSCSI pings by setting:
node.conn[0].timeo.noop_out_interval = 0
node.conn[0].timeo.noop_out_timeout= 0
And you can turn the replacement_timer to a very long value:
node.session.timeo.replacement_timeout = 86400
对于在 iSCSI LUN 上运行具有根目录的虚拟机,还有其他推荐的设置值得我考虑吗?
答案1
首先 - 您针对目标使用了什么软件/硬件?
根据我的经验,iSCSI 启动器和目标通常不需要调整,而是必须调整网络。尝试使用直接交叉电缆连接启动器和目标,以这种方式测试速度,我敢打赌它应该很好。在这种情况下,交换机是瓶颈。我可以推荐:
- 将所有 iSCSI 流量移至单独的 VLAN
- 在交换机上启用巨型帧(同时在启动器和目标上将 MTU 设置为约 9000,确保两者相等)
- 买一个 pps 更好的 switch
- 最后抛弃 iSCSI,转而使用旧的优质光纤通道。20 美元的 2Gbit FC 卡每秒可提供约 200 Mbytes 的传输速度,当然前提是目标存储能够处理。
答案2
我发现 OpenISCSI/ietd 在虚拟化环境中存在问题。tgtd 似乎更稳定(难怪它是 RHEL 中的默认目标)
只是我的 5c