TDengine 最大打开文件数nofile不生效

TDengine 最大打开文件数nofile不生效,第1张

TDengine 最大打开文件数nofile不生效

在部署TDengine后,如果数据量比较大,很容易遇到达到最大打开文件数(Max open files)的问题。
可是调整 /etc/security/limits.conf 中的nofile,发现并不能解决问题。

造成以上问题的原因有几个:
1、RHEL7/CentOS7 以后的系统limits.conf文件只影响通过pam登录的用户。systemd启动的进程需要在启动文件中(taosd.service)进行设置

2、TDengine在部署时,默认在taosd.service 配置了LimitNOFILE=infinity,看似是没有限制,其实根本不能生效。因为systemd 234版本以下不支持infinity参数,而CentOS 7 的systemd 版本是219。

3、当LimitNOFILE=infinity 不生效时,系统会采用nr_open 的值作为默认值。fs.nr_open 在/etc/sysctl.conf 中设置。

解决方案如下:
1、在/etc/sysctl.conf 中设置fs.nr_open ,sysctl -p 使其生效。
2、重启TDengine,

systemctl restart taosd

此时可以查看到TDengine的资源限制已经被修改了。

cat /proc/`pidof taosd`/limits

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5705898.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存