本文主要是介绍续kettle项目传产后linux服务器调度问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
续前面开发好的kettle项目上传到了生产环境,如何将job执行起来
本文介绍使用shell调用kettle job实现数据调度功能。
主要功能:
1、使用shell调用kettle job
2、通过crontab定时调度shell
首先创建一个shell脚本,在存放kettle的data-integration的所在目录下,创建两个文件夹,一个是存放调度的shell脚本kettle_dispatch_shell,一个用来存放日志kettle_dispatch_log
接下来就是在kettle_dispatch_shell,通过vim job_dispatch.sh命令写shell脚本
#!/usr/bin/bash#判断日志文件夹是否存在,不存在则创建
#以天为单位保存日志
log_date_dir=`date '+%Y%m%d_log'`log_dir=/data/kettle/kettle_dispatch_log/$log_date_dir#echo $log_dir#判断日志文件目录是否存在
if [ -d $log_dir ];thenecho $log_dir exists!else
#日志目录不存在则创建
mkdir $log_dirfi#执行读取到的JOB,需配置连接kettle的用户名 密码,指定日志存储位置
/data/kettle/data-integration/./kitchen.sh -rep=kettle_orp -user=admin -pass=admin -level=Basic -dir /JOB -job=dispatch_job >$log_dir/"dispatch_job"
然后我们直接通过sh job_dispatch.sh执行看是否执行报错,没问题后我们开始通过crontab定时调度shell
首先你需要看下是否安装crontab和是否开启
然后 crontab -e 编辑
SHELL=/usr/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/
#*/5 * * * * /usr/sbin/ntpdate ntp.aliyun.com
00 05 * * * /data/kettle/kettle_dispatch_shell/job_dispatch.sh
以上为完成流程,实现了定时调度kettle job
这里有几个注意事项
crontab在写shell路径的时候也需要使用绝对路径,配置环境SHELL、PATH、HOME等
参考文献:
Kettle调度实现
这篇关于续kettle项目传产后linux服务器调度问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!