k8s部署xxl-job
时间: 2023-09-20 17:08:47 浏览: 239
在将xxl-job部署到Kubernetes(k8s)时,有一些背景和目标需要注意。当你的Java服务部署到K8S后,xxl-job的任务调度器需要对注册上来的执行器进行健康检测,而执行器的注册地址是Pod的IP地址。因此,任务调度器需要能够访问执行器的网络,这意味着xxl-job的任务调度器和执行器必须在同一个网络下并且能够相互通信。
为了实现这个目标,你可以按照之前的devops系列文章中的详细部署步骤进行操作,并根据需要修改xxl-job的源码、编写Dockerfile、在Jenkins创建Job、编写argocd-helm-yaml、在argocd创建Application,并创建xxl-job的数据库并执行相应的脚本。
在具体部署过程中,你需要注意一些细节。例如,你可以部署多个xxl-job的Pod节点以支持集群模式,并使用Service地址对外提供服务,可以选择NodePort或LoadBalancer方式。此外,你还可以替代官方推荐的集群模式,不再需要使用Nginx等组件来代理多个xxl-job任务调度器。最后,确保在K8S内部的Java服务能够正常地使用处于同一网络下的xxl-job来执行任务调度。
另外,部署过程中还可以执行一些其他操作,比如部署xxl-job-read-log服务,并在配置文件中设置xxl.job.read.log.path参数以指定执行日志的统一路径。同时,配置流量转发将/xxl-job-admin/joblog/logDetailCat请求转发到xxl-job-read-log服务,以实现随时查看执行日志的功能。
总之,在将xxl-job部署到k8s时,需要确保任务调度器和执行器在同一网络下,并能够相互通信。你可以按照上述步骤进行部署,并根据需要进行相应的配置和调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [k8s部署xxl-job分布式任务调度服务](https://blog.csdn.net/zhuganlai168/article/details/132054392)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [解决k8s中xxl-job执行器pod重建后无法读取到执行日志的问题](https://download.csdn.net/download/iam098/88250428)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文