ESX 的 Ceph iSCSI GW 调整设置- ESX 的 Ceph iSCSI 网关设置

max_data_area_mb
最佳情况下,这将与 ESX 将发送到 LUN 的命令数量乘以这些命令的 I/O 大小一样大。这将防止 iSCSI 目标设备和 LUN 缓冲区被填满,从而强制 ESX 重试命令。
max_data_area_mb 选项的默认值为 8。max_data_area_mb 选项控制每个映像可用于在 iSCSI 目标和 Ceph 集群之间传递 SCSI 命令数据的内存量(以兆字节为单位)。如果此值太小,可能会导致过多的队列满重试,从而影响性能。如果该值太大,可能会导致一个磁盘使用过多的系统内存,从而导致其他子系统的分配失败。

可以通过查看iscsivmk_LunQDepth此命令输出来确定排队限制:

 esxcli system module parameters list -m iscsi_vmk

I/O 大小可以从此命令得出:

esxcli system settings advanced list -o /ISCSI/MaxIoSizeKB

注意:使用 RHEL 7.5 及更早版本的内核时,会为每个 LUN 分配 max_data_area_mb MB。这是内核内存,不使用就是浪费。在 RHEL 7.6 中,内核内存在 LUN 之间共享。max_data_area_mb 是每个 LUN 可以使用的限制,模块参数/sys/module/target_core_user/parameters/global_max_data_area_mb是所有 LUN 可以使用的总数。

命令深度
cmdsn_depth应增加到最大值 512。这将允许每个 iSCSI 会话最多向目标发送 512 个命令。默认值仅为 128。

从 VM 的角度来看,这将有助于提高吞吐量和延迟,因为命令不会位于 ESX 队列中。但是需要确保 max_data_area_mb(如果可用的话global_max_data_area_mb)足够高以cmdsn_depth执行命令数量。

例子

gwcli
cd /iscsi-target/iqn.2003-01.com.redhat.iscsi-gw:ceph-igw
reconfigure iqn.2003-01.com.redhat.iscsi-gw:ceph-igw cmdsn_depth 512
gwcli
cd /disks
reconfigure rbd.<image_name> max_data_area_mb 256

针对大 I/O 进行优化
对于具有大量 I/O 的工作负载,可能需要考虑MaxIoSizeKB在 ESX 端增加(并匹配上述设置)。您还需要同时更改启动器和目标端MaxIoSizeKB的512iSCSI 设置,这样它们就不必分解 I/O。在目标集max_recv_data_segment_length,max_xmit_data_segment_lengthfirst_burst_lengthto 上524288。

例子

gwcli
cd /iscsi-target/iqn.2003-01.com.redhat.iscsi-gw:ceph-igw
reconfigure max_recv_data_segment_length 524288
reconfigure max_xmit_data_segment_length 524288
reconfigure first_burst_length 524288

请珍惜劳动成果,支持原创,欢迎点赞或者关注收藏,你每一次的点赞和收藏都是作者的动力,内容如有问题请私信随时联系作者,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小Eason哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值