文章目录
- 前言
- 一、安装kafka
-
- [1. 下载kafka](#1. 下载kafka)
- [2. 解压kafka](#2. 解压kafka)
- [3. 配置环境变量](#3. 配置环境变量)
- 二、kafka相关命令
-
- [1. 启动zk](#1. 启动zk)
- [2. 启动Kafka Broker](#2. 启动Kafka Broker)
- [3. 创建主题](#3. 创建主题)
- [4. 列出所有主题](#4. 列出所有主题)
- [5. 查看主题详情](#5. 查看主题详情)
- [6. 删除主题](#6. 删除主题)
- [7. 启动控制台生产者](#7. 启动控制台生产者)
- [8. 启动控制台消费者](#8. 启动控制台消费者)
- [9. 验证结果](#9. 验证结果)
- [10. 其他](#10. 其他)
前言
kafka_2.11-0.10.2.1,该版本较旧,依赖zookeeper。
提示:以下是本篇文章正文内容,下面案例可供参考
一、安装kafka
1. 下载kafka
通过命令行下载kafka
bash
wget https://archive.apache.org/dist/kafka/0.10.2.1/kafka_2.11-0.10.2.1.tgz
或者访问如下地址,通过浏览器下载,然后传至指定目录
bash
https://archive.apache.org/dist/kafka/0.10.2.1/kafka_2.11-0.10.2.1.tgz
2. 解压kafka
使用如下命令解压
bash
# 创建目录 kafka_2.11-0.10.2.1
mkdir -p /Users/bigdata/kafka/kafka_2.11-0.10.2.1
# 解压
tar -xzf kafka_2.11-0.10.2.1.tgz -C /Users/bigdata/kafka/kafka_2.11-0.10.2.1 --strip-components=1
--strip-components=1
:用于在解压时去除指定数量的目录层次,会在解压时去掉最顶层的一级目录。
如果不想搞的这么复杂,将tgz包传到指定目录,tar -zxf 解压即可。
3. 配置环境变量
shell
vi ~/.bash_profile
增加如下配置:
shell
export KAFKA_HOME=/Users/bigdata/kafka/kafka_2.11-0.10.2.1
export PATH=$PATH:$KAFKA_HOME/bin
保存后退出,使配置生效
shell
source ~/.bash_profile
二、kafka相关命令
1. 启动zk
shell
zkServer.sh start
2. 启动Kafka Broker
shell
kafka-server-start.sh config/server.properties
3. 创建主题
shell
kafka-topics.sh --zookeeper localhost:2181 --create --topic test1 --partitions 1 --replication-factor 1
--replication-factor
:指定主题的副本因子,即每个分区的副本数量。
--partitions
:指定主题的分区数量。
4. 列出所有主题
shell
kafka-topics.sh --list --zookeeper localhost:2181
5. 查看主题详情
shell
kafka-topics.sh --describe --zookeeper localhost:2181 --topic test1
6. 删除主题
shell
kafka-topics.sh --delete --zookeeper localhost:2181 --topic test1
--delete
:删除指定的主题,但要确保 delete.topic.enable=true 在 server.properties 中配置,否则只是标记删除
。
7. 启动控制台生产者
shell
# 启动之后,直接在当前控制台输入消息,回车之后就会发送到指定主题
kafka-console-producer.sh --broker-list localhost:9092 --topic test1
8. 启动控制台消费者
读取主题test1的数据,输出到控制台
shell
kafka-console-consumer.sh --zookeeper localhost:2181 --topic test1 --from-beginning
--from-beginning
:表示从主题的最早消息开始消费,若不指定则从最新消息开始。
9. 验证结果
查看test1主题有多少数据
shell
kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic test1 -time -1 --offsets 1
10. 其他
消费者组相关、修改主题配置相关,待用到时补充。