kafka搭建_CentOS7下简单搭建zookeeper+kafka集群

078df9e66c30d38a8284f27128395878.png
de1e3b9cfa7d0edeb3bab9d7eace8a3b.png
224a1617c17485058ee2b5591307320e.png
f06148bae19a607c504e09cce4cc8e7b.png

如下图所示

89c20c129b800fe53400547886ae1a09.png

三台CentOS7的机器来搭建zookeeper+kafka集群

192.168.31.221 node1 node1.walkingcloud.cn

192.168.31.222 node2 node2.walkingcloud.cn

192.168.31.223 node3 node3.walkingcloud.cn

一、环境搭建

1、三台机器均修改/etc/hosts

18036a577f1aa531b3d825db8800267f.png

2、配置互信

ssh-keygen

ssh-copy-id root@node2

ssh-copy-id root@node3

如果有必要的话,三台机器间两两互信

bada4f9207b3829f94b9097f3e5cf5f2.png
14d27a8d2af0b98f06fc2a830cd2d94e.png

3、提前下载JDK,zookeeper,kakfa的相关安装包,并上传到/opt目录

如下图所示

scp /opt/* root@node2:/opt

scp /opt/* root@node3:/opt

284b7e0f1e7e5169fc8f921b8e93cf45.png

二、每台机器都安装JDK环境,并配置好环境变量

1、安装JDK

rpm -ivh jdk-8u251-linux-x64.rpm

9935121f96d87d4eb749c7d29d5e047e.png

2、配置环境变量vi /etc/profile,将如下三行加到最后

export JAVA_HOME=/usr/java/jdk1.8.0_251-amd64

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

3、使环境变量生效source /etc/profile

52b6bc8557c84211792b01bc8e0f8f6c.png

三、安装zookeeper,配置zookeeper

1、三个节点均解压zookeeper安装包

cd /opt

tar -zxf apache-zookeeper-3.6.0-bin.tar.gz

mv apache-zookeeper-3.6.0-bin zookeeper

cd zookeeper

mkdir data

cd conf

cp zoo_sample.cfg zoo.cfg

38e8d98fe571203bfa53b7c2eba80bb2.png

2、配置zoo.cfg

vi zoo.cfg

修改日志保存目录

dataDir=/opt/zookeeper/data

#server.服务编号=服务地址、LF通信端口、选举端口

server.221=node1:2888:3888

server.222=node2:2888:3888

server.223=node3:2888:3888

f1e4d60e633703a577158da94fe2f219.png

配置同步到node2和node3

scp zoo.cfg root@node2:/opt/zookeeper/conf/

scp zoo.cfg root@node3:/opt/zookeeper/conf/

17125bb2c52876627cb95e8e8239623f.png

3、配置/data/myid文件,写入服务器ID

cd5bb9a28a599c3e4a5af6857a59922d.png

node1的id设置为221

node2的id设置为222

node3的id设置为223

4、三台均修改变量/etc/profile

vi /etc/profile,在最后面加一行

export PATH=$PATH:/opt/zookeeper/bin

然后 source /etc/profile

并验证zkServer.sh命令是否可以正常调出来

1eb99dd8e1f8fa0e11381cab14cd7e8f.png

5、三个节点均启动zookeeper

zkServer.sh start

d9b09c2fcc4a8d3cd79402e9205f29d3.png

查看状态zkServer.sh status

8c34be07e0da3ee73009f8fcd758a07a.png

可以看到node1和node2为follower

node3为leader

四、三个节点均安装kafka,配置kakfa

1、node1上解压kafka安装包

cd /opt

tar -zxf kafka_2.13-2.5.0.tgz

mv kafka_2.13-2.5.0 kafka

cd kafka

cd config

cp server.properties server.properties_default

441de4cf021b1928c170dfdc45e126d8.png

2、创建data目录

68086defe104d870a080d6fbeecae8d7.png

3、修改kakfa配置文件

vi server.properties

f2a251250d018db91c95049204a280e7.png

1)broker.id

c74d78ee01c348fd745daaaaf6c848aa.png

2)log.dir目录指定

log.dirs=/opt/kafka/data

88f5577d9410db10afe2693e6bb8442c.png

3)zookeeper连接信息

zookeeper.connect=node1:2181,node2:2181,node3:2181

3c29fde95f4a001277a94fc16d445ed9.png

4、node1将kafka整个目录进行文件scp同步,同步到node2和node3上

cd /opt/

scp -r kafka root@node2:/opt/

scp -r kafka root@node3:/opt/

然后再去node2,node3上手动修改server.properties中broker.id分为222和223

5、修改环境变量,加入kafkar的bin目录

vi /etc/profile最后一行添加:/opt/kafka/bin

export PATH=$PATH:/opt/zookeeper/bin:/opt/kafka/bin

source /etc/profile

1efccfab64b4c81710c738b0fd7b7f57.png

scp /etc/profile root@node2:/etc

scp /etc/profile root@node3:/etc

在节点node2,node3上source /etc/profile

6、三个节点启动kafka

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

先前台的方式启动kakfa-server,后期改用后台或者服务脚本的方式启动kafka

0926ef6854dd3e7748700c8743fac55f.png

7、再开其它会话窗口测试topic

c1707636289986c119da4e02a8a402c4.png

创建topic

kafka-topics.sh --create --zookeeper node1:2181 --partitions 2 --replication-factor 3 --topic yuanfantest

列出topic

kafka-topics.sh --list --zookeeper node1:2181

查看topic描述

kafka-topics.sh --zookeeper node1:2181 --topic yuanfantest --describe

90929db2b20ae4af6e11ba2600660b04.png

8、测试主题的生产与消费

如下图所示,利用console在node1上生产,在node3消费的效果

node1上生产:kafka-console-producer.sh --bootstrap-server node1:9092 --topic yuanfantest

node3上消费:kafka-console-consumer.sh --bootstrap-server node3:9092 --topic yuanfantest

ca277d6174c393809959c45fb509d0d2.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值