创建kafka单机伪集群

最新官网quickstart

quickstart

kafka下载并解压

点击此处下载我采用的版本是0.11

#解压到对应目录
tar -zxvf kafka_2.11-0.11.0.3.tgz
#copy三份
cp kafka_2.11-0.11.0.3 kafka_2.11-0.11.0.3-1
cp kafka_2.11-0.11.0.3 kafka_2.11-0.11.0.3-2
mv kafka_2.11-0.11.0.3 kafka_2.11-0.11.0.3-3
#创建log文件
cd kafka_2.11-0.11.0.3-1
mkdir log
cd kafka_2.11-0.11.0.3-2
mkdir log
cd kafka_2.11-0.11.0.3-3
mkdir log

修改配置文件

cd config/
vi server.properties

kafka_2.11-0.11.0.3-1配置文件
#kafka broker 唯一标识
broker.id=1
#可以删除topic
delete.topic.enable=true
# ip地址
hostname=localhost
# 端口号
port=9091
# 日志文件
log.dirs=/Users/momo/Documents/software/kafka_2.11-0.11.0.3-1/log
# zk信息
zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183
kafka_2.11-0.11.0.3-1配置文件
#kafka broker 唯一标识
broker.id=2
#可以删除topic
delete.topic.enable=true
# ip地址
hostname=localhost
# 端口号
port=9092
# 日志文件
log.dirs=/Users/momo/Documents/software/kafka_2.11-0.11.0.3-2/log
# zk信息
zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183
kafka_2.11-0.11.0.3-1配置文件
#kafka broker 唯一标识
broker.id=3
#可以删除topic
delete.topic.enable=true
# ip地址
hostname=localhost
# 端口号
port=9093
# 日志文件
log.dirs=/Users/momo/Documents/software/kafka_2.11-0.11.0.3-3/log
# zk信息
zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183

启动kafka

启动kafka之前需要启动zk
zk配置具体可查看:zk单机伪集群搭建

cd kafka_2.11-0.11.0.3-1
bin/kafka-server-start.sh config/server.properties &
cd kafka_2.11-0.11.0.3-2
bin/kafka-server-start.sh config/server.properties &
cd kafka_2.11-0.11.0.3-3
bin/kafka-server-start.sh config/server.properties &
判断kafka是否启动成功

jps,因为kafka,zk都是依靠jdk,所以直接使用jdk的内置命令jps即可查看

在这里插入图片描述

创建一个拥有三个副本的集群

# 创建topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic test
# 查看topic
bin/kafka-topics.sh --describe  --zookeeper localhost:2181 --topic test
# 生产者
bin/kafka-console-producer.sh --broker-list localhost:9091 --topic test
# 消费者 --from-beginning的含义为从offset 为 0 开始读取
bin/kafka-console-consumer.sh --zookeeper localhost:2181  --topic test --from-beginning
删除topic

bin\kafka-topics.sh --delete --zookeeper localhost:2181 --topic test
注意删除topic指的是逻辑删除,kafka会输出
Topic test is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.
在zookeeper上添加/admin/delete_topics/test节点,也提醒了我们,需要提前打开delete.topic.enable开关。

zk查看kafka信息
# 启动zk客户端
cd zookeeper-3.6.3-1/bin
./zkCli.sh 
#查看所有功能
ls /
#查看逻辑删除的topic
ls /admin 
#显示
[delete_topics]
#继续查看 
ls /admin/delete_topics 
# 显示
test 即我们刚刚删除的topic

在较新版本(2.2 及更高版本)的 Kafka 不再需要 ZooKeeper 连接字符串,即- -zookeeper localhost:2181。使用 Kafka Broker的 --bootstrap-server localhost:9092来替代- -zookeeper localhost:2181。

即使用命令:

bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test

替代命令:

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

一、无key型消息

默认情况下,所生产的消息是没有 key 的,命令如下:
 `bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic topicName

二、有key型消息

当需要为消息指定 key 时,可使用如下命令:

bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic topicName --property parse.key=true
 默认消息键与消息值间使用“Tab键”进行分隔,切勿使用转义字符(\t),如下所示:

>Lei Li    Hello Kafka!
>Meimei Han    你好 kafka!

如上信息表示所生产的消息“Lei Li”为消息键,“Hello Kafka”为消息值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值