Kettle自定義JDK版本(附Linux下安裝部署步驟)


現需要在某台服務器上安裝Kettle8.3,但該機器的JDK版本是JDK1.7,因此需要為Kettle單獨指定 JAVA_HOME,方法如下:

vi  data-integration/set-pentaho-env.sh,顯式設置 JAVA_HOME。

 

 

 

kettle安裝部署步驟:

1. 將kettle安裝包上傳解壓,安裝完成之后,在kettle/data-integration下執行 ./kitchen.sh ,測試是否安裝完成,顯示幫助信息則表示安裝成功。

2. 將commons-codec-1.11.jar,mysql-connector-java-5.1.46包拷貝進入kettle安裝目錄下的lib文件夾下,由於在linux下,需將lib下的jar包全拷貝進入libswt/linux下的x86及x86_64;

cp -r /hsdata/kettle/data-integration/lib/* /hsdata/kettle/data-integration/libswt/linux/x86 cp -r /hsdata/kettle/data-integration/lib/* /hsdata/kettle/data-integration/libswt/linux/x86_64

3. 查找並配置.kettle的屬性文件(一般會在登錄用戶文件夾下,用ls -a 查看是否有.kettle隱藏文件夾,若沒有則需要copy上傳);

kettle.properties內容如下:

#數據文件輸出地址
FILE_OUTPUT_DIR={kettle文件夾絕對路徑}/business/data_sync
#轉換或作業文件地址
FILE_JOB_DIR={kettle文件夾絕對路徑}/job
#sftp上傳配置
SFTP_PATH={上傳文件夾的絕對路徑} (如:/home/zang/upload)
SFTP_IP={sftp的ip地址}
SFTP_PORT={sftp端口}
SFTP_USERNAME={sftp用戶名}
SFTP_PASSWORD={sftp密碼}
#mysql鏈接配置(信貸賬戶)
MYSQL_INPUT_IP={mysql的ip地址}
MYSQL_INPUT_PORT={mysql端口}
MYSQL_INPUT_USERNAME={mysql用戶名}
MYSQL_INPUT_PASSWORD={mysql密碼}
MYSQL_INPUT_DATABASE={mysql庫名} (默認值:asset)
#mysql鏈接配置2
MYSQL_INPUT_IP2={mysql的ip地址}
MYSQL_INPUT_PORT2={mysql端口}
MYSQL_INPUT_USERNAME2={mysql用戶名}
MYSQL_INPUT_PASSWORD2={mysql密碼}
MYSQL_INPUT_DATABASE2={mysql庫名} (默認值:tamcx)

4. 在kettle文件夾下,創建job(存放轉換或者作業文件),shells(存放執行腳本文件)business/data_sync(存放數據輸出文件)等3個文件夾;

如下:

通過編輯shells中腳本,讓其調度job下的dataAndCheckOutput.kjb作業,dataAndCheckOutput.kjb作業用於生成文件到business/data_sync,同時生成調度日志。

#!/bin/sh
export JAVA_HOME=/usr/java/jdk/jdk1.8.0_172
export JRE_HOME=/usr/java/jdk/jdk1.8.0_172/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
time=$( date  "+%Y-%m-%d")
/xxx/kettle/data-integration/kitchen.sh -file=/xxx/kettle/job/dataAndCheckOutput.kjb > /xxx/logs/kettle/kettle-$time.log

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM