kafka基础知识点
kafka概述
kafka是一个分布式的基于发布/订阅模式的消息队列,主要应用于大数据实时处理领域。
消息队列的两种模式:1.点对点模式,2.发布/订阅模式
kafka架构
生产者生产消息=>kafka集群管理消息=>消费者消费消息
生产者:producer
kafka集群:kafka Cluster(Borker1,Borker2,Borker3)
消费者:Consumer
kafka安装
前提:安装zookeeper
前往官网下载,一定要选择Binary downloads!
存入虚拟机解压重命名配置环境变量,修改kafka/config/server.properties配置文件
broker.id=1 # 三台虚拟机都要配置,并且值不能一样
listeners=PLAINTEXT://master:9092 # 都写master
log.dirs=/usr/local/src/kafka/logs # 日志存放地址
zookeeper.connect=master:2181,slave1:2181,slave2:2181 # zk连接
kafka启动:
[root@master kafka]# bin/kafka-server-start.sh -daemon config/server.properties
kafka关闭:
[root@master kafka]# bin/kafka-server-stop.sh config/server.properties
kafka入门命令
Topic增删查
查看当前服务器所有topic
[root@master kafka]# kafka-topics.sh --list --zookeeper master:2181
创建topic
[root@master kafka]# kafka-topics.sh --create --zookeeper master:2181 --topic thrid --partitions 1 --replication-factor 3
选项说明:
--topic 定义topic名
--replication-factor 定义副本数
--partitions 定义分区数
删除topic
[root@master config]# kafka-topics.sh --delete --zookeeper master:2181 --topic thrid
查看topic格式
[root@master config]# kafka-topics.sh --describe --topic second --zookeeper master:2181
生产者,消费者命令
生产者生产
[root@master config]# kafka-console-producer.sh --topic first --broker-list master:9092
消费者消费:另一台虚拟机上运行
[root@slave1 kafka]# kafka-console-consumer.sh --topic first --bootstrap-server master:9092
生产/消费记录:(默认保存七天)
[root@slave1 kafka]# kafka-console-consumer.sh --topic first --bootstrap-server master:9092 --from-beginning