历史版本29 :部署Kafka:ZooKeeper模式 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

FineDataLink 支持使用 Kafka 作为数据同步的中间件,暂存来源数据库中的数据,便于目标数据库写入数据,实现实时数据同步。

因此 本文介绍如何部署 Kafka 开源流处理平台,以便后续配置数据管道任务

注:此示例为 Linux 系统下部署 Kafka。

2. 前提条件编辑

  • Kafka 运行需要 Java 环境,因此需要确保服务器中已经指定了可使用的 Java 环境(指定 JAVA_HOME环境变量)。注:jdk版本 1.8。

注:若 kafka 和 FineDataLink 部署在同一个服务器上,可以使用同一个 JAVA 环境,操作步骤如下:

etc/profile 文件中配置 java环境,增加如下内容:

export JAVA_HOME=%FineDataLink%/jdk/jre
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar

并执行source /etc/profile保存,使修改立即生效。

3. 操作步骤编辑

点击下载安装包:Kafka 安装包

3.1 解压安装包

上传 kafka 安装包。

注:可以将 Kafka 安装在任意Linux 环境中,如果Kafka 和FDL不在一台服务器上,Kafka就需要进行一些单独配置实现 Kafka 的跨服务器访问,可参见 增加配置

使用命令 tar zxvf kafka安装包文件名.tgz 解压安装包,例如如下图所示:

注:(请勿直接在windows环境下解压后,进行文件上传,这样会造成文件被修改,常见报错:/bin/bash^M: 坏的解释器: 没有那个文件或目录)

3.2 修改 Kafka 存储数据的目录

Kafka 在使用时需要存储数据到指定文件夹,因此需要新建文件夹用来存放暂存在 Kafka 中的数据。

注:建议文件夹新建在服务器中磁盘空间相对大的位置。

示例在 /data 目录下新建:kafka-logs,如下图所示:

打开 Kafka 安装目录下的 config 文件中的 server.properties 文件,找到 log.dirs=,修改数据存储位置,把等于号后边的值替换为创建好的给 Kafka 保存数据的目录,修改之后保存。如下图所示:

注1:如果kafka和fdl一台服务器,kafka默认localhost访问,不用修改server.properties。如果kafka跨服务器,则需要修改server.properties的listeners,修改为ip访问,详情参见增加配置

注2:Kafka配置中无需指定topic,FineDataLink会自动创建,每张表对应一个topic。

3.3 启动 Kafka

1)启动 zookeeper

由于 kafka 服务依赖于zookeeper 服务,使用 kafka 自带的 zookeeper,进入 Kafka 目录,使用命令:cd /.../kafka_2.13-2.8.1

执行命令启动 zookeeper。

nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zk.log 2>&1 & 

2)查看 Kafka 运行状态

执行命令 ps -ef|grep zookeeper 查看是否启动成功。 若显示类似如下 18300 的进程号的记录,则表示启动成功。

3)启动 Kafka

执行 nohup bin/kafka-server-start.sh config/server.properties > kafka.log 2>&1 & 

4)查看 zookeeper 运行状态

执行命令 ps -ef|grep kafka 查看是否启动成功。 若显示类似如下 18300 的进程号的记录,则表示启动成功。

注:关闭 Kafka 步骤为先关闭 Kafka,再关闭 zookeeper,命令详情见本文第5节。

4. 后续步骤编辑

安装部署好 Kafka 后,即可在 FinedataLink 中配置传输队列

5. 运维命令编辑

注:关闭 Kafka 步骤为先关闭 Kafka,再关闭 zookeeper。

5.1 关闭 Kafka

进入 kafka目录下,执行 ps -ef|grep kafka,即可查看到 Kafka 的进程号,如下图所示:

然后 kill -9 进程号,即可关闭。

5.2 关闭 zookeeper

进入 kafka 目录下,执行ps -ef|grep zookeeper即可查看到 zookeeper 的进程号,如下图所示:

然后 kill -9 进程号,即可关闭。