Kafka-安装使用

Kafka-安装使用

kafka使用zookeeper保存broker的元数据,所以安装kafka之前需要先安装zookeeper

1.准备安装包,解压

此处使用 zookeeper-3.4.9

2.编辑配置文件

在zookeeper根目录下,新建一个数据文件夹data(我用的tmp),并且在该目录中创建一个myid的文件,用于指明自己的ID(此值为整数即可,后边会用到此值,每个机器对应一个值)

修改conf/zoo.cfg文件

在这个配置中,initLimit表示用于在从节点与主节点之间建立初始化连接的时间上限

syncLimit表示允许从节点与主节点处于不同步状态的时间上限

这两个值都是tickTime的倍数,所以initLimit是 20 * 2000ms,也就是40s.

配置里还列出了群组中所有服务器的地址,服务器地址遵循server.X=hostname:peerPort:leaderPort格式

X:服务器的ID,它必须是一个整数,不过不一定从0开始,也不要求是连续的,上述myid中的值

Hostname:服务器的机器名或IP地址

peerPort:用于节点间通信的TCP端口

leaderPort:用于首领选举的TCP端口。

客户端只需要通过clientPort就能连接到群组,而群组节点间的通信则需要同时用到这三个端口(peerPort\leaderPort\clientPort)

zookeeper集群被称为群组(Ensemble),zookeeper使用的是一致性协议,所以建议每个群组里应该包含奇数个节点(比如3个、5个等),因为只有当群组里的大多数节点处于可用人数,zookeeper才能处理外部的请求。

3个节点的群组和4个群组的节点允许失效的节点数都是1个,所以3个节点和4个节点起到的作用是一样的。

假设有一个包含5个节点的群组,如果要对群组做一些包括更换节点在内的配置更改,需要依次重启每一个节点。如果群组无法容忍多个节点失效,那么在进行群组维护时就会存在风险。

建议一个群组的节点数不超过7个,因为zookeeper使用了一致性协议,节点过多会降低整个群组的性能。

3.启动zookeeper

bin目录下 ./zkServer.sh start

验证是否启动成功

telnet localhost 2181 连接成功输入srvr

1.准备安装包,解压

此处用的kafka_2.11-1.0.0

2.配置文件修改

修改conf/server.properties,如下

zookeeper.connect设置为localhost:2181,如果有多个,分号拼接

3.启动kafka server

bin/kafka-server-start.sh -daemon ../config/server.properties

4.创建topic

./kafka-topics.sh –create –zookeeper localhost:2181 –replication-factor 1 –partitions 1 –topic test_topic

5.查看topic详情

./kafka-topics.sh –zookeeper localhost:2181 –describe –topic test_topic

6.在测试主题上发布消息

./kafka-console-producer.sh –broker-list localhost:9092 –topic test_topic

7.在测试主题上读取消息

./kafka-console-consumer.sh –zookeeper localhost:2181 –topic test_topic –from-beginning

Original: https://blog.51cto.com/u_15680746/5373783
Author: 蹦擦擦蹦
Title: Kafka-安装使用

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/517500/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球