闲来无事,咳咳,学习,一切为了学习。
先搭建一个 Kafka 单机版的测试学习环境。
前提
Kafka 安装需要 JDK 和 Zookeeper 的支持。
安装 JDK
这玩意就不说了,Java 开发拿到新电脑,必须首先安装的就是这玩意
安装 Zookeeper
高版本的 Kafka 会内置提供一个 Zookeeper ,不过我这里重新单独安装了一个。
官网下载压缩包:zookeeper-3.4.14.tar.gz
- 指定目录解压
- vi conf/zoo.cfg (也可将默认的 zoo_sample.cfg 改名为 zoo.cfg)
-
- zoo.cfg 配置文件属性
tickTime = 2000
dataDir = /path/to/zookeeper/data
clientPort = 2181
initLimit = 5
syncLimit = 2
- 启动 zk
bin/zkServer.sh start
- 关闭 zk
bin/zkServer.sh stop
查看是否启动成功:jps
出现 QuorumPeerMain 进程,表示 zk 启动成功。
安装 Kafka
下载压缩包:kafka_2.12-3.1.0.tgz
- 修改 config 下的 server.properties
listeners=PLAINTEXT://:9092 # 直接放开
advertised.listeners=PLAINTEXT://47.101.192.228:9092 # 放开并且修改为主机ip
log.dirs=/opt/kafka/kafka_2.12/log #修改日志存放路径
- 启动
2.启动 kafka :bin/kafka-server-start.sh -daemon config/server.properties 后台启动
如果出现内存不足的情况:
修改 bin/kafka-server-start.sh 文件:将内存改小
export KAFKA_HEAP_OPTS="-Xmx256m -Xms256m"
此时输入:jps 发现 Kafka 也启动好了。
测试
创建 Topic
# 老的命令 --zookeeper :已经过时,启动会报错。
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic TestTopic
Exception in thread "main" joptsimple.UnrecognizedOptionException: zookeeper is not a recognized option
at joptsimple.OptionException.unrecognizedOption(OptionException.java:108)
at joptsimple.OptionParser.handleLongOptionToken(OptionParser.java:510)
at joptsimple.OptionParserState$2.handleArgument(OptionParserState.java:56)
at joptsimple.OptionParser.parse(OptionParser.java:396)
at kafka.admin.TopicCommand$TopicCommandOptions.<init>(TopicCommand.scala:567)
at kafka.admin.TopicCommand$.main(TopicCommand.scala:47)
at kafka.admin.TopicCommand.main(TopicCommand.scala)
# 使用新命令创建
bin/kafka-topics.sh --create --topic topictest --bootstrap-server localhost:9092
查看 Topic
查看已有的 topic:
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
发送消息
bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic topictest
此时出现:
输入一次,回车,可以再次输入;知道 ctrl + c 终止本次的脚本命令
获取消息
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic topictest --from-beginning
则会打印刚刚输入的消息
总结
到此,我们的 Kafka 单机环境就搭建好了。
基本操作步骤如下,不多,但需要仔细:
- 下载压缩包,解压
- 修改配置文件
- 启动
- 测试