GBase 8a从V95开始,全部运行在非操作系统root用户下,一般是gbase。但如果用户尝试用root启动,则可能生成一下root属主的日志,pid文件等,造成后续在gbase用户下,无法访问该文件,造成服务失败。
目录导航
现象
客户反馈集群一个节点的gcware服务一直CLOSE,查看日志,一直在不断的启动,退出。截图如下

分析
两行ERROR信息中,第一行指向了报错原因
Corosync Executive couldn't create lock file.
不能创建lock文件。
查看磁盘空间
未见空间满等问题

查看操作系统日志
/var/log/messages,也没看到磁盘报错。
查看gcware的pid文件目录
发现gcware/run/gcware.pid文件,属主为root:root

结论
用户曾经用操作系统root用户启动gcware服务,并生成了pid文件。之后再次启动时,又变成了gbase用户。由于该文件gbase用户无权限访问,造成无法创建lock文件,启动失败。
处理方案
切换到操作系统root用户,将pid文件的属主改成gbase:gbase,然后重启gcware服务。