搭建kafka集群

前言:

按照kafka的文档,搭建一个三个host的集群。当然和kafka的文档还是有区别的:

     1). 未使用kafka自带的zookeeper

     2). kafka文档是一个host的三个进程, 这里是使用三个host(vm),每个host运行一个kafka

     准备:

           三个vm,分别为node1, node2, node3。 centos 7.3 (之前在弄docker,所以就用了7.3的版本)

           /etc/hosts(三个vm)

192.168.1.121  node1
192.168.1.122  node2
192.168.1.123  node3

 

Let's GO!

一. 搭建ZooKeeper集群

zookeeper集群相对简单,要准备两个文件:

       conf/zoo.cfg, myid(所在目录由conf/zoo.cfg里的dataDir来指定)

conf/zoo.cfg

dataDir=/data/zookeeper
...
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888

 node1: /data/zookeeper/myid

1

node2: /data/zookeeper/myid

2

node3: /data/zookeeper/myid

3

启动(三台vm都启动)

 # bin/zkServer.sh start

查看zookeeper是leader还是follower

# bin/zkServer.sh status
# Mode: leader( or follower) 

关闭

# bin/zkServer.sh stop

 


二.搭建kafka集群
解压,

# tar zvxf kafka.....tar.gz


三台vm都创建目录 /data/kafka-log:

# mkdir /data/kafka-log

 

配置文件 config/server.properties

  node1:

broker.id=1
listeners=PLAINTEXT://node1:9092
log.dir=/data/kafka-log
zookeeper.connect=node1:2181,node2:2181,node3:2181

node2:

broker.id=2
listeners=PLAINTEXT://node2:9092
log.dir=/data/kafka-log
zookeeper.connect=node1:2181,node2:2181,node3:2181

node3:

broker.id=3
listeners=PLAINTEXT://node3:9092
log.dir=/data/kafka-log
zookeeper.connect=node1:2181,node2:2181,node3:2181


启动kafka不需要指定zookeeper, 三台vm

bin/kafka-server-start.sh config/server.property &

因为vm内存1G, kafka-server-start.sh默认为1G, 所以启动显示内存不足,改 bin/kafka-server-start.sh:

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
fi

这样三台vm就启动了。

建topic

bin/kafka-topics.sh --create --zookeeper node1:2181,node2:2181,node3:2181 --replication-factor 2 --partitions 1 --topic my-replicated-topic
Created topic "my-replicated-topic".


看了一下zookeeper, topic保存在zookeeper的 /brokers节点

向topic输入数据:

bin/kafka-console-producer.sh --broker-list node1:9092,node2:9092,node3:9092 --topic my-replicated-topic
> my test message 1
> my test messsage 2
> this is a test message

ctrl + c 退出


消费者取出数据:

bin/kafka-console-consumer.sh --bootstrap-server node3:9092  --from-beginning --topic my-replicated-topic
...
my test message 1
my test messsage 2
this is a test message

 

流水帐似的记录,只为忘了的时候,看一眼,提个醒。



转载于:https://www.cnblogs.com/bear129/p/8593860.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值