天天看點

Centos7安裝kettle

環境

centos7

jdk1.8.141

kettle7.1

  1. 确定本地已配置好java1.8環境,将kettle安裝包複制到linux目錄下,unzip解壓
               
  2. 運作 ./kitchen.sh 可以看到相關指令說明環境配置無誤,
               
  3. 如顯示BASH:/ kitchen.sh的:權限被拒絕,需要給.sh檔案執行權限
               

指令為:chmod a+x *.sh

  1. 在建立kettle項目前,檢查是否已将需要用到的資料庫JDBC包放置到kettle目錄lib檔案下
               
  2. 可以在windows中編輯好項目所需的ktr、kjb檔案,複制到centos7中
     手動執行job指令:./kitchen.sh -file=/opt/kettle/testjobs/testJob.kjb
               
  3. 用vi指令打開kjb檔案,将檔案中的ktr相對位址改為centos中的位址
               
  4. 運作sh ./kitchen.sh –file=/opt/kettle/testjob/testJob.kjb,測試在centos環境下運作無誤
               
  5. 建立 .sh 檔案 touch schedule.sh
               

運作 chmod a+x *.sh 賦予權限

運作vi test.sh 建立.sh檔案,因為定時任務crond不能調用自定義環境變量,使用kettle時必須申明java環境

export JAVA_HOME=/usr/jdk1.8.0_201

export CLASSPATH=.: J A V A H O M E / l i b / d t . j a r : JAVA_HOME/lib/dt.jar: JAVAH​OME/lib/dt.jar:JAVA_HOME/lib/tools.jar

export PATH= P A T H : PATH: PATH:JAVA_HOME/bin

/opt/kettle/kitchen.sh -file=/opt/kettle/testjob/testJob.kjb log=log.timelog ~data +%y%m%d(注意此處為鍵`不是單引号’)

(若有多個任務,就建立多個.sh檔案,如test2.sh,并在編輯定時任務時單獨配置)

  1. 儲存後,運作chmod a+x *.sh給schedule.sh添加執行權限

10.運作 crontab -e 編輯定時任務

*/5 * * * * bash /opt/kettle/test.sh 表示每隔5分鐘執行一次test.sh

  1. 儲存後,運作 crontab -l 檢視定時任務是否已載入
  2. 運作 systemctl restart crond 重新開機定時任務,運作 systemctl status crond 檢視crontab服務狀态
  3. 在資料庫檢視kettle任務是否正确執行

繼續閱讀