一,kettle安装
1.1 安装JDK
官网地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
#安装jdk
1,解压缩
tar -zvxf jdk-8u201-linux-x64.tar.gz
2,修改系统配置信息
vi ~/.bash_profile
# 添加javahome信息
JAVA_HOME=/home/apps/jdk1.8.0_201
PATH=$PATH:$HOME/bin:$DATAX_HOME/bin:$JAVA_HOME/bin
source ~/.bash_profile
3,验证配置
java -version
1.2 下载 kettle
官网地址:https://community.hitachivantara.com/s/article/data-integration-kettle
二,服务端部署
#yum安装
yum install zip unzip
#rpm安装
rpm -ivh zip-3.0-11.el7.x86_64.rpm
rpm -ivh unzip-6.0-20.el7.x86_64.rpm
#解压缩
unzip pdi-ce-8.3.0.0-371.zip
cd data-integration/
#配置kettle
mkdir /home/apps/etl
cd /home/apps/etl
mkdir job kettle logs shells
#上传kettle job文件至job目录
mv jobs.zip etl/job/
#上传数据库依赖jar包 oracle使用ojdbc7.jar
mv ojdbc7.jar ./etl/kettle/lib/
#建立jdk目录软连接
ln -fs /home/apps/jdk1.8.0_201/bin /usr/bin
编写shell
#!/bin/bash
cd /home/apps/etl/kettle
./kitchen.sh -file=/home/apps/etl/job/SuperviseSync/manual_mainjob.kjb -level=debug >> /home/apps/etl/logs/etl_$(date +%Y%m%d).log
添加系统定时任务
vi /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
*/20 * * * * root /etc/profile;sh /home/apps/etl/shells/run_crontab.sh
*/20 * * * * root /etc/profile;sh /home/apps/etl/shells/run_crontab_2.sh
#重新加载crond服务
systemctl reload crond.service
#重启crond服务
systemctl restart crond.service