标签: rabbitmqadmin

是否可以直接从命令行查看RabbitMQ消息内容?

是否可以直接从命令行查看RabbitMQ消息内容?

sudo rabbitmqctl list_queues 列出队列.

有没有命令命令sudo rabbitmqctl list_queue_messages queue_name

rabbitmq rabbitmqctl rabbitmqadmin

91
推荐指数
6
解决办法
12万
查看次数

RabbitMQ从终端申报交换 - 拒绝访问:/ api/exchange /

我正在使用rabbitmq来处理我工作的企业应用程序的数据库之间的消息.作为流程的一部分,我正在尝试帮助自动化服务器的设置(例如脚本).在此过程中,我尝试使用rabbitmqadmin从命令提示符声明交换.我有2个不同的服务器在运行CentOS 5.x,CentOS 6.x并且两个都有相同的问题.

到目前为止,我宣布了一个管理员用户并设置了密码,然后我将其标记设置为管理员标记,然后我确保它具有对vhost的权限.之后,我尝试声明交换,指定用户和密码,它失败.

rabbitmqctl add_user administrator password
rabbitmqctl set_user_tags administrator administrator
rabbitmqctl set_permissions -p / administrator ".*" ".*" ".*"
rabbitmqctl add_vhost vhostFoo
rabbitmqctl set_permissions -p vhostFoo administrator ".*" ".*" ".*"
rabbitmqadmin -u administrator -p password declare exchange --vhost=vhostFoo name=exchangeNew type=direct
Run Code Online (Sandbox Code Playgroud)

对于CentOS 5.x盒子,我必须使用python26 rabbitmqadmin而不仅仅是rabbitmqadmin,但得到相同的结果.

最后一个命令导致:

*** Access refused: /api/exchanges/vhostFoo/exchangeNew
Run Code Online (Sandbox Code Playgroud)

我的CentOS 5.x和Cent 6.x盒子都在运行rabbitmq 3.3.5.关于我缺少什么的想法或者我如何获得有关错误的更多信息的想法(例如错误日志文件或获得更详细输出的方式)?

rabbitmq rabbitmq-exchange rabbitmqctl rabbitmqadmin

20
推荐指数
2
解决办法
1万
查看次数

在linux上安装rabbitmqadmin

我正在尝试安装并能够在linux机器上运行rabbitmqadmin.按照此处描述的说明没有帮助.

下载链接的文件后,它会提示将文件(看起来像python脚本)复制到/usr/local/bin.

尝试通过简单地调用rabbitmqadmin结果来运行它rabbitmqadmin: command not found.似乎没有任何关于如何使其工作的信息,并假设网站上列出的所有步骤都适用于所有人.简单地将python脚本复制到该bin文件夹应该允许它成为公认的命令,而不必每次都调用python解释器.

任何帮助表示赞赏.

linux rabbitmq rabbitmqadmin

11
推荐指数
3
解决办法
2万
查看次数

如何为RabbitMQ Management HTTP API生成password_hash

心爱的RabbitMQ管理插件有一个HTTP API,可以通过普通的HTTP请求来管理RabbitMQ.

我们需要以编程方式创建用户,并且HTTP API是您选择的方式.文档很少,但API非常简单直观.

关注安全性,我们不希望以纯文本形式传递用户密码,而API提供了一个字段来代替发送密码哈希.从那里引用:

[GET | PUT | DELETE]/api/users/name

个人用户.要使用户,你需要一个看起来像这样的身体:

{"password":"secret","tags":"administrator"}
Run Code Online (Sandbox Code Playgroud)

要么:

{"password_hash":"2lmoth8l4H0DViLaK9Fxi6l9ds8=", "tags":"administrator"}
Run Code Online (Sandbox Code Playgroud)

标签键是必需的.无论是passwordpassword_hash必须设置.

到目前为止,这么好,问题是:如何正确生成password_hash

密码散列算法被配置在RabbitMQ的配置文件,我们的配置为默认SHA256.

我正在使用C#,以下代码生成哈希:

var cr = new SHA256Managed();
var simplestPassword = "1";
var bytes = cr.ComputeHash(Encoding.UTF8.GetBytes(simplestPassword));
var sb = new StringBuilder();
foreach (var b in bytes) sb.Append(b.ToString("x2"));
var hash = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

这不起作用.在一些用于SHA256加密的在线工具中进行测试,代码产生了预期的输出.但是,如果我们转到管理页面并手动将用户密码设置为"1",那么它就像魅力一样.

这个答案让我导出配置并看看RabbitMQ正在生成的哈希值,我意识到了一些事情:

  • 哈希示例"1":"y4xPTRVfzXg68sz9ALqeQzARam3CwnGo53xS752cDV5 + Utzh"
  • 所有用户的哈希都有固定长度
  • 哈希每次都会改变(即使密码相同).我知道PB2K也会对密码执行此操作,但不知道此加密属性的名称.
  • 如果我通过password_hashRabbitMQ存储它没有更改

我也接受其他编程语言的建议,而不仅仅是C#.

c# rabbitmq rabbitmqadmin

11
推荐指数
7
解决办法
5314
查看次数

rabbitmqadmin [Errno 111] 连接被拒绝

所以我不断收到来自rabbitmqadmin 的“连接被拒绝”。我在虚拟机上以 root 用户身份运行 debian 7。我用apt-get安装了rabbitmq-server,启动它并执行以下操作:

rabbitmqctl add_user test 1234
rabbitmqctl set_user_tags test administrator
rabbitmqctl set_permissions -p / test ".*" ".*" ".*"
rabbitmq-plugins enable rabbitmq_management

cd /usr/local/bin/
wget https://raw.githubusercontent.com/rabbitmq/rabbitmq-management/rabbitmq_v3_5_6/bin/rabbitmqadmin
chmod +x rabbitmqadmin

