返回

Docker 五分钟搭建 Apache Kafka 集群

后端

Docker 中的 Kafka 集群:使用 Kafka-Map 进行管理

概览

Apache Kafka 作为一款分布式消息系统,因其处理海量数据流的能力而广受好评。借助 Kafka-Map 这款基于 Web 的管理工具,您可以轻松管理您的 Kafka 集群,提升其运维效率。

安装和设置

安装 Docker

拉取 Kafka 镜像

  • 在终端中运行以下命令:
docker pull confluentinc/cp-kafka

启动 Kafka 集群

  • 运行以下命令:
docker run -p 9092:9092 -p 2181:2181 -e ADV_HOST=kafka -e ADV_LISTENERS=PLAINTEXT://:9092 confluentinc/cp-kafka

安装 Kafka-Map

启动 Kafka-Map

  • 进入 Kafka-Map 目录。
  • 运行以下命令:
java -jar kafka-map-assembly.jar

使用 Kafka-Map

访问 Kafka-Map

  • 在浏览器中输入 http://localhost:8080/ 访问 Kafka-Map。
  • 使用默认用户名和密码(均为“admin”)登录。

管理 Kafka 集群

  • 查看集群状态。
  • 创建主题。
  • 监控消息流。
  • 管理消费者组。

测试 Kafka 集群

启动生产者

  • 运行以下命令:
docker run -it --rm confluentinc/kafka-utils kafka-console-producer --topic my-topic

启动消费者

  • 运行以下命令:
docker run -it --rm confluentinc/kafka-utils kafka-console-consumer --topic my-topic --from-beginning

发送和接收消息

  • 在生产者终端输入消息并按 Enter 键发送。
  • 在消费者终端查看接收到的消息。

常见问题解答

  • Q1:如何检查 Kafka 集群是否正在运行?
    • 在终端中运行以下命令:
docker ps
  • 如果 Kafka 容器正在运行,您应该看到类似以下内容的行:
CONTAINER ID        IMAGE                               COMMAND                  CREATED             STATUS              PORTS                NAMES
f36b077e933f        confluentinc/cp-kafka           "/etc/confluent/dock…"   About a minute ago   Up About a minute   0.0.0.0:9092->9092/tcp   kafka-1
  • Q2:如何创建 Kafka 主题?

    • 在 Kafka-Map 中,单击“主题”选项卡,然后单击“创建主题”按钮。
    • 在“创建主题”对话框中,输入主题名称和分区数,然后单击“创建”按钮。
  • Q3:如何监控 Kafka 消息流?

    • 在 Kafka-Map 中,单击“消息流”选项卡。
    • 您将看到每个主题的实时消息流。
  • Q4:如何管理 Kafka 消费者组?

    • 在 Kafka-Map 中,单击“消费者组”选项卡。
    • 您将看到当前消费者组的列表。您可以单击每个消费者组以查看其详细信息。
  • Q5:如何停止 Kafka 集群?

    • 在终端中运行以下命令:
docker stop kafka-1

结论

通过 Docker 和 Kafka-Map,您可以轻松地在本地环境中设置和管理 Apache Kafka 集群。凭借其易于使用的图形化界面,Kafka-Map 让您能够轻松地监控和管理您的 Kafka 集群,从而为您的流处理或消息传递应用程序提供强大的基础。