carte集群的搭建笔记
原理
由一个主carte服务器和多个carte服务器组成,类似于master-slave结构,不同的是'master'不处理具体任务,只负责任务的分发和收集运行结果。Master carte节点收到请求后,把任务分成多个部分交给slave carte执行,slave执行完毕后把结果交给master进行汇总,再由master返回结果。
1.配置集群
1.1配置主服务器
打开kettle目录,找到pwd目录,里面有4个xml文件,分别是主服务器和子服务器的配置,以及密码文件:

主服务器的配置文件为carte-config-master-8080.xml,打开这个文件,修改成以下内容,注意,hostname必须填写主服务器的静态IP。

1.2配置从服务器
剩下的三个从服务器配置文件,以carte-config-8081.xml为例。打开该文件:

然后回到kettle主目录,打开命令行,输入:
>>./carte.sh localhost 8080
出现以下画面,主服务器创建完成,接着,我们来配置从服务器。


发现该文件有和两层标签,标签表示该服务器要连接的主服务器的信息,保持与carte-config-master.xml一致。标签是从服务器的信息,按照需要更改即可。
1.3启动各节点
然后回到kettle主目录,打开命令行,输入以下命令正常启动主服务器:
>>./carte.sh 172.16.2.222 8080
然后将kettle文件夹传输到从节点到服务器,尤其是主目录下pwd文件夹。
之后在从节点kettle文件夹下打开命令行输入以下命令:
>>./carte.sh 172.16.3.211 8081
2.建立集群
2.1在spoon中创建子服务器
先启动spoon,新创建一个转换。然后选择主对象树-子服务器,点击新建子服务器,然后填写必要信息。

然后按同样的方式建立子服务器的节点:

2.2 建立集群
在对象树中选择kettle集群schemas,填写schema名称、端口、sokects缓存大小、sockets刷新时间间隔、socketts数据是否压缩。
Schema名称即集群的名称。
端口即集群对外服务的端口。
sockets缓存大小:sockets缓存
Sockets刷新时间间隔:达到多少行记录时刷新到子服务器。
Sockets数据是否压缩:如果网络状态差,建议选择。
之后点击选择子服务器将集群节点加入到该集群中。

2.3执行转换
点击转换-->排序记录,建立一个排序记录节点,之后右键该节点,点击集群,选择集群后点确定。
此时,在排序记录上会多出一个标志,表示该排序记录有一个从服务器负责执行任务。


2.4集群执行
右键集群运行设置,如下:

2.5执行,查看结果
