大规模集群场景报建链失败错误
问题现象
大规模集群场景执行HCCL Test测试工具,报建链失败的错误,但是拆分成小规模集群分别测试正常。
原因分析
- Master节点建链时处理的数据量较大,建链默认等待超时时间120s若无法满足需求,会建链失败。
- Master节点允许处理的并发建链数受linux内核参数“somaxconn”与“tcp_max_syn_backlog”的限制,所以,针对大规模集群组网,若“somaxconn”与“tcp_max_syn_backlog”取值较小会导致部分客户端概率性提前异常退出,导致集群初始化失败。
解决步骤
- 调大建链超时等待时间。
通过环境变量HCCL_CONNECT_TIMEOUT(单位为s)进行设置,建议根据集群组网的规模适当调大。例如:
# 3K卡场景 export HCCL_CONNECT_TIMEOUT=240 # 5K卡场景 export HCCL_CONNECT_TIMEOUT=600
- 根据集群数量调整“somaxconn”与“tcp_max_syn_backlog”参数的值。
需要注意,所有机器的OS都需要配置,包括裸机、镜像环境,配置示例如下:
sysctl -w net.core.somaxconn=65535 sysctl -w net.ipv4.tcp_max_syn_backlog=65535
父主题: HCCL Test常见问题总结