Kafka集群的工作原理
Kafka集群主要由生产者(Producer)、消费者(Consumer)、Broker(代理节点)和Zookeeper组成。Producer负责将消息发送到Kafka集群的指定主题,Consumer通过订阅主题来消费消息;Broker是Kafka集群的核心节点,负责存储和管理消息,处理生产者和消费者的请求;Zookeeper则用于管理Kafka集群的元数据,如Broker节点的注册与发现、主题和分区的管理、消费者组的协调等,保证了集群的高可用性和一致性。多个Broker节点可以组成一个Kafka集群,通过分布式存储和处理,实现高吞吐量和水平扩展能力。
Kafka集群的搭建
集群环境准备
1、三台Zookeeper服务器用于搭建Zookeeper集群。
- Zookeeper1:Zookeeper服务器,IP地址为192.168.238.81。
- Zookeeper2:Zookeeper服务器,IP地址为192.168.238.82。
- Zookeeper3:Zookeeper服务器,IP地址为192.168.238.83。
2、三台Kafka服务器用于搭建Kafka集群。
- Kafka1:Kafka服务器,IP地址为192.168.238.84。
- Kafka2:Kafka服务器,IP地址为192.168.238.85。
- Kafka3:Kafka服务器,IP地址为192.168.238.86。
3、Zookeeper和Kafka由Java开发,所以运行前需要安装Java环境。

Zookeeper集群的搭建
1、在三台Zookeeper节点服务器上下载Zookeeper压缩包。

2、解压tar.gz压缩包。

3、将zookeeper目录移动至/usr/local下。

4、查看/usr/local/zookeeper目录。

5、在zookeeper目录下创建目录data和logs作于存放数据与日志。

6、将conf目录中的示例配置文件zoo_sample.cfg拷贝一份至zoo.cfg,作为默认集群配置文件。

7、修改配置文件conf/zoo.cfg。
7.1、修改数据存放目录,路径中的反斜杠(/)需要使用斜杠(\)进行转义。

7.2、新增日志存放目录及集群节点列表。server为节点定义,其后的数字为节点ID,端口2888为数据通信端口,3888为节点选举端口。

7.3、查看所有配置。

8、在每一个节点的data下创建节点ID文件myid,在其中输入节点的ID编号,ID编号要与配置文件中的节点ID保持一致。

9、启动每一个节点上的Zookeeper。

10、查看zookeeper节点的状态。

11、打开端口2181、2888、3888。

Kafka集群的搭建
1、在三台Kafka节点服务器上下载Kafka压缩包。

2、解压tar.gz压缩包。

3、将zookeeper目录移动至/usr/local下。

4、查看/usr/local/kafka目录。

5、在kafka目录下创建目录logs作于存放日志。

6、修改Kafka配置文件conf/server.properties。
6.1、修改Kafka节点的ID号,三台Kafka节点服务器ID需唯一。

6.2、修改日志目录。

6.3、修改Zookeeper列表。

6.4、新增监听地址与端口,地址为Kafka节点服务器IP,端口默认为9092。

7、启动每一个节点上的Kafka。

8、打开端口9092。

Kafka集群的测试
1、创建主题并查看。
1.1、创建主题。

1.2、查看主题。

2、发送与接收消息。
2.1、在一个Kafka节点上发送消息。

2.2、在另一个Kafka节点上接收消息。
