问题现象
在开发的过程中遇到了 RabbitMQ 怎么也启动不起来的现象。查看 RabbitMQ 自身的启动日志,并没有发现有什么有用的报错信息,只是从某天开始就一直在打印重启的日志,尝试多次重启也不行。
问题复现
后面查看操作系统的日志发现日志里面一直在报 epmd failed to bind on ipaddr 0.0.0.0
这个错误。从这个报错分析,可能跟操作系统的哪个配置项有关系,但是从日志中也没能找到更过有用的信息了。
根据这个报错信息在 google 上搜索,找到了一个帖子 Red Hat Bugzilla – Bug 1872670 说可能跟操作系统禁用了 IPV6 配置有关系。
于是尝试找一个环境,然后将操作系统上的 /etc/sysctl.conf
增加如下两行配置,然后执行命令 sysctl -p
是配置生效,最后重启 RabbitMQ,果然发现启动不起来了,查看操作系统的日志和有问题的环境报的是同样的错误。
问题解决
问题复现之后,解决的方法也很简单,将 /etc/sysctl.conf
文件中的两行配置注释掉或者将其值修改为 0,然后执行 sysctl -p
是配置生效,最后重启 RabbitMQ 问题得到解决了。