Windows下安装RabbitMQ报错:unable to perform an operation on node时的解决方案

前言

最近在Windows server 2012 R2的百度云服务器上安装rabbitmq时,在执行rabbitmqctl status命令时,一直报错,开始时出现的如下错误:

Error: unable to connect to node rabbit@xxx: nodedown

erlang的cookie问题排解

Google、百度了一通后,大多数都说的是cookie的问题,需要保持C:\Windows下的.erlang.cookie和C:\Users\Administrator下的.erlang.cookie一致,然后我搜索了一下,总共在三个地方找到了这个文件,如下图:

image

然后,我用其中的一个文件中的内容完全替换掉其他两个,这样使三个文件保持一致,然后打开下面这个窗口:

image

新的错误: unable to perform an operation on node

再次执行rabbitmqctl status命令,此时报了另一个错误:

image
image

不解,cookie也设置相同了,环境变量也添加正确了,为什么还是报错,继续寻找问题。

登录账号权限问题

后来看到一个网友说可能是登录账号的问题,我是用administrator账号登录服务器并安装rabbitmq的,rabbitmq也自动在C:\user\administrator下创建了一个.erlang.cookie文件,但是RabbitMQ服务启动的时候,执行者是local system account,如下图所示:

image

此时,我想到将RabbitMQ服务的启动账号改成administrator,果然,更改后重启服务,再次执行rabbitmqctl status,成功!具体操作如下图所示:

image
image

接下来呢,就是在浏览器中查看并设置新的管理员账号,来管理消息队列,具体的操作如下图,同时也可以参考我的另一篇博客中的详细操作。

为新账户设置管理员权限

这里需要说一下的是,在给新创建的账号指定管理员权限时,按照之前的命令:rabbitmqctl.bat set_permissions -p / cmmooc_zhaopin "." "." ".*",执行后,并没有为其赋予administrator的权限,如下图所示:

image

这里,需要执行这个命令:rabbitmqctl set_user_tags cmmooc_zhaopin administrator,此时才真正设置成管理员权限:

image

最后,就可以使用新创建的账号来登录rabbitmq网页管理界面了

image

*本文参考http://blog.csdn.net/starry0819/article/details/79228634,仅用于学习。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 整体架构 部署步骤 基于 Docker 基本概念内存节点只保存状态到内存,例外情况是:持久的 queue 的内容将...
    mvictor阅读 14,365评论 5 30
  • rabbitmq有3种模式,集群模式2种• 单机模式:即单机情况不做集群,就单独运行一个rabbitmq而已。...
    嗷大彬彬阅读 9,514评论 1 9
  • CentOS安装RabbitMQ 安装erlang 配置epel源 centos6.xwget -O /etc/y...
    肖金光xjg阅读 4,900评论 0 3
  • RabbitMQ 原理介绍及安装部署 标签:RabbitMQ 安装 简介 RabbitMQ 是一个用 Erlang...
    神仙CGod阅读 12,729评论 0 60
  • 1、签到题 直接加群就可以获取flag 2、Web2 尝试抓包失败 查看元素就发现了flag 3、文件上传测试 判...
    queena_阅读 11,383评论 1 1