Kafka完全分布式搭建

准备工作

  • 有三个节点
  • JDK8.0+ 环境
  • 同步集群时钟
  • ZooKeeper集群服务健康

1.上传安装包
2.解压安装
3.修改配置文件:

vi server.properties
#一个Kafka服务实例是一个broker,有一个唯一标识,即下面的BrokerID
broker.id=0  
#node02:1
#node03: 2

#配置当前kafka服务器的协议://IP:Port
listeners=PLAINTEXT://node01:9092  
#node02: PLAINTEXT://node02:9092 
#node03: PLAINTEXT://node03:9092

#commit log存放目录 默认为/tmp目录 临时文件夹 不安全!
log.dirs=/data/kafka、

#要连接的ZK服务器信息
zookeeper.connect=node01:2181,node02:2181,node03:2181

4.启动

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

# -daemon后台进程的方式启动
# config/server.properties 指定要使用的配置文件
----------------------------------------------------------
jps
7585 Jps
9346 DFSZKFailoverController
8885 NameNode
9004 DataNode
1500 QuorumPeerMain
7357 Kafka  #看到Kafka的进程就启动成功了!
9197 JournalNode
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Kafka分布式事务是指在Kafka集群中,多个生产者和消费者之间进行的跨分区、跨主题的事务。Kafka分布式事务是基于两阶段提交协议实现的,包括一个事务协调器和多个事务参与者。在Kafka中,生产者和消费者都可以作为事务参与者,而事务协调器则负责协调所有参与者的事务操作。 Kafka分布式事务主要包括以下几个步骤: 1. 开启事务:生产者在发送消息前需要开启一个事务,这个事务会被分配一个全局唯一的事务ID。 2. 发送消息:生产者在事务中发送消息,这些消息会被缓存在本地缓存中,而不会立即发送到Kafka集群。 3. 预提交:当生产者发送完所有消息后,会向事务协调器发送一个预提交请求,表示该事务已经准备好提交。 4. 事务协调器处理请求:当事务协调器接收到预提交请求后,会向所有参与者发送一个prepare请求,询问它们是否准备好提交。 5. 参与者处理请求:当参与者接收到prepare请求后,会执行本地事务操作,并将结果返回给事务协调器。 6. 提交或回滚:当事务协调器收到所有参与者的响应后,会根据响应结果决定是提交还是回滚该事务。如果所有参与者都返回了成功响应,那么事务协调器会向所有参与者发送一个commit请求,表示该事务已经提交。否则,事务协调器会向所有参与者发送一个abort请求,表示该事务需要回滚。 7. 结束事务:当生产者接收到commit或abort响应后,会结束该事务。如果是commit响应,那么生产者会将本地缓存中的消息发送到Kafka集群;如果是abort响应,那么生产者会丢弃本地缓存中的消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值