rabbitmq .erlang.cookie文件疑惑

1、安装方式
常见的rabbitmq安装方式有两种:rpm安装和二进制安装(编译安装)。

2、.erlang.cookie是什么
.erlang.cookie是erlang实现分布式的必要文件,erlang分布式的每一个节点上要保持相同的.erlang.cookie文件,同时该文件的权限为400。

3、.erlang.cookie文件路径
官方介绍集群的文档介绍如下: .erlang.cookie一般会存在于两个地方,第一个是:$HOME/.erlang.cookie;第二个是:/var/lib/rabbitmq/.erlang.cookie。

如果我们使用解压缩安装方式(二进制安装或者编译安装),那么该文件存在位置为$HOME目录下。即$HOME/.erlang.cookie。如果我们使用root安装,则位置为:/root/.erlang.cookie,其他用户为/home/用户名/.erlang.cookie。

如果我们使用rpm包方式安装,那么这个文件会存在于/var/lib/rabbitmq目录下。

4、依据
我们可以通过rabbitmq的启动日志,查看rabbitmq的home目录以及.erlang.cookie文件的位置等信息。

使用rpm包安装,然后启动,日志内容如下:

=INFO REPORT==== 20-Jul-2018::13:34:56 ===
node           : rabbit@node1
home dir       : /var/lib/rabbitmq
config file(s) : /etc/rabbitmq/rabbitmq.config (not found)
cookie hash    : u93q0KLNBdaW4CWPZXC6NQ==

使用二进制安装,然后启动:

=INFO REPORT==== 20-Jul-2018::13:34:56 ===
node           : rabbit@he10
home dir       : /root (我是用root用户启动的)
config file(s) : /home/rabbitmq_server-3.6.1/etc/rabbitmq/rabbitmq.config (not found)
cookie hash    : 063Gh+RyPjHRzyuSPf9wWA==

5、疑惑
我使用rrpm安装完成之后,使用root用户启动,则在/root和/var/lib/rabbitmq目录下都会存在.erlang.cookie。

建议为了保证rabbitmq集群正常启动,把两个目录下的erlang.cookie都copy到集群中其他机器的对应目录下,同时保持权限为400。

posted @ 2018-08-13 22:23  运维小兵  阅读(13698)  评论(0编辑  收藏  举报