问题描述
- 执行器注册正常注册,但是注册ip为172.xxx.xxx.xxx,导致定时任务调用失败,提示:xxl-job remoting error(Connection refused (Connection refused))
- 注册IP非服务器的内网网卡ip或公网IP
解决方案
- 博主遇到这个问题是由于服务器上安装了Docker,存在有多个网卡,服务启动时使用的是Docker网卡的IP进行注册的,导致定时任务执行失败
第一种方案:
- 在SpringBoot 对应环境的配置文件中,指定xxl-job的IP属性为部署的目标服务器的内网ip
第二种方案:
- cat /etc/hostname 查看当前服务器的主机名
- cat /etc/hosts 查看当前服务器的域名配置,查看是否存在有当前主机名 + 内网IP的配置,如果没有就需要进行配置
- ifconfig 查看当前服务器的网卡信息,找到服务器的内网IP
- vim /etc/hosts 编辑hosts文件,将当前服务器的内网IP以及主机名配置进去,格式:【xxx.xxx.xxx.xxx 主机名】,两个中间存在一个空格即可
- 最后重启服务即可,定时任务可以正常执行