Liunx&mac上安装Kafka

MAC
1 使用 brew 工具来安装,只需要一条命令就完成了下载和安装的过程  
  brew install kafka
  
  安装完成后可以看到 Kafka 安装的路径和配置文件路径
  /usr/local/Cellar/kafka/3.1.0
  /usr/local/etc/kafka/
2 启动 Kafka 依赖 zookeeper  
  而 Kafka 中默认有一个单机版的 zookeeper。实际生产部署中不推荐使用默认的 zookeeper

  2.1 启动 zookeeper
  在 kafka 的安装目录下,执行脚本启动 zookeeper
  cd /usr/local/Cellar/kafka/3.1.0
  bin/zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties
      
  2.2 启动 Kafka
  新开一个控制窗口,在 Kafka 安装目录下,执行脚本启动 kafka
  cd /usr/local/Cellar/kafka/3.1.0
  bin/kafka-server-start /usr/local/etc/kafka/server.properties
    
  2.3 停止 kafka
  cd /usr/local/Cellar/kafka/3.1.0
  bin/kafka-server-start /usr/local/etc/kafka/server.properties
3 测试  
  3.1 首先创建一个主题(topic)
  在 Kafka 安装目录下,创建一个主题
  cd /usr/local/Cellar/kafka/3.1.0
  bin/kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
  bin/kafka-topics --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test(2.2 及更高版本)
  查看是否成功创建主题,获取 Kafka 服务器中的主题列表
  bin/kafka-topics --list --zookeeper localhost:2181
  bin/kafka-topics --list --bootstrap-server localhost:9092(2.2 及更高版本)

  3.2 生产消费测试
  新开一个窗口,创建一个生产者:
  bin/kafka-console-producer --broker-list localhost:9092 --topic test
  新开一个窗口,创建一个消费者:
  kafka-console-consumer --bootstrap-server localhost:9092 --topic test --from-beginning
  然后用生产者发送消息,消费者就可以消费到数据了。
liunx   
1 下载安装包
  我用的版本是:
kafka_2.12-3.1.0,有需要可以分享我的版本
  链接: https://pan.baidu.com/s/1woVx-klVlmYllYm406cl6A?pwd=8pri 提取码: 8pri
2 安装 zookeeper
3 启动 kafka
  启动
  nohup ./bin/kafka-server-start.sh config/server.properties >>/software/kafka/kafka.log 2>& 1 &
  停止
  ./bin/kafka-server-stop.sh config/server.properties
4 kafka 常用命令
  4.1 TOPIC 的操作
  创建 topic
  ./kafka-topics.sh --create --bootstrap-server 127.0.0.1:9092 --replication-factor 1 --partitions 1 --topic test
  查看 topic
  ./kafka-topics.sh --list --bootstrap-server 127.0.0.1:9092
  
  4.2 生产消费消息
  发送消息
  ./kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic test
 
  消费消息
  从最后一条消息的偏移量 +1 开始消费
  ./kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test
  从头开始消费
  ./kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --from-beginning --topic test
 
  4.3 查看 kafka 的版本号
  进入 kafka 的安装路径下面,执行
  find ./libs/ -name *kafka_* | head -1 | grep -o '\kafka[^\n]*'
  0

问题
  问题一:报错 "Exception in thread “main“ joptsimple.UnrecognizedOptionException: zookeeper is not a recognized"
  解决方案:
  在较新版本(2.2 及更高版本)的 Kafka 不再需要 ZooKeeper 连接字符串,即 - -zookeeper localhost:2181。使用 Kafka Broker 的 --bootstrap-server localhost:9092 来替代 - -zookeeper localhost:2181。
  
问题二:远程连接不上新安装的 Kafkahttps://blog.csdn.net/an_vana/article/details/107821801
    1 可以检查防火墙
    2 默认的 kafka 配置是无法远程访问的,修改 kafka 安装目录下的 config/server.properties
     注意必须是 ip,不能是 hostname  例如:advertised.listeners=PLAINTEXT://192.168.225.215:9092
 

kafka 的使用:https://blog.csdn.net/weixin_45830561/article/details/123451963