kafka基础概念及环境搭建

一、kafka基础概念

1、kafka架构:

producer:生产者,(生产馒头)
consumer:消费者,(吃馒头)
borker:篮子  1个kafka <=> 1个borker(放馒头)
topic:主题,给馒头带一个标签,topica的馒头是给xx的,topicd的馒头是给yy吃

二、kafka部署及使用

1、kafka部署及使用

  • 单节点单broker部署及使用
  • 单节点多broker部署及使用
  • 多节点多broker部署及使用

三、单节点单broker部署及使用

1、前提是已经有zookeeper

在这里插入图片描述

# 修改配置文件server.properties
############################# Socket Server Settings #############################

# The address the socket server listens on. It will get the value returned from 
# java.net.InetAddress.getCanonicalHostName() if not configured.
#   FORMAT:
#     listeners = listener_name://host_name:port
#   EXAMPLE:
#     listeners = PLAINTEXT://your.host.name:9092
listeners=PLAINTEXT://:9092

# Hostname and port the broker will advertise to producers and consumers. If not set, 
host.name=master
############################# Log Basics #############################

# A comma seperated list of directories under which to store log files
log.dirs=/root/bigdata/kafka-log
############################# Zookeeper #############################
# Zookeeper connection string (see zookeeper docs for details).
# This is a comma separated host:port pairs, each corresponding to a zk
# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
# You can also append an optional chroot string to the urls to specify the
# root directory for all kafka znodes.
zookeeper.connect=master:2181

启动kafka前启动zookeeper

kafka-server-start.sh $KAFKA_HOME/config/server.properties

通过jps查看
在这里插入图片描述

2、创建,查看所有topic

# 创建topic
kafka-topics.sh --create --zookeeper master --partitions 1 --replication-factor 1 --topic first_topic
# 查看所有topic的详细信息
kafka-topics.sh --list --zookeeper master:2181
# 查看指定topic的详细信息
kafka-topics.sh --describe --zookeeper master:2181

在这里插入图片描述在这里插入图片描述

3、生产消息和消费消息

# 生产消息
kafka-console-producer.sh --broker-list master:9092 --topic first_topic
# 消费消息
kafka-console-consumer.sh --zookeeper master:2181 --topic first_topic --from-beginning

## --from-beginning 代表从头消费

在这里插入图片描述

四、单节点多broker部署及使用

1、进行修改config下的server.properties文件

cp server.properties server-1.properties
cp server.properties server-2.properties
cp server.properties server-3.properties 

在这里插入图片描述

2、修改 server-1.properties
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
listeners=PLAINTEXT://:9093和broker.id是必须是唯一的,同理进行修改 server-2.properties , server-3.properties

3、后台启动

kafka-server-start.sh -daemon $KAFKA_HOME/config/server-1.properties &

kafka-server-start.sh -daemon $KAFKA_HOME/config/server-2.properties &

kafka-server-start.sh -daemon $KAFKA_HOME/config/server-3.properties &

4、进行查看对应的详细信息
在这里插入图片描述

#创建消息
kafka-topics.sh --create --zookeeper master --partitions 1 --replication-factor 3 --topic three_kafka_msg
#生产消息
kafka-console-producer.sh --broker-list master:9093,master:9094,master:9095 --topic th_kafka_msg
#消费消息
kafka-console-consumer.sh --zookeeper master:2181 --topic three_kafka_msg
# 当删除zookeeper中的leader时候,,会自动选举新的leader,kafka中不管是leader还是follow,都可以进行发送消息,消费信息

在这里插入图片描述

Guess you like

Origin blog.csdn.net/weixin_45775678/article/details/122017210