Linux 下的Kafka 配置步骤Kafka集配置⽐较简单,为了更好的让⼤家理解,在这⾥要分别介绍下⾯三种配置单节点:⼀个broker的集单节点:多个broker的集
多节点:多broker集
⼀、单节点单broker
实例的配置
1. ⾸先启动zookeeper 服务
必须使⽤root⽤户启动kafka
Kafka本⾝提供了启动zookeeper的脚本(在kafka/bin/⽬录下)和zookeeper配置⽂件(在kafka/config/⽬录下),⾸先进⼊Kafka的主⽬录(可通过 whereis kafka命令查到):
置换购车2. 启动Kafka broker
运⾏kafka提供的启动kafka服务脚本即可:
3. 创建⼀个仅有⼀个Partition 的topic
[root@localhost kafka-0.8]# bin/kafka-create-topic.sh --zookeeper localhost:2181 --replica 1 --partition 1 --topic kafkatopic
拥抱情人节4. ⽤Kafka 提供的⽣产者客户端启动⼀个⽣产者进程来发送消息
[root@localhost kafka-0.8]# bin/kafka-console-producer.sh --broker-list localhost:9092 --topic kafkatopic 其中有两个参数需要注意:
broker-list:定义了⽣产者要推送消息的broker地址,以
5. 启动⼀个Consumer 实例来消费消息
[root@localhost kafka-0.8]# bin/zookeeper-server-start.sh config/zookeeper.properties
zookeeper 配置⽂件的⼀些重要属性:
# Data directory where the zookeeper snapshot is stored.
dataDir=/tmp/zookeeper
# The port listening for client request
clientPort=2181
默认情况下,zookeeper 服务器会监听 2181端⼝,更详细的信息可去zookeeper 官⽹查阅。
[root@localhost kafka-0.8]# bin/kafka-server-start.sh config/server.properties脱落酸的作用
今年国庆多少周年了2021broker 配置⽂件中的重要属性:
# broker 的id. 每个broker 的id 必须是唯⼀的.
Broker.id=0
# 存放log 的⽬录
log .dir=/tmp/kafka 8-logs
# Zookeeper 连接串
[root@localhost kafka-0.8]# bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic kafkatopic --from-beginning
当你执⾏这个命令之后,你便可以看到控制台上打印出的⽣产者⽣产的消息:
和消费者相关的属性配置存放在Consumer.properties⽂件中,重要的属性有:
# consumer的group id (A string that uniquely identifies a set of consumers
# within the same consumer group)
groupid=test-consumer-group
# zookeeper 连接串
⼆、单节点运⾏多broker 实例
前⾯的步骤和单节点运⾏但broker实例⼀样
1、启动zookeeper
2、启动Kafka 的broker
要想在⼀台机器上启动多个broker实例,只需要准备多个server.properties⽂件即可,⽐如我们要在⼀台机器上启动两个broker: ⾸先我们要准备两个server.properties配置⽂件
然后我们再⽤这两个配置⽂件分别启动⼀个broker
可以看到我们启动是为每个broker都指定了不同的JMX Port,JMX Port主要⽤来利⽤jconsole等⼯具进⾏监控和排错
3.创建⼀个topic
现在我们要创建⼀个含有两个Partition分区和2个备份的broker:
[root@localhost kafka-0.8]# bin/kafka-create-topic.sh --zookeeper localhost:2181 --replica 2 --partition 2 --topic othertopic
4.启动Producer 发送消息
如果我们要⽤⼀个Producer发送给多个broker,唯⼀需要改变的就是在broker-list属性中指定要连接的broker:
[root@localhost kafka-0.8]# bin/kafka-console-producer.sh --broker-list localhost:9092,localhost:9093 --topic othertopic 如果我们要让不同的Producer发送给不同的broker,我们也仅仅需要为每个Producer配置响应的broker-list属性即可。
server-1
brokerid=1
port=9092
log .dir =/temp/kafka8-logs/broker1
server-2
brokerid=2
port=9093
log .dir =/temp/kafka8-logs/broker2
描写立冬的好词好句[root@localhost kafka-0.8]# env JMX_PORT=9999 bin/kafka-server-start.sh config/server-1.properties
[root@localhost kafka-0.8]# env JMX_PORT=10000 bin/kafka-server-start.sh config/server-2.properties
5.启动⼀个消费者来消费消息
美白淡斑哪个牌子好和之前的命令⼀样
[root@localhost kafka-0.8]# bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic othertopic --from-beginning
三、集模式(多节点多实例)
介绍了上⾯两种配置⽅法,再理解集配置就简单了,⽐如我们要配置如下图所⽰集:
zookeeper配置⽂件(zookeeper.properties):不变
broker的配置配置⽂件(server.properties):按照单节点多实例配置⽅法在⼀个节点上启动两个实例,不同的地⽅是zookeeper的连接串需要把所有节点的zookeeper都连接起来
# Zookeeper 连接串
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论