设置本地Apache Kafka,与Docker强强联动
创始人
2025-07-12 14:50:43
0

一、引言

许多公司拥有大量的数据,需要一种方法来简化和转储所有传入数据到不同的位置,这就是所谓的Kafka Sink。

在生产环境中,不建议自己托管Kafka,而是建议支付云服务提供商在AWS上进行托管,这就是Amazon Managed Streaming for Apache Kafka(MSK)。然而,Kafka在本地测试却很不方便。因此,在将其部署到测试或生产环境之前,可以选择使用Docker在本地快速启动一个Apache Kafka来开发所需内容。这样可以更快地进行开发并验证代码,不用担心环境问题。

二、使用Docker和Docker Compose快速启动Kafka

1.配置Docker Compose文件

首先,使用Docker和Docker Compose创建运行单节点Kafka的设置。以下是一个示例的Docker Compose文件:

version: "2"
services:
  zookeeper:
    image: confluentinc/cp-zookeeper:latest
    environment:
      ZOOKEEPER_CLIENT_PORT: 2181
      ZOOKEEPER_TICK_TIME: 2000
    ports:
      - 22181:2181

  kafka:
    image: confluentinc/cp-kafka:latest
    depends_on:
      - zookeeper
    ports:
      - 29092:29092
    environment:
      KAFKA_BROKER_ID: 1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1

2. 检查Kafka和Zookeeper设置的状态

完成之后,可以使用以下两个命令检查Kafka和Zookeeper设置的状态。

nc -z localhost 22181
nc -z localhost 29092

如果一切运行顺利,这两个测试都应该返回成功。

三、使用Offset Explorer 2查看Kafka

1. 下载Offset Explorer 2

现在,可以下载Kafka工具(Offset Explorer 2,下载地址:https://kafkatool.com/download.html),它是一个用于Kafka的UI工具,支持以UI方式查看Kafka,不用记住命令行。

2. 配置Offset Explorer 2

下载了该工具之后,需要进行配置设置,在配置设置中,进入高级选项卡,并将localhost:29092作为引导网关,然后就可以开始使用了!

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...