Nic*_*eau 5 debian rabbitmq rabbitmqadmin
所以我不断收到来自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]连接被拒绝
我尝试了以下方法:
我试过rabbitmqadmin list users也遇到了同样的问题。我很困惑,有什么想法吗?
注意:我不确定它是否相关,但是我在安装 rabbitmq-server 时遇到了一些麻烦,我不断遇到“未满足的依赖项”问题,并且运行apt-get -f install会删除我需要的一些其他软件包。我认为问题实际上来自安装 erlang,并最终通过遍历未满足的依赖项树并一次安装每个依赖项直到 erlang 和 rabbitmq-server 都安装来使其工作。
我还添加了“deb http://http.debian.net/debian wheezy-backports main”到/etc/apt/sources.list,所以我也尝试删除rabbitmq-server,删除repo,apt-get更新并重新安装rabbitmq - 服务器,仍然没有。
ale*_*lex 10
在 debian 10 上,rabbitmq-server 安装了很多插件,但默认情况下没有启用。
你可以将它们列为 root:
rabbitmq-plugins list
Run Code Online (Sandbox Code Playgroud)
那么你可以:
rabbitmq-plugins enable rabbitmq_management
Run Code Online (Sandbox Code Playgroud)
现在您可以以非 root 用户身份运行:
rabbitmqadmin list queues
Run Code Online (Sandbox Code Playgroud)
乃至
rabbitmqadmin delete queue name=rpc_queue
Run Code Online (Sandbox Code Playgroud)
我没有做特殊配置。
我找到了这个解决方案:
rabbitmqadmin需要与服务器的管理网站通信。与您作为管理员使用的相同。默认值似乎是 TCP port 15672,但我正在使用的配置(也是 Debian,但是 9)是port 8080。
我通过查看在哪里找到这个来找到管理接口在哪个端口上运行/etc/rabbitmq/rabbitmq.config:
{rabbitmq_management, [{listener, [{port, 8080},
Run Code Online (Sandbox Code Playgroud)
您也可以尝试检查哪些开放端口属于rabbitmq-server,并尝试所有端口。
最后,为了使用这些信息,我在下面为rabbitmqadmin创建了一个配置文件,~/.rabbitmqadmin.conf并用在rabbitmqadmin help config. (删除前导空格可能很重要。)
| 归档时间: |
|
| 查看次数: |
6778 次 |
| 最近记录: |