我正在使用 rabbitmq 为我正在处理的企业应用程序处理我的数据库之间的消息。作为该过程的一部分,我正在尝试帮助自动化服务器的设置(例如编写脚本)。在这个过程中,我尝试使用rabbitmqadmin
从命令提示符声明交换。我有 2 台不同的服务器正在运行CentOS 5.x
,CentOS 6.x
并且两者都有相同的问题。
到目前为止,我声明了一个管理员用户并设置了它的密码,然后我将它的标签设置为管理员标签,然后我确保它具有对虚拟主机的权限。之后,我尝试使用指定的用户名和密码声明交换,但它失败了。
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
对于 CentOS 5.x 框,我必须使用python26 rabbitmqadmin
而不是 just rabbitmqadmin
,但得到相同的结果。
最后一条命令导致:
*** Access refused: /api/exchanges/vhostFoo/exchangeNew
我的 CentOS 5.x 和 Cent 6.x 机器都运行 rabbitmq 3.3.5。关于我遗漏的任何想法或关于如何获得更多错误信息的想法(例如错误日志文件或获得更详细输出的方法)?