必赢手机app下载 / Blog / 必赢手机app下载 / 环境搭建,Kafka的单节点配置
图片 11

环境搭建,Kafka的单节点配置

Zookeeper+Kafka的单节点配置

环境描述:Ubuntu16.04
server系统,在系统上搭建Java环境,jdk的版本为1.8或更高,我的服务器IP地址为192.168.0.106。

 

1.
使用命令在根目录下的opt目录下创建data目录。

mkdir /opt/data

 

  1. 在Apache官网http://www.apache.org/dyn/closer.cgi/zookeeper/和https://www.apache.org/dyn/closer.cgi?path=/kafka/0.10.0.0/kafka_2.10-0.10.0.0.tgz

上下载zookeeper和kafka的压缩包,我下载的是zookeeper-3.4.10.tar.gz和kafka_2.11-0.10.1.0.gz。

 

3.
使用命令对zookeeper和kafka压缩文件进行解压,对解压后的文件进行改名和移动位置,移动到/opt/data目录下。

tar -zxvf zookeeper-3.4.10.tar.gz
tar -zxvf kafka_2.11-0.10.1.0.gz

图片 1

 

4.
使用命令增加zookeeper节点的IP如下附图所示。

vim /etc/hosts

图片 2

 

  1. 使用命令

    cd /opt/data/zookeeper/conf

进入zookeeper目录下的conf目录,使用命令

cp zoo_sample.cfg zoo.cfg

复制文件zoo.cfg,使用命令

vim zoo.cfg

修改该文件。同时,在/opt/data/zookeeper下创建data目录和logs目录,在/opt/data/zookeeper/data下创建文件myid,使用命令

echo 1 > myid

在文件myid中写入1。

 图片 3

 

============================================================================================================================================

在此zookeeper的配置已经完成。

============================================================================================================================================

 

  1. 使用命令

    vim /opt/data/kafka/config/server.properties

修改kafka的配置文件,同时使用命令

mkdir /opt/data/kafka/kafka-logs

创建目录,修改内容如下附图所示。

图片 4

图片 5

 

============================================================================================================================================

在此kafka的配置已经完成。

============================================================================================================================================

 

测试zookeeper和kafka的配置是否成功:

1.
启动zookeeper:在/opt/data/zookeeper目录下使用命令

bin/zkServer.sh start

启动zookeeper。使用命令

bin/zkServer.sh status

查看zookeeper的状态,如果现实如下图所示的状态表示zookeeper配置成功。

图片 6

 

 

2.启动kafka:在/opt/data/kafka目录下使用命令

bin/kafka-server-start.sh config/server.properties

启动kafka,显示以下信息为成功启动kafka。

图片 7

 

3.
创建会话topic:打开新的终端(我们暂记为终端1),在/opt/data/kafka目录下使用命令

bin/kafka-topics.sh --create --zookeeper 192.168.0.106:2181 --replication-factor 1 --partitions 1 --topic test1

创建会话test1,使用命令

bin/kafka-topics.sh --list --zookeeper 192.168.0.106:2181

查看会话列表,显示以下信息为成功创建会话。

图片 8

 

4.启动生产者Producer发消息:在/opt/data/kafka目录下使用命令

bin/kafka-console-producer.sh --broker-list 192.168.0.106:9092 --topic test1

启动消息生产者。

 

5.启动消费者Consumer接收消息:再打开一个新的终端(我们暂记为终端2),在/opt/data/kafka目录下使用命令

bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.106:9092 --from-beginning --topic test1

来接收消息。

 

6.在生产者Producer所在的终端1里随便输入一些内容,消费者Consumer所在的终端2将会实时的捕获终端1里发出的消息。如下表示成功建立会话,kafka和zookeeper的单节点配置圆满成功。

图片 9

图片 10

 

7.删除会话topic:在/opt/data/kafka目录下使用命令

bin/kafka-topics.sh --delete --zookeeper 192.168.0.106:2181 --topic test1

再使用命令

bin/kafka-topics.sh --list --zookeeper 192.168.0.106:2181

