Mac上安装和测试Kafka
创始人
2024-04-26 18:22:27
0

1. 安装

默认会把zookeeper一起安装好

brew install kafka

安装日志:

Running `brew update --preinstall`...
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/cask and homebrew/services).
==> New Casks
agi                        cursr                      height                     scenica-player             tsh
ankerwork                  elephas                    overt                      scrolla                    vincelwt-chatgpt
bambu-studio               farcaster                  scene-maestro              spike                      wooshy
==> Updated Casks
Updated 618 casks.
==> Deleted Casks
atlantis           azirevpn           flowsync           privatetunnel      stack              vitalsigns         whist-browser==> Downloading https://ghcr.io/v2/homebrew/core/zookeeper/manifests/3.7.0_1
Already downloaded: /Users/wlm/Library/Caches/Homebrew/downloads/67cad74753e0a5b976b6a8c3456f0af26b62eb51c7eddc3260be18ad2763578d--zookeeper-3.7.0_1.bottle_manifest.json
==> Downloading https://ghcr.io/v2/homebrew/core/zookeeper/blobs/sha256:6345ff0c91566327755a61dd9bc5aa77ea76a41e40803e4d51c6798ba2f8d
Already downloaded: /Users/wlm/Library/Caches/Homebrew/downloads/65c4a8e0f4ce6b008594939bf915d169a8b05caeca50666a84fffebb30525a0e--zookeeper--3.7.0_1.monterey.bottle.tar.gz
==> Downloading https://ghcr.io/v2/homebrew/core/kafka/manifests/3.1.0
Already downloaded: /Users/wlm/Library/Caches/Homebrew/downloads/60ec8363d4d797309494f3301ebbcf1b601ddf24a9de9a5528be0b8616da17b4--kafka-3.1.0.bottle_manifest.json
==> Downloading https://ghcr.io/v2/homebrew/core/kafka/blobs/sha256:4de5988e89839edd0e6e33ce37e4b5c2926295cdc2f7d05c09d5d535751350fd
Already downloaded: /Users/wlm/Library/Caches/Homebrew/downloads/f230499015335ce45bf6f143cad9d9277a7373dc4e68e7ec8a3671f1c8c53b5c--kafka--3.1.0.monterey.bottle.tar.gz
==> Installing dependencies for kafka: zookeeper
==> Installing kafka dependency: zookeeper
==> Pouring zookeeper--3.7.0_1.monterey.bottle.tar.gz
🍺  /usr/local/Cellar/zookeeper/3.7.0_1: 1,084 files, 42.4MB
==> Installing kafka
==> Pouring kafka--3.1.0.monterey.bottle.tar.gz
==> Caveats
To restart kafka after an upgrade:brew services restart kafka
Or, if you don't want/need a background service you can just run:/usr/local/opt/kafka/bin/kafka-server-start /usr/local/etc/kafka/server.properties
==> Summary
🍺  /usr/local/Cellar/kafka/3.1.0: 198 files, 84.2MB
==> Running `brew cleanup kafka`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Caveats
==> kafka
To restart kafka after an upgrade:brew services restart kafka
Or, if you don't want/need a background service you can just run:/usr/local/opt/kafka/bin/kafka-server-start /usr/local/etc/kafka/server.properties

Homebrew会将

  • 二进制文件和脚本文件在/usr/local/bin目录下
  • Kafka配置文件在/usr/local/etc/kafka目录下
  • Zookeeper配置文件在/usr/local/etc/zookeeper目录下
  • log.dirs(Kafka的数据目录)被设置为/usr/local/var/lib/kafka-logs。

2. 启动

2.1 启动zookeeper

kafka是基于zookeeper的,启动Kafka前,需先启动zookeeper。

zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties 

报如下的错误:

[2022-12-18 10:45:21,647] INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)
[2022-12-18 10:45:21,647] ERROR Unexpected exception, exiting abnormally (org.apache.zookeeper.server.ZooKeeperServerMain)
java.net.BindException: Address already in use

查看2181被占用情况:

sudo lsof -i :2181

kill掉所有占用2181的进程(的PID),如
 

sudo kill - 9 1713

另外,启动zookeeper还有下面两个:

  • 以服务方式启动(自动)
brew services start
  • 临时启动(手动)(我电脑这个方式不行,原因暂不明)
zkServer start

2.2 启动kafka

新起一个终端

brew services start kafka

另外,启动kafka还有下面这个命令(我电脑这个方式不行,原因暂不明)
 

/usr/local/opt/kafka/bin/kafka-server-start /usr/local/etc/kafka/server.properties

3. 测试

3.1 再起第三个终端,创建topic

kafka-topics --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test

查看topic命令如下:

kafka-topics --describe --bootstrap-server localhost:9092 --topic test

3.2 在第三个终端上启动生产者

kafka-console-producer --broker-list localhost:9092 --topic test

3.3 再起第四个终端,启动消费者

kafka-console-consumer --bootstrap-server localhost:9092 --topic test --from-beginning

然后在生产者终端窗口输入消息,回车,即可在消费者终端状况看到收到的消息。

相关内容

热门资讯

你有哪些关于雨夜的故事? 你有哪些关于雨夜的故事?我记得那时还是在上中学的时候。那天晚上忽然间下了很大的雨。是很大的暴雨那一种...
找一本穿越滴小说 女主可以灵魂... 找一本穿越滴小说 女主可以灵魂出体 貌似有灵力,很强 原本是代嫁为妾 ,被指成主母,对男主的妾又煮又...
想写恐怖小说,该去哪里呢 想写恐怖小说,该去哪里呢看鬼片去鬼城
女孩子取什么名字好听又有内涵 女孩子取什么名字好听又有内涵婉静:温顺娴静。适用于女孩取名字。出自《后汉书•皇后纪上•明德马皇后》:...
云南畹町口岸迎来缅甸芒果进口高...   中新网昆明7月1日电 (赵吕媛)连日来,在位于中缅边境的云南畹町口岸,一辆辆装载着缅甸圣德龙芒果...
投教精品 | 一图看懂《上海证... (转自:南京证券阳光微讯)
喝大酒,吹大牛,大忽悠猜三个数... 喝大酒,吹大牛,大忽悠猜三个数字这三个数字是960。喝大酒,是酒的谐音9;吹大牛是牛的谐音6;大忽悠...
康辰药业跌2.08%,成交额1... 7月2日,康辰药业盘中下跌2.08%,截至10:11,报32.02元/股,成交1789.43万元,换...
受贿数额特别巨大!中国联通原副... 转自:扬子晚报中国联合网络通信集团有限公司原党组成员、副总经理曹兴信涉嫌受贿一案,由国家监察委员会调...
北仲沙龙 | 破局类案裁判差异... 转自:网络2025年6月27日下午,由北京仲裁委员会/北京国际仲裁院(以下称“北仲”)主办的2025...