记录一次doris BE重启故障(BE无法启动,file descriptors limit is too small)
在测试环境上安装了3台BE节点,按照业务要求尽可能压入多的数据,观察doris的入库速度及大数据量下的查询响应速度。使用测试程序压入了20亿条记录,过程中运行一直都很稳定。完成压入后,因为感觉count(*)效率变低、压入新的表数据发生超时的问题,于是决定重启BE节点,结果发现BE无法启动了。
——链接FE查看BE的状态,三个节点均拒绝连接,Alive=false:
——查看BE的警告日志be.WARNING(文件在be/log目录下),赫然写着file descriptors limit is too small:
——百度了一下说这种情况应该是BE服务器上的文件操作数量太小,应该是在安装BE的时候就要设置一下(我应该是在初始部署BE的时候忘记设置了):
修改 /etc/security/limits.conf, 加入
echo "* soft nofile 204800" >> /etc/security/limits.conf
echo "* hard nofile 204800" >> /etc/security/limits.conf
echo "* soft nproc 204800" >> /etc/security/limits.conf
echo "* hard nproc 204800 " >> /etc/security/limits.conf
修改 /etc/sysctl.conf, 加入
echo fs.file-max = 6553560 >> /etc/sysctl.conf
——重启BE服务器,重启BE进程,好了: