本文将解决在开启RabbitMQ的Web端管理且曾经修改过本机域名(主机名)时可能的报错:{:query, :rabbit@xxx, {:badrpc, :timeout}}
。
其实就是RabbitMQ在调用RPC时使用的是本机的域名(主机名)而非IP地址,此时如果对应的域名没有解析到本机IP上,就会出现badrpc
的错误。
修复方式也很简单,只需将本机IP解析到对应的域名(主机名)上或者写入/etc/hosts
即可。
- 获取本机域名(主机名)
1
2[root@resc ~]# hostname
resc.itp3.virt.domain.cn - 写入
/etc/hosts
,注意,要写入域名的第一段和整个域名。1
2
3127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 resc.itp3.virt.domain.cn resc
之后就可以正常使用了。
1 | [root@resc ~]# rabbitmq-plugins enable rabbitmq_management |