Kettle集群搭建

Kettle集群

Posted by 冷小冰 on September 15, 2018

Kettle集群部署

伪分布式

环境准备

Linux:Centos7
JDK:jdk1.8.0_172
Kettle:pdi-ce-7.1.0.0-12.zip
下载地址:https://sourceforge.net/projects/pentaho/files/Data%20Integration/

安装Kettle

通过在一台服务器上设置不同端口号来配置Kettle伪分布式集群,8080为Kettle主服务器端口号,8081和8082分别为Kettle的两个从服务器。

1
2
3
4
#上传文件
cd /usr/kettle
#解压
tar -zxvf pdi-ce-7.1.0.0-12.zip

配置集群文件

1
2
3
4
5
6
7
8
9
#进入文件目录
>cd /usr/kettle/data-integration/pwd
>ls
---
carte-config-master-8080.xml #主服务器配置文件
carte-config-8081.xml        #从服务器配置文件
carte-config-8082.xml        #从服务器配置文件
carte-config-8083.xml        #从服务器配置文件
carte-config-8084.xml        #从服务器配置文件

这里使用前两个文件来配置两个子服务器,分别是slave1和slave2,还有一个集群账号密码文件kettle.pwd。 主服务器配置

1
2
3
4
5
6
7
8
9
10
<slave_config>
  <slaveserver>
    <name>master1</name>
    <hostname>172.19.93.216</hostname>
    <port>8081</port>
    <master>Y</master>
    <username>cluster</username>
    <password>cluster</password>
  </slaveserver>
</slave_config>

从服务器配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<slave_config>
  <!-- masters属性配置,必须与主服务器配置相同 -->
  <masters>
    <slaveserver>
      <name>master1</name>
      <hostname>172.19.93.216</hostname>
      <port>8081</port>
      <username>cluster</username>
      <password>cluster</password>
      <master>Y</master>
    </slaveserver>
  </masters>

  <report_to_masters>Y</report_to_masters>
  
<!-- slaveserver配置子服务器信息,注意slaveserver中的master属性值为N -->
  <slaveserver>
    <name>slave1-8082</name>
    <hostname>172.19.93.216</hostname>
    <port>8082</port>
    <username>cluster</username>
    <password>cluster</password>
    <master>N</master>
  </slaveserver>
</slave_config>

启动集群

1
2
3
4
5
6
7
#进入安装目录
cd /usr/kettle/data-integration
#启动主服务器
./carte.sh ./pwd/carte-config-master-8081.xml
#启动从服务器
./carte.sh ./pwd/carte-config-8082.xml
./carte.sh ./pwd/carte-config-8083.xml

测试

浏览器打开:http://172.19.93.216:8080

输入用户名/密码:cluster/cluster

1551324889477

1551324910458

至此,Kettle伪分布式集群环境已经搭建好。

全分布式

和伪分布式配置相同,只需要将从服务搭建到其他机器上就可以了。