您的当前位置:首页正文

Kafka集群部署

来源:九壹网

4.3实战案例——Kafka集群部署

4.3.1 案例目标

(1)了解Kafka分布式发布订阅消息系统。

(2)搭建Kafka分布式发布订阅消息系统。

(3)使用Kafka分布式发布订阅消息系统。

4.3.2 案例分析

1.规划节点

Kafka集群的节点规划,见表4-3-1。

表4-3-1节点规划

IP

主机名

节点

172.16.51.23

zookeeper1

集群节点

172.16.51.32

zookeeper2

集群节点

172.16.51.41

zookeeper3

集群节点

2.基础准备

使用ZooKeeper集群搭建的3个节点来构建Kafka集群,因为Kafka服务依赖于ZooKeeper服务,所以不再多创建云主机来进行试验。软件包使用提供的kafka_2.11-1.1.1.tgz软件包。

4.3.3 案例实施

搭建Kafka集群
(1)解压Kafka软件包

# tar -zxvf kafka_2.11-1.1.1.tgz

(2)修改3个节点配置文件

在配置文件中找到以下两行并注释掉(在文本前加#)如下所示:

#broker.id=0

#zookeeper.connect=localhost:2181

然后在配置文件的底部添加如下3个配置。

zookeeper1节点:

broker.id=1

zookeeper.connect=172.16.51.23:2181,172.16.51.32:2181,172.16.51.41:2181

listeners = PLAINTEXT://172.16.51.23:9092

命令解析:

l broker.id:每台机器不能一样。

l zookeeper.connect:因为有3台ZooKeeper服务器,所以在这里zookeeper.connect设置为3台。

l listeners:在配置集群的时候,必须设置,不然以后的操作会报找不到leader的错误。

另外两台服务器,zookeeper.connect的配置跟这里的一样,但是broker.id和listeners不能一样。

zookeeper2节点:

broker.id=2

zookeeper.connect=172.16.51.23:2181,172.16.51.32:2181,172.16.51.41:2181

listeners = PLAINTEXT://172.16.51.32:9092

zookeeper3节点:

broker.id=3

zookeeper.connect=172.16.51.23:2181,172.16.51.32:2181,172.16.51.41:2181

listeners = PLAINTEXT://172.16.51.41:9092

启动服务需要权限用chmod命令在增加权限

(3)启动服务

zookeeper1节点:

[root@zookeeper1 bin]# ./kafka-server-start.sh -daemon ../config/server.properties

[root@zookeeper1 bin]# jps

11416 Kafka

11464 Jps

10479 QuorumPeerMain

zookeeper2节点:

[root@zookeeper2 bin]# ./kafka-server-start.sh -daemon ../config/server.properties

[root@zookeeper2 bin]# jps

11121 Kafka

11188 Jps

10175 QuorumPeerMain

zookeeper3节点:

[root@zookeeper3 bin]# ./kafka-server-start.sh -daemon ../config/server.properties

[root@zookeeper3 bin]# jps

11080 Kafka

10188 QuorumPeerMain

11149 Jps

(4)测试服务

zookeeper1节点:

[root@zookeeper1 bin]# ./kafka-topics.sh --create --zookeeper 172.16.51.23:2181 --replication-factor 1 --partitions 1 --topic test

Created topic "test".

如果成功的话,会输出“Created topic "test".”。

zookeeper2节点:

[root@zookeeper2 bin]# ./kafka-topics.sh --list --zookeeper 172.16.51.32:2181

test

zookeeper3节点:

[root@zookeeper3 bin]# ./kafka-topics.sh --list --zookeeper 172.16.51.41:2181

test

测试成功。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top