kafka集群搭建

1、 准备3台机器

server1 192.168.16.130
server2 192.168.16.131
server3 192.168.16.132

2、安装Zookeeper

第一步:下载Zookeeper摈弃解压

tar -zxvf zookeeper-3.4.13.tar.gz 

第二步:修改zoo.cfg文件
在这里插入图片描述
第三步:修改Profile文件

vim /etc/profile
ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.10
JAVA_HOME=/usr/local/jdk1.8.0_131
JRE_HOME=/usr/local/jdk1.8.0_131/jre
export SCALA_HOME=/usr/local/scala-2.10.4
export KAFKA_HOME=/usr/local/kafka_2.9.1-0.8.2.2
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ZOOKEEPER_HOME/bin:$SCALA_HOME/bin:$KAFKA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$ZOOKEEPER_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH ZOOKEEPER_HOME
#让环境变量生效
source /etc/profile

第四步:机器标记myid

echo "1" > /usr/local/userdata/zookeeper/data/myid
echo "2" > /usr/local/userdata/zookeeper/data/myid
echo "3" > /usr/local/userdata/zookeeper/data/myid

第五步:启动和关闭

#启动
zkServer.sh start

#关闭
zkServer.sh stop

3、安装scala

tar -zxvf scala-2.12.6.tgz
ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.10
JAVA_HOME=/usr/local/jdk1.8.0_131
JRE_HOME=/usr/local/jdk1.8.0_131/jre
export SCALA_HOME=/usr/local/scala-2.10.4
export KAFKA_HOME=/usr/local/kafka_2.9.1-0.8.2.2
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ZOOKEEPER_HOME/bin:$SCALA_HOME/bin:$KAFKA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$ZOOKEEPER_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH ZOOKEEPER_HOME
source /etc/profile

4、安装kafka

第一步:修改改$KAFKA_HOME/config 目录下的server.properties文件
在三台机器上分别修改,这里用server1举例

#这个1就是和zookeeper的myid文件的1对应
broker.id=1
#填写3台机器的地址,中间用逗号隔开
zookeeper.connect=server1:2181,server2:2181,server3:2181
#host.name是当前机器的地址
host.name=192.168.16.131

第二步:启动kafka
每台机器分别执行

kafka-server-start.sh -daemon /usr/local/kafka_2.9.1-0.8.2.2/config/server.properties 

第三步:创建topic

#在leader上创建主题
kafka-topics.sh --create --zookeeper server1:2181,server2:2181,server3:2181 --replication-factor 3 --partitions 3 --topic WinterTop

#查看主题List
kafka-topics.sh --list --zookeeper server1:2181,server2:2181,server3:2181

#在leader上发送消息
kafka-console-producer.sh --broker-list server1:9092,server2:9092,server3:9092 --topic WinterTop

#在follower上消费消息
kafka-console-consumer.sh --bootstrap-server server1:9092,server2:9092,server3:9092  --from-beginning --topic WinterTop

5、kafka和Zookeeper

kafka在启动后,会将broker的信息存放在对应的zookeeper里的zNode中,默认存放在zookeeper中的路径 /broker/ids/xxx。
在这里插入图片描述
在这里插入图片描述

kafka的server.properties文件中指定zookeeper中的路径/kafka,那么对应的zNode也会在/kafka下创建 。
在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值