需求是这样:需要使用xxl-job实现调用脚本的功能,实现目的是在xxl-job控制器上创建一个test文件既可以了。
1.需求分析
通过这个图片,应该对需求和xxl-job执行shell的原理很明白了吧。
下面开始具体配置
2.执行器发现
- 把xxl-job部署在4444端口的机器上,注册到xxl-admin上
- 可以先自动发现,等西东发现后,选择手动,把自动识别错误的删除掉就可以了。
3. 如果有必要需要在xxl-job中写清楚自己的ip和端口,特别在虚拟环境中需要写明ip和端口
4. 书写GLUE shell
写入内容,点击保存,随便输入:
5. 在10.0.0.2中书写/test.sh文件
6. 创建一个任务
- 注意选择我们的ES执行器,端口为4444的
- 注意选择运行莫斯为GLUE(shell)
7.调用任务,执行一次
日志提示执行成功。
8.到部署xxl-job路径下确实有一个test文件夹生成了
我的xxl部在/usr/local/xxl-job路径下。
9. 去看一眼/data/applogs/xxl-job/jobhandler/gluesource下的sh文件肯定和GLUE shell一样
实质上就是GLUE shell传过来的,修改 了个名字而已。
10. 总计
还是看这个图。代替总结了,很清楚了。
到此,整个xhell的xxl-lob调用就完成了。基于此可以结合shell完成N多种其他的需求,下面会介绍下基于xxl-job定时任务,定期删除elk中的es中的日志索引。
问题:如果你的xxl-job部署在k8s上我这里测试是不通过的,如果这个问题解决了我回出博客说明。目前是xxl-job执行器单独部署的,没有在k8s中部署。