续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 ];

then

echo $log_dir exists!

else
#日志目录不存在则创建
mkdir $log_dir

fi

#执行读取到的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调度实现

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值