以http形式访问Kettle服务
在Kettle中创建好的Transformation、Jobs除了可以利用Spoon工具来执行外,还可以有其它的执行方式,如下:
- 命令行调用
- java 调用
- 服务调用
这里就简单介绍下如何以服务的形式来访问、执行配置好的Transformation、Jobs。这里要利用Carte工具,我们使用kettle来搭建集群的时候肯定要用到此工具的。
配置文件
确保在%Kettle_Home%/pwd
目录下存在这两个文件:
- carte-config-master-8080.xml
- kettle.pwd
截图中的另外几个配置文件可不要(除非你要搭建集群),carte-config-master-8080.xml
的名称中的8080
代表启动时的端口,可根据实际情况修改,对应的内容也要做出相应的修改。
用户名/密码设置
kettle.pwd
文件中存储的是服务器的用户名和密码(已加密),内容也可以根据实际使用情况修改。
服务器启动后,默认用户名为cluster
,密码为cluster
。如果你想修改用户名或密码,需要修改上述的kettle.pwd
配置文件,默认的配置如下
# Please note that the default password (cluster) is obfuscated using the Encr script provided in this release
# Passwords can also be entered in plain text as before
#
cluster: OBF:1v8w1uh21z7k1ym71z7i1ugo1v9q
cluster
是用户名,OBF:1v8w1uh21z7k1ym71z7i1ugo1v9q
是cluster
加密后的值。使用 Encr
工具可以用来生成密码,命令如下:
cd %Kettle_Home%
.\Encr -carte.bat your_password // 可以修改成你需要的密码,账号密码修改文件:kettle.pwd,账号可以随意修改,密码把生成的加密密码替换上去
启动服务
执行如下命令即可启动服务器、如下图:
.\Carte.bat localhsot 8080
访问http://localhost:8080/kettle/status/输入用户名/密码即可验证是否正常。
调用服务
启动成功后,就可以调用服务来执行一些操作了,这里给出一些调用作业、转换的方式
http://localhost:8080/kettle/executeTrans/?trans=转换名称.ktr
http://localhost:8080/kettle/executeJob/?job=作业名称.Kjb