kafka----初步安装与配置

目录标题

      • ⭐`kafka` 与 `zookeeper`间的关系
      • 一.集群部署
      • 二.修改配置文件
      • 三.分发安装包
      • 四.启动与关闭

kafkazookeeper 相同,是以集群的形式使用

kafkazookeeper间的关系

  • kafka 的使用 要在 zookeeper 集群配置好的基础上 使用
  • 要想启动kafka 要先启动 zookeeper

原因如下

Kafka 启动前需要先启动 ZooKeeper,因为 Kafka 依赖 ZooKeeper 完成以下核心功能

  1. 集群管理
    ZooKeeper 存储 Kafka 集群的元数据(如 Broker 列表、Topic 配置、分区副本信息),Broker 启动时必须向 ZooKeeper 注册自身信息并同步集群状态
  2. 控制器选举
    Kafka 集群需要选出一个主节点(Controller)来协调分区和副本的故障恢复,ZooKeeper 负责实现这一选举过程
  3. 故障监测
    ZooKeeper 通过临时节点实时监控 Broker 存活状态,一旦 Broker 宕机,立即触发副本切换或重新选举
  4. 配置同步
    动态配置(如 Topic 参数)通过 ZooKeeper 统一管理,确保所有 Broker 配置一致

如果 ZooKeeper 未启动

Kafka Broker 无法获取集群信息、无法选举控制器、无法感知其他节点,导致启动失败或集群不可用


新版本的kafka(2.8+)支持 独立运行


一.集群部署

  1. 下载安装包
  2. 解压 安装包 至 指定位置
  3. 修改名称为 kafka
  4. 配置 环境变量
shell 复制代码
export KAFKA_HOME = /opt/module/kafka
export PATH = $PATH:$KAFKA_HOME/bin

内容为 kafka 中,bin文件 的位置

  1. 刷新 profile文件 使环境变量 生效
shell 复制代码
source /etc/profile

事后将 环境变量 分发给 集群内其他虚拟机


二.修改配置文件

配置文件名为 server.properties

位于 kafka/config/

  • 修改内容有三处
  1. 本机 kafka 的编号 (唯一性)
    broker.id=
  2. kafka 日志文件存放的位置
    因为 默认位置 在电脑 关机初始化的文件夹中
    log.dirs= /opt/module/kafka/datas
  3. 连接 zookeeper 集群地址
    (并存储在zookeeper 下的 kafka ,方便管理)
    zookeeper.connect = 虚拟机名:2181,虚拟机名:2181,虚拟机名:2181/kafka

三.分发安装包

shell 复制代码
scp -r 文件名 虚拟机名:位置
  • ⭐切记
    分发后,一定要将 server.properties 内的 kafka编号 更改
    broker.id=
    使编号 不重复 ,且集群内 虚拟机的编号 最好连续(可以为"0")

四.启动与关闭

进入 到kafka
启动
bin/kafka-server-start.sh start config/server.properties
关闭
bin/kafka-server-stop.sh

相关推荐
程序员天天困12 小时前
Kafka 接入 AI 的三条路线:MCP 提案、会话记忆与实时上下文
大数据·后端·kafka
hey you~2 天前
云客服多渠道统一接入,消息队列技术实现方案
kafka·消息队列·rocketmq·系统集成·云客服·多渠道接入·接口对接
雾隐隐o2 天前
Kafka 消费者消息丢失:Offset 原理与解决方案
kafka
clz13145213 天前
Kafka 日消 10 亿场景:用 ConcurrentLinkedQueue 实现高性能批量消费缓冲
分布式·kafka·linq
(Charon)4 天前
【Kafka】消息队列学习(一):为什么需要Kafka?从消息队列到整体架构
学习·架构·kafka
clz13145214 天前
风险特征系统 EPC 子系统:基于 Kafka 数据源与数据集配置的 Flink 指标清洗加工
分布式·flink·kafka
富士康质检员张全蛋4 天前
Kafka实战 生产阶段 消费阶段的拦截器
kafka
clz13145214 天前
用 Akka Actor 模拟消费 Kafka 加工处理并发送到 Flink Out Kafka 的完整示例
flink·kafka·linq
(Charon)4 天前
【Kafka】消息队列学习(二):Topic、Partition与Offset,消息到底存在哪里
分布式·学习·kafka