共计 717 个字符,预计需要花费 2 分钟才能阅读完成。
【问题详细描述】
SequoiaDB v2.8.4 版本的节点日志中显示的 open files 中的值是从哪里获取的?6 月 10 号启动节点时 open files 显示的值与 ulimit.conf 设置的保持一致,为 1048576,但 6 月 17 号,即今天早上节点启动时 open files 的值却为 4096。
【问题排查】
(如下以 sequoiadb 所属默认用户 sdbadmin 为例)
1、确认 /proc/[cm_pid]/limits 是否用 sdbadmin 启动,并确认 /proc/[cm_pid]/limits 当前值;
from 用户:所有主机的 sdbcm open files 均为 4096;
2、如果执行./bin/sdbstart 加 -i 参数会跳过 limits.conf,以当前 linux 会话中的 ulimit -n 为准,确认 sequoiadb 启动方式;
from 用户:客户早上是执行 sdbstop 命令显示 11820 节点 (该节点为上面提到的节点日志的节点) 停止失败,kill -9 该节点后再使用 sdbadmin / sdbstart 启停的节点;
3、确认编目节点(如 11820)是否为 CM 自动拉起的,CM 自身进程什么时候启动的,如果是 bin/sdbcmart -i 也是跳过 ulimit.conf;
from 用户:11820 是 cm 拉起的,cm 进程是 2018-05-14,/etc/security/limit.conf 文件的最后修改时间 2017-12-04
【解决办法】
因为 sdbcm 节点的 open files 为 4096,11820 节点是被 kill 掉的,由 sdbcm 拉起;另外,排查 ulimit 的设置也是正确的。客户那边后续没有反馈日志和更多问题进展,没有找到问题原因。
客户重启 sdbcm 后正常。
正文完