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,并进行了简单的消息收发测试。

相关推荐
永洪科技6 小时前
永洪科技荣获商业智能品牌影响力奖,全力打造”AI+决策”引擎
大数据·人工智能·科技·数据分析·数据可视化·bi
weixin_307779136 小时前
Hive集群之间迁移的Linux Shell脚本
大数据·linux·hive·bash·迁移学习
ZHOU_WUYI7 小时前
一个简单的分布式追踪系统
分布式
上海锝秉工控9 小时前
防爆拉线位移传感器:工业安全的“隐形守护者”
大数据·人工智能·安全
cv高级工程师YKY9 小时前
SRE - - PV、UV、VV、IP详解及区别
大数据·服务器·uv
bxlj_jcj10 小时前
深入Flink核心概念:解锁大数据流处理的奥秘
大数据·flink
云资源服务商10 小时前
阿里云Flink:开启大数据实时处理新时代
大数据·阿里云·云计算
码不停蹄的玄黓11 小时前
MySQL分布式ID冲突详解:场景、原因与解决方案
数据库·分布式·mysql·id冲突
Aurora_NeAr11 小时前
Spark SQL架构及高级用法
大数据·后端·spark
王小王-12311 小时前
基于Hadoop的公共自行车数据分布式存储和计算平台的设计与实现
大数据·hive·hadoop·分布式·hadoop公共自行车·共享单车大数据分析·hadoop共享单车