(1)介绍

以下为Kettle中包含的多个程序:
Spoon:集成开发环境,一般情况下开发Job和转换都用这个。
Kitchen:作业的命令行运行程序。
Pan:转换的命令行运行程序。
Carte:轻量级的HTTP服务器(基于Jetty),后台运行,监听HTTP请求来运行一个作业。其也用于分布式和协调跨机器执行作业,也就是Kettle的集群。

(2)相关配置文件

jdbc.properties
保存在simple-jndi目录下,这个文件用来存储JNDI连接对象的连接参数。Kettle可以用JNDI的方式来引用JDBC连接参数,如IP地址、用户认证,这些连接参数最终用来在转换和作业中构造数据库连接对象。

kettle.properties
通用的保存Kettle属性的文件。

repositories.xml
Kettle可以通过资源库管理转换、作业和数据库连接这样的资源。

shared.xml
Kettle里有一个概念叫共享对象,其类似于转换的步骤、数据库连接定义、集群服务器定义等这些可以一次定义,然后在转换和作业里多次引用的对象。

(3)启动carte

kettle支持Carte服务级部署模式,即服务器后台会跑一个常驻Carte程序,job/trans都运行在这个服务里。Carte是一个轻量级的web服务,允许远程请求HTTP进行监控、启动、停止在Carte服务上运行的job和trans。运行Carte的服务器在kettle术语里称为slave server。

【第一步:修改配置文件】
找到根目录/pwd/carte-config-master-8080.xml文件,修改mater节点配置,其中hostname填写本地IP,port表示服务监听的端口

<slaveserver>
    <name>master1</name>
    <hostname>192.168.31.81</hostname>
    <port>30145</port>
    <master>Y</master>
  </slaveserver>
</slave_config>

【第二步:配置资源库】
一般情况下会在windows下开发,然后部署到Linux执行,那么俩个环境都需要配置KETTLE_HOME的路径,然后配置repositories.xml数据库连接信息
在这里插入图片描述
【第三步:部署启动】
Windows下启动方式:
Kettle当前目录打开cmd窗口,输入下列命令

carte.bat   ip  port    
##  例如:  carte.bat  127.0.0.1 8081 

Linux下启动方式

nohup ./carte.sh pwd/carte-config-master-8080.xml  >  app.log 2>&1 & 

【第四步:监控状态和远程执行】
输入以下URL即可查看目前运行的Job,密码默认未cluster/cluster
http://ip:port/kettle/status/

当我们在本地开发完成之后,保存到资源库中,就可以根据路径名进行远程执行发布

在这里插入图片描述
如上图所示,假设当前有这样的JOB,那么就可以通过下面命令开启这个JOB

http://192.168.208.31:30145/kettle/executeJob/?rep=kettle&user=admin&pass=admin&job=/demo/test

在这里插入图片描述
执行成功后会返回类似XML描述信息
在这里插入图片描述
查看状态信息
在这里插入图片描述
在这里插入图片描述

Logo

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

更多推荐