查看会话是否存在,如下图所示,表示会话test1删除成功。

图片 11

 

组件以及版本:

Zookeeper:zookeeper-3.4.11.tar.gz

Flume:apache-flume-1.7.0-bin.tar.gz

Kafka:kafka_2.11-0.11.0.0.tgz

1、安装Zookeeper

下载路径:http://zookeeper.apache.org/releases.html

https://www.apache.org/dyn/closer.cgi/zookeeper/

拷贝文件到对应主机

(1)cp or SSH Secure File Transfer Client

(2)解压缩 tar -zvxf zookeeper-3.4.11.tar.gz

(3)mv **** /opt/zookeeper

目录:

/bin    执行目录

/conf    配置目录

/lib    依赖包

(4)修改配置文件顺带添加一下data和log目录

/conf 目录下 有示例 zoo_sample.cfg,cp 到 zoo.cfg

tickTime=2000: Zk的基本单位时间,单位ms

initLimit =10集群模式下,Follower与Leader之间建立连接时的最大心跳间隔数

syncLimit =5集群模式下,Follower与Leader之间通信时的最大心跳间隔数

dataDir  存储数据目录

logDir    存储日志目录

ClientPort 端口号 默认2181

单机模式下只需要配置如上:(不确定initLimit和syncLimit是否可以不配置,但理解上应该可以)

集群模式下还需要配置服务器组:

server.x = ip:2888:3888

在对应服务器的data目录下要建立myid文件,内容为“x”

2888指这个服务器与Leader之间交换信息的端口

3888指选举Leader时所用的端口

集群模式剩下的以后再补充

(5)启动zookeeper

bin目录下的 zkServer.sh start 用于启动zookeeper服务

bin/zkServer.sh start

start可以换成stop status等其他命令

bin/zkCli.sh -server用于启动一个zookeeper客户端


2、安装Flume

下载路径:http://flume.apache.org/download.html

(1)基本步骤同上,解压缩,拷贝文件

(2)目录结构

/bin 执行文件目录

/conf  配置文件目录

/lib    依赖目录

/tools    辅助工具目录

(3)拷贝配置文件示例 flume-conf.properties.template 和
flume-env.sh.template

命名为 flume.conf 以及 flume-env.sh

flume.conf 配置 source、channel、sink等信息

flume-env.sh 配置启动信息

配置JAVA_HOME,如果用Linux自带Jdk,也可以不配置,可以直接使用

(4)启动 Flume

bin/flume-ng agent –conf conf –conf-flie flume.conf –name agent1
-Dflume.root.logger=INFO,console

–conf 配置文件目录

–conf-file 配置文件

–name agent名

-Dflume应该是定义一个变量,日志级别?(不确定)


3、安装Kafka

下载路径:http://kafka.apache.org/downloads

(1)基本步骤同上,解压缩,拷贝文件

(2)目录结构

/bin 执行文件目录

/config 配置文件目录

/lib    依赖目录

/logs 日志数据目录

(3)修改配置文件

server.properties

broker.id =  0

port = 9092

listeners = PLAINTERXT:// “ip:port”

配置个人搭建的 zookeeper 

zookeeper.connect = ip:port

zookeeper.connect.timeout.ms = 6000

修改 producer.properties 以及
consumer.properties 可以启动 produce和consumer对kafka的topic进行生产和消费

也可以直接在启动时直接带参数

搭建集群时,拷贝配置文件 修改broker.id、

(4)启动

//kafka start

/bin/kafka-server-start.sh server.properties &

//kafka 消费者

bin/kafka-console-consumer.sh –zookeeper “ip”:2181 –topic topic
–from-beginning

//kafka 生产者

bin/kafka-console-producer.sh –broker-list “ip”:9092 –topic topic


遇到的坑

在配置kafka的listener的时候没有用ip地址,而使用了localhost。而在Flume中用的是ip地址,因此出现Flume认不到Kafka的情况,无法生产到Kafka的Topic中

另外,修改配置文件的时候,我这里可以在window系统下改了再拷贝进去,方便一点,但不专业

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图