无法使用 rabbitmqadmin 连接到远程主机

问题描述 投票:0回答:2

我正在尝试使用 cli rabbitmqadmin 连接到远程 rabbitmq 主机。

我要执行的命令是:

rabbitmqadmin --host=$RABBITMQ_HOST --port=443 --ssl --vhost=$RABBITMQ_VHOST --username=$RABBITMQ_USERNAME --password=$RABBITMQ_PASSWORD list queues

在你问之前:设置了环境变量 RABBITMQ_HOST、RABBITMQ_VHOST 等等……我已经对它进行了双重和三次检查。

我得到的错误是:

Traceback (most recent call last):
File "/usr/local/sbin/rabbitmqadmin", line 1007, in <module>
main()
File "/usr/local/sbin/rabbitmqadmin", line 413, in main
method()
File "/usr/local/sbin/rabbitmqadmin", line 588, in invoke_list
format_list(self.get(uri), cols, obj_info, self.options)
File "/usr/local/sbin/rabbitmqadmin", line 436, in get
return self.http("GET", "%s/api%s" % (self.options.path_prefix, path), "")
File "/usr/local/sbin/rabbitmqadmin", line 475, in http
self.options.port)
File "/usr/local/sbin/rabbitmqadmin", line 451, in __initialize_https_connection
context = self.__initialize_tls_context())
File "/usr/local/sbin/rabbitmqadmin", line 467, in __initialize_tls_context
self.options.ssl_key_file)

TypeError: coercing to Unicode: need string or buffer, NoneType found

从最后一行我假设这是一个 python 相关的问题,我当前的 python 版本是 2.7.12,如果我尝试使用

连接到 rabbitmq 的本地实例
rabbitmqadmin list queues

一切正常。非常感谢任何帮助谢谢:)

rabbitmq command-line-interface rabbitmqadmin
2个回答
0
投票

那些环境变量前面不应该有一个

$
,而没有
=
的参数吗?

rabbitmqadmin --host $RABBITMQ_HOST --port 443 --ssl --vhost $RABBITMQ_VHOST --username $RABBITMQ_USERNAME --password $RABBITMQ_PASSWORD list queues`

也许

=
并不重要,但我很确定您在环境变量前面需要
$


0
投票

验证您使用的 rabbitmqadmin 版本与远程托管代理的版本相同。使用不匹配的 rabbitmqadmin 版本将导致该错误(例如 rabbitmqadmin 3.6.4 查询 3.5.7 服务器)。

浏览到 http://server-name:15672/cli/ 并从那里下载正确的工具。

https://github.com/rabbitmq/rabbitmq-management/issues/299

© www.soinside.com 2019 - 2024. All rights reserved.