Zookeeper+卡夫卡的单节点配置

情形描述: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

www.512.net 1

 

4.
应用命令扩张zookeeper节点的IP如下附图所示。

vim /etc/hosts

www.512.net 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。

 www.512.net 3

 

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

在这里zookeeper的安排已经达成。

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

 

  1. 使用命令

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

改正kafka的配备文件,同有的时候候选拔命令

mkdir /opt/data/kafka/kafka-logs

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

www.512.net 4

www.512.net 5

 

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

在这里kafka的配备已经产生。

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

 

测量试验zookeeper和kafka的结构是或不是中标:

1.
开发银行zookeeper:在/opt/data/zookeeper目录下行义务令

bin/zkServer.sh start

运营zookeeper。使用命令

bin/zkServer.sh status

翻开zookeeper的气象,即便具体如下图所示的景观表示zookeeper配置成功。

www.512.net 6

 

 

2.运营kafka:在/opt/data/kafka目录下选择命令

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

起首kafka,彰显以下音讯为成功运维kafka。

www.512.net 7

 

3.
创制会话topic:打开新的终端(大家暂记为终点1卡塔尔(英语:State of Qatar),在/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

查阅会话列表,突显以下新闻为打响创造会话。

www.512.net 8

 

4.起步坐蓐者Producer发音讯:在/opt/data/kafka目录下使用命令

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

启航音信临蓐者。

 

5.起动消费者Consumer接收音信:再张开一个新的顶峰(我们暂记为顶峰2卡塔尔(英语:State of Qatar),在/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的单节点配置圆满成功。

www.512.net 9

www.512.net 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删除成功。

www.512.net 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=二零零一: 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

www.512.net,校勘 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认不到卡夫卡的气象,无法生育到卡夫卡的Topic中

其它,改正配置文件的时候,笔者这里可以在window系统下改了再拷贝进去,方便一点,但不伦不类