在Windows上安装RabbitMQ服务时出错

pgvzfuti  于 7个月前  发布在  RabbitMQ
关注(0)|答案(1)|浏览(83)

我想将RabbitMQ Service安装为Windows服务。我看到从安装程序(v3.6.5)安装RabbitMQ Service的选项。但是,它不起作用。
我写了一个批处理脚本,试图在运行安装程序文件后重新安装RabbitMQ服务。**

set HOMEDRIVE=C:
set HOMEPATH=\Users\%username%

call "C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin\rabbitmq-service.bat" remove
call "C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin\rabbitmq-service.bat" install

call net start RabbitMQ

call "C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin\rabbitmq-plugins.bat" enable rabbitmq_management

字符串
然而,这个脚本是相当不稳定的。有时它工作,但有时它不。
我在许多装有Windows 10、Windows 8.1、Windows 7和Windows Server 2012的PC上进行了测试。
错误发生时,总是发生在最后一个命令(启用RabbitMQ管理)

C:\Program Files\erl9.0\erts-9.0\bin\erlsrv: Service RabbitMQ removed from system.
C:\Program Files\erl9.0\erts-9.0\bin\erlsrv: Service RabbitMQ added to system.
The RabbitMQ service is starting.
The RabbitMQ service was started successfully.

Plugin configuration unchanged.

Applying plugin configuration to rabbit@<myhost>... failed.
* Could not contact node rabbit@<myhost>.
Changes will take effect at broker restart.
* Options: --online  - fail if broker cannot be contacted.
--offline - do not try to contact broker.


有时候,我会犯这样的错误

...
Plugin configuration unchanged.

Applying plugin configuration to rabbit@<myhost>... failed.
Error: noproc


在我的电脑中,当**%HOMEDRIVE%%HOMEPATH%C:\users\myusername时,我得到第一个错误 (无法联系节点...)。当我更改为C:\Windows时,它工作正常。然后我更改回C:\users**,它也工作正常,没有更多错误。
但是,在装有Windows Server 2012的服务器上,即使C:\Windows也无法工作 (无法联系节点...)。
在所有PC中,我在C:\WindowsC:\Users[username]中都看到了.erlang.cookie文件。(我对erlang一无所知,只是按照StackOverFlow中其他问题的一些说明进行操作)。
我的剧本有什么问题?
1.这个错误是否与RabbitMQ的版本有关?我没有使用最新版本。
1.是否与Erlang有关?我猜如果是Erlang导致了这个问题,那么两个关于删除/安装RabbitMQ服务的命令将失败。
1.是否可以在安装程序中不检查服务选项的情况下安装服务,只需运行命令rabbitmq-service.bat install

w8rqjzmb

w8rqjzmb1#

你应该使用最新版本的Windows RabbitMQ安装程序,可用的here。我假设你问题中的<myhost>是一个编辑出来的主机名,而不是实际使用的主机名。你也没有提到你安装了哪个版本的Erlang,但我假设它是最新的。
您应该卸载RabbitMQ并确保从C:\Users\myusername(请务必检查%APPDATA%)和C:\Windows中删除所有跟踪。在安装之前,您不应该更改HOMEDRIVEHOMEPATH的默认值。在运行Erlang和RabbitMQ .exe安装程序时使用管理帐户。
请注意,3.6.12在Windows上有this issue。解决方法是将vm_memory_calculation_strategy设置为erlang。我修复了这个问题,它将在3.6.13中交付。
感谢您使用RabbitMQ!

相关问题