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。