Kettle自身调度

在主调度作用的start上设置作业的定时调度后启动该调度即可
需要时刻保持kettle打开,以及资源库连接,不建议使用
在这里插入图片描述

Windows定时任务调度

在kettle部署的Windows采集机器上设置Windows定时任务执行kettle的bat文件即可
Bat文件内容如下

@echo off
rem 选择自己安装的kettle目录,示例为D:\kettle\data-integration
D:
cd D:\kettle\data-integration
rem 默认读取的是C盘用户目录下的.kettle文件夹中的repositories.xml
rem 若上述的.kettle目录做过处理,需先设置环境变量[set KETTLE_HOME=.kettle目录路径];若没有动过则无需变化
Kitchen.bat -rep=资源库名称 -user=资源库的用户名 -pass=资源库的密码 -dir=要执行的作业所在资源库的目录(/ETL/) -job=执行作业的名称(不用带后缀) -level=basic>D:\kettle\job.log
exit

各项参数说明
-rep:资源库名称
-user:资源库的用户名
-pass:资源库的密码
-dir:要执行的作业所在资源库的目录
-file:执行作业的名称(不用带后缀)
-Level:日志级别及日志目录输出

Linux定时任务调度

Linux部署kettle

Kettle安装需先安装好jdk1.8
注意用户权限

kettle安装包上传

进入linux服务器先建立kettle的目录
示例:mkdir /home/kettle
然后将kettle安装包上传至此目录,并解压【unzip pdi-ce-9.1.0.0-324.zip】

数据库连接驱动上传

进入刚才安装好的kettle目录【cd data-integration/lib】,进入kettle的lib库目录,将自己需要的数据库驱动放置进去,数据库驱动自己下一下

配置环境变量

用哪个用户就去调整该用户根目录底下的环境变量即可
进入用户的根目录【cd ~】,然后编辑用户的.bash_profile文件
在其中添加
#kettle
KETTLE_HOME=kettle的安装目录(例如我的是/home/kettle)
PATH=$PATH:kettle的目录(例如我的是/home/kettle/data-integration)

添加完成后,执行【source .bash_profile】,使配置生效

验证安装是否成功

进入kettle的安装目录下【cd kettle/data-integration/】,执行【kitchen.sh】校验kettle是否安装成功

Linux配置kettle资源库

检查.kettle目录

在上一步执行了【kitchen.sh】后,会在用户的根目录下生成.kettle文件夹

准备资源库配置文件

在windows编辑kettle时(见上篇Kettle资源库新建和初始化配置),连接过资源库,因此在windows电脑上面已有资源库的链接配置repositories.xml
路径在windows的用户目录下的.kettle文件夹里

将此文件复制一份,并编辑修改此文件内容(数据库地址及用户密码调整确认)

注意需要将文件格式转为linux下的格式
在这里插入图片描述

将调整好的文件上传到linux服务器上的.kettle文件夹下

注意上传后,将文件权限调整为执行用户

Linux调度kettle采集

目录准备

在/kettle下新建一个job目录,用来存放编写的调度作业;新建一个log目录,用来存放调度作业生成的日志

注意文件夹权限调整为执行用户

编辑调度文件

进入刚才新建的job目录下
生成一个采集的调度文件,和上面的windows的类似,只是执行文件为kitchen.sh,示例

../data-integration/kitchen.sh -rep=资源库名称 -user=资源库的用户名 -pass=资源库的密码 -dir=要执行的作业所在资源库的目录(/ETL/)  -job=执行作业的名称(不用带后缀) -level=basic>/home/kettle/log/JOB.log 2>&1 &
exit

-rep:资源库名称,P6标准版的为pdev_kettle,改为现场的即可,对应的是上述Linux配置的kettle资源库
-user:资源库的用户名
-pass:资源库的密码
-dir:要执行的作业所在资源库的目录
-file:执行作业的名称(不用带后缀)
-Level:日志级别及日志目录输出,输出到刚才新建的log目录下

编辑完成后,设置该文件权限为777【chmod 777 job.sh】

执行新建的采集调度文件

通过【./job.sh】命令执行采集调度文件
通过【ps -ef|grep kettle】命令查看正在进行的调度任务
通过【kill -9 进程号】结束调度任务

查看日志

进入刚才新建的log目录下,可查看对应的作业日志

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