利用kettle远程调用linux平台的shell脚本
两个平台都配置好kettle
1、在job的view处
右键点击slave server,进行新建子服务器
server name自己命名一个
输入linux子服务器IP,还有端口(这个端口也是子服务器carte服务的端口)
username写cluster
password写cluster
2、在子服务器中开启carte
在子服务器中执行carte.sh 180.200.2.36 9099即可开启carte服务,这个服务将会接受远程执行的请求,然后在本机执行。
需要注意的是后面的端口要和slave server设置的一致,例如本例子都是9099
3、远程执行job
在图形界面中,可以选择
执行就可以了,这个问题不大
但是在命令行中执行令人十分头痛,可以设计一个子job,在job的属性处设置远程执行
用kitchen.sh(bat) -file=XXX命令执行
这样执行的话,问题至今未知道怎么解决,本机的主服务器windows系统,而子服务器是linux系统的情况下,用命令行执行这个job的话,会报xml有无效字符的错误。
不过如果主服务器和子服务器都是linux系统下用命令行远程执行的话,子JOB在子服务器中执行成功
两个平台都配置好kettle
1、在job的view处
右键点击slave server,进行新建子服务器
server name自己命名一个
输入linux子服务器IP,还有端口(这个端口也是子服务器carte服务的端口)
username写cluster
password写cluster
2、在子服务器中开启carte
在子服务器中执行carte.sh 180.200.2.36 9099即可开启carte服务,这个服务将会接受远程执行的请求,然后在本机执行。
需要注意的是后面的端口要和slave server设置的一致,例如本例子都是9099
3、远程执行job
在图形界面中,可以选择
执行就可以了,这个问题不大
但是在命令行中执行令人十分头痛,可以设计一个子job,在job的属性处设置远程执行
用kitchen.sh(bat) -file=XXX命令执行
这样执行的话,问题至今未知道怎么解决,本机的主服务器windows系统,而子服务器是linux系统的情况下,用命令行执行这个job的话,会报xml有无效字符的错误。
不过如果主服务器和子服务器都是linux系统下用命令行远程执行的话,子JOB在子服务器中执行成功