Kafka 安装教程

目录

前言

一、安装前的准备

[1. 系统要求](#1. 系统要求)

[2. 安装 JDK](#2. 安装 JDK)

[3. 下载 Kafka](#3. 下载 Kafka)

[二、配置 Kafka](#二、配置 Kafka)

[1. 配置 Zookeeper](#1. 配置 Zookeeper)

[2. 配置 Kafka Broker](#2. 配置 Kafka Broker)

[3. 分发Kafka安装包](#3. 分发Kafka安装包)

[4. 配置环境变量(xcall.sh)](#4. 配置环境变量(xcall.sh))

[三、启动 Kafka 和 Zookeeper](#三、启动 Kafka 和 Zookeeper)

[四、测试 Kafka](#四、测试 Kafka)

[1. 创建 Topic](#1. 创建 Topic)

[2. 生产消息](#2. 生产消息)

[3. 消费消息](#3. 消费消息)

五、总结


前言

Kafka 是一种高性能、分布式的消息队列系统,广泛应用于大数据实时处理场景中。本文将详细介绍如何在 Linux 环境中安装和配置 Kafka,希望对初学者有所帮助。

一、安装前的准备

1. 系统要求

  • 操作系统:本文以 CentOS 7 为例,其他 Linux 系统安装步骤类似。
  • Java 环境:Kafka 依赖 Java 运行环境,需要先安装 JDK。
  • Zookeeper: Kafka 依赖 Zookeeper 进行分布式协调。Zookeeper 可以单独安装,也可以使用 Kafka 内置的 Zookeeper 服务。

2. 安装 JDK

  1. 检查是否安装 JDK:java -version
  2. 如果没有安装,可自行安装 JDK。

3. 下载 Kafka

  1. 进入 Kafka 官方下载页面:Kafka 下载页面

  2. 选择合适的 Kafka 版本(比如最新稳定版),复制下载链接。

  3. 下载 Kafka。

  4. 解压文件:

    bash 复制代码
    cd /opt/moudles
    tar -zxvf kafka_2.12-3.0.0.tgz -C /opt/installs/
  5. 修改解压后的文件名称:

    bash 复制代码
    mv kafka_2.12-3.0.0/ kafka3
    # 版本号解读:2.12 是scala版本,3.0.0是kafka版本

二、配置 Kafka

Kafka 主要有两个配置文件:server.propertieszookeeper.properties

1. 配置 Zookeeper

Kafka 依赖 Zookeeper 进行分布式协调。Zookeeper 的配置文件位于 config/zookeeper.properties。(安装Zookeeper时已配置)

2. 配置 Kafka Broker

Kafka Broker 的配置文件位于 config/server.properties

  1. 打开配置文件:

    bash 复制代码
    vi /opt/install/kafka3/config/server.properties
  2. 修改 broker.id(每个 Kafka 节点需要一个唯一的 ID):

    bash 复制代码
    broker.id=0
  3. 配置连接 Zookeeper 集群地址(在 zk 根目录下创建/kafka,方便管理):

    bash 复制代码
    zookeeper.connect=bigdata01:2181,bigdata02:2181,bigdata03:2181/kafka
    # /kafka的意思是:在zk中创建一个文件夹叫做kafka
  4. 配置日志存储路径:

    bash 复制代码
    log.dirs=/opt/installs/kafka3/datas 

3. 分发Kafka安装包

bash 复制代码
 xsync.sh /opt/install/kafka3/ 
# 分别在 bigdata02 和 bigdata03上修改配置文件/opt/installs/kafka/config/server.properties 中的 broker.id=1、broker.id=2 
# 注:broker.id 不得重复,整个集群中唯一。

4. 配置环境变量(xcall.sh

bash 复制代码
# 修改bigdata01的环境变量
export KAFKA_HOME=/opt/installs/kafka3
export PATH=$PATH:$KAFKA_HOME/bin

# 分发一下:
xsync.sh /etc/profile

# 刷新环境变量
 xcall.sh source /etc/profile 

三、启动 Kafka 和 Zookeeper

  1. 启动 Zookeeper:

    bash 复制代码
    xcall.sh zkServer.sh start
    # 或者使用脚本zk.sh start
  2. 启动 Kafka:

    bash 复制代码
    # 依次在 bigdata01、bigdata02、bigdata03 节点上启动 Kafka,先进入到kafka3 这个文件夹中
    
    bin/kafka-server-start.sh -daemon config/server.properties
    
    # 关闭指令
    bin/kafka-server-stop.sh

使用 jps 命令查看进程,确保 Zookeeper 和 Kafka 都已成功启动。

四、测试 Kafka

1. 创建 Topic

bash 复制代码
bin/kafka-topics.sh --bootstrap-server bigdata01:9092 --create --partitions 1 --replication-factor 3 --topic first

2. 生产消息

bash 复制代码
bin/kafka-console-producer.sh  --bootstrap-server bigdata01:9092 --topic first 

输入消息内容,然后回车发送。

3. 消费消息

打开另一个终端,输入以下命令接收消息:

bash 复制代码
bin/kafka-console-consumer.sh --bootstrap-server bigdata01:9092 --topic first 

五、总结

至此,我们成功在 Linux 系统上安装并配置了 Kafka,并进行了简单的消息收发测试。

相关推荐
Yvonne9781 小时前
创建三个节点
java·大数据
不会飞的小龙人2 小时前
Kafka消息服务之Java工具类
java·kafka·消息队列·mq
bug404_4 小时前
分布式大语言模型服务引擎vLLM论文解读
人工智能·分布式·语言模型
OJAC近屿智能5 小时前
苹果新品今日发布,AI手机市场竞争加剧,近屿智能专注AI人才培养
大数据·人工智能·ai·智能手机·aigc·近屿智能
lucky_syq5 小时前
Spark算子:大数据处理的魔法棒
大数据·分布式·spark
昔我往昔7 小时前
项目中分库分表的分布式ID如何生成
分布式
m0_748233648 小时前
【分布式】Hadoop完全分布式的搭建(零基础)
大数据·hadoop·分布式
圣享科技SMARTLIC8 小时前
企业软件合规性管理:构建高效、安全的软件资产生态
大数据·安全·浮动许可证监控·许可证管理·浮动许可证优化·软件资产管理·浮动许可证管理
roman_日积跬步-终至千里8 小时前
【分布式理论14】分布式数据库存储:分表分库、主从复制与数据扩容策略
数据库·分布式
京东零售技术8 小时前
京东广告基于 Apache Doris 的冷热数据分层实践
大数据