rabbitmqadmin -H 127.0.0.1 -u test -p 1234 list vhosts
Run Code Online (Sandbox Code Playgroud)

但是对rabbitmqadmin的调用总是导致无法连接:[Errno 111]连接被拒绝

我尝试了以下方法:

  • 重启服务(/etc/init.d/rabbitmq-server restart/stop/start)
  • 通过rabbitmq-plugins列表和检查/etc/rabbitmq/enabled_plugins验证rabbitmq-management已启用
  • 通过检查rabbitmqctl状态和rabbitmq日志来验证rabbitmq-management实际上是启动的
  • 删除/重新安装rabbitmq-server
  • 删除/重新安装rabbitmqadmin
  • 我检查了 127.0.0.1 实际上列在/etc/hosts 中

我试过rabbitmqadmin list users也遇到了同样的问题。我很困惑,有什么想法吗?

注意:我不确定它是否相关,但是我在安装 rabbitmq-server 时遇到了一些麻烦,我不断遇到“未满足的依赖项”问题,并且运行apt-get -f install会删除我需要的一些其他软件包。我认为问题实际上来自安装 erlang,并最终通过遍历未满足的依赖项树并一次安装每个依赖项直到 erlang 和 rabbitmq-server 都安装来使其工作。

我还添加了“deb …

debian rabbitmq rabbitmqadmin

5
推荐指数
2
解决办法
6778
查看次数

rabbtimqadmin - 无法连接:[Errno -2]名称或服务未知

我在CentOS 5.x服务器上安装了RabbitMQ,用于在我的程序之间传递消息.我rabbitmqadmin按照https://www.rabbitmq.com/management-cli.html上的说明进行了安装,并且过去在我的服务器上使用过它.

据我所知,看起来这个特定的服务器配置错误.在尝试获取有关如何解决此问题的更多信息时,我的网络搜索失败了.

错误:

[root@server ~]# python26 /usr/local/bin/rabbitmqadmin list nodes
*** Could not connect: [Errno -2] Name or service not known
[root@server ~]# 
Run Code Online (Sandbox Code Playgroud)

我尝试了几种不同的rabbitmqadmin命令,它们给出了相同的结果.如果我在没有额外参数的情况下运行命令,则会显示正常的帮助对话框.我有这个设置,并在其他几个服务器上工作.

根本问题是什么?如果没有,无论如何要获得更多细节,比如详细?

更新:

我只是试图检查rabbitmq的版本,它也产生了一个错误:

[root@server ~]# rabbitmqctl status
Status of node rabbit@server ...
Error: unable to connect to node rabbit@server: nodedown

DIAGNOSTICS
===========

attempted to contact: [rabbit@server]

rabbit@server:
  * connected to epmd (port 4369) on server
  * epmd reports node 'rabbit' running on port 25672
  * TCP connection succeeded but Erlang …
Run Code Online (Sandbox Code Playgroud)

rabbitmq rabbitmqctl rabbitmqadmin

4
推荐指数
1
解决办法
5677
查看次数

在 docker 中使用 rabbitmqadmin

================Dockerfile1==================

FROM rabbitmq:3-management
MAINTAINER 123 "qyb1234@everbridge.com"
RUN apt-get update
ENV REFERSHED_AT 2015-07-20
RUN apt-get install -y python
ADD rabbitmqadmin /usr/local/bin/rabbitmqadmin
RUN chmod 755 /usr/local/bin/rabbitmqadmin
RUN service rabbitmq-server start && /usr/local/bin/rabbitmqadmin declare queue name=my-new-queue durable=true && service rabbitmq-server stop

RUN rabbitmq-plugins enable --offline rabbitmq_management
EXPOSE 15672
CMD rabbitmq-server
Run Code Online (Sandbox Code Playgroud)

==============Dockerfile2====================

FROM rabbitmq:3-management
MAINTAINER 123 "qyb1234@gmail.com"
RUN apt-get update
ENV REFERSHED_AT 2015-07-20
RUN apt-get install -y python
ADD rabbitmqadmin /usr/local/bin/rabbitmqadmin
RUN chmod 755 /usr/local/bin/rabbitmqadmin
RUN rabbitmq-plugins enable --offline rabbitmq_management
EXPOSE 15672
CMD service …
Run Code Online (Sandbox Code Playgroud)

rabbitmq docker rabbitmqadmin

4
推荐指数
1
解决办法
6060
查看次数

如何在远程机器上运行rabbitmqctl命令?

我有rabbitmq docker 容器,在不同的机器上运行。我想要做的是使用另一台机器上的 shell 脚本执行rabbitmqctl 命令。我是rabbitmq的新手,需要专家指导

我已经使用rabbitmqadmin 和-H 选项来连接到远程服务器。我能够连接并执行rabbitmqadmin 命令。但是rabbitmqctl没有连接到远程服务器的选项。

$rabbitmqadmin -H 127.2.2.1 -u abc -p abc 列表虚拟主机

$rabbitmqctl add_vhost xyz

我想在远程机器上执行rabbitmqctl命令。rabbitmqadmin 确实有效。

我怎样才能让rabbitmqctl以同样的方式工作。请指导。

rabbitmq docker rabbitmqctl rabbitmqadmin

3
推荐指数
1
解决办法
8459
查看次数

windows RabbitMQ在sbin文件夹中没有rabbitmqadmin

我正在windows环境中使用RabbitMQ.我们还有用于windows的rabbitmqadmin吗?

我无法在rabbitmq的sbin文件夹中找到rabbitmqadmin.

请告诉我 .

rabbitmq rabbitmqadmin

1
推荐指数
1
解决办法
1449
查看次数