xxl-job 手动执行成功,cron执行绝大部分失败

drkbr07n  于 2022-11-19  发布在  其他
关注(0)|答案(9)|浏览(631)

版本2.3.0,admin和executor部署在k8s。原因应该是调度地址不一样了导致

xriantvc

xriantvc2#

+1

你页数部署在k8s上吗

lf5gs5x2

lf5gs5x23#

+1

你页数部署在k8s上吗

没有使用k8s,通过docker-compose部署的

yzxexxkh

yzxexxkh4#

+1

你页数部署在k8s上吗

没有使用k8s,通过docker-compose部署的

我的解决了,加上配置nodeSelector和tolerations

li9yvcax

li9yvcax6#

+1

你页数部署在k8s上吗

没有使用k8s,通过docker-compose部署的

我的解决了,加上配置nodeSelector和tolerations

请问是如何解决的呢?问题原因是什么呢?

lf3rwulv

lf3rwulv7#

这里给出我的解决方案,也是官方文档中已经给出的方法,结合我实际的运行结果,在容器环境中是完成OK的。

  • 网卡设置
    如果是使用的SpringBoot&SpringCloud框架,可通过下面的参数来设置网卡,针对容器的多网卡情况下,需要正确选择。
spring.cloud.inetutils.preferred-networks=eth0

/**
     *  针对容器、多网卡等复杂网络情况,需要灵活定制注册IP,通过设置 spring.cloud.inetutils.preferred-networks 参数,设置网卡选项
     * @param inetUtils
     * @return
     */
    private String findFirstNonLoopbackHostInfo(InetUtils inetUtils) {
        return inetUtils.findFirstNonLoopbackHostInfo().getIpAddress();
    }
  • 调度地址的问题
我们生产环境也采用Kubernetes部署 XXL-Job-Admin,规模大概是每个Namespace部署3个节点,并没有出现调度器导致的任务失败情况发生。所以我认为以上问题的出现,全部是因为容器环境下,多网卡导致调度器无法连接容器中的服务导致的。当然也有其他我还未遇到的潜在问题导致的。但还是希望各位尝试,期待大家的回答。
balp4ylt

balp4ylt8#

我也遇到了这个问题,请问作者是怎么解决的

相关问题