使用 Docker 搭建 Kafka

本贴最后更新于 1934 天前,其中的信息可能已经时移世异

使用 Docker 搭建 Kafka

1.组件

  • Docker: 要想使用 Docker 来启动 kafka,开发环境提前装好 Docker 是必须的,我一般在 Ubuntu 虚拟机上进行开发测试
  • Docker Compose: kafka 依赖 zookeeper,使用 docker-compose 来管理容器依赖

2.Docker 镜像

3.安装

创建 docker-compose yml 文件,复制官方提供的文件内容

version: '2.1'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181"
  kafka:
    image: wurstmeister/kafka
    ports:
      - "9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 192.168.5.139
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

!!! KAFKA_ADVERTISED_HOST_NAME : 填写 DockerNAT 的 IP 地址

4.构建 docker-compose

docker-compose up -d

5.启动 kafka 多节点[可选]

docker-compose scale kafka=3

6.进入容器

docker exec -it docker-compose_kafka_1 /bin/bash

7.kafka 操作

# 创建topic `test`
$KAFKA_HOME/bin/kafka-topics.sh --create --topic test --zookeeper docker-compose_zookeeper_1:2181 --replication-factor 1 --partitions 1
# 发送消息
$KAFKA_HOME/bin/kafka-console-producer.sh --topic=test --broker-list docker-compose_kafka_1:9092
# 接受消息
$KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server docker-compose_kafka_1:9092 --from-beginning --topic test
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1083 引用 • 3461 回帖 • 286 关注
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    476 引用 • 899 回帖
  • Kafka

    Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    35 引用 • 35 回帖
  • ZooKeeper

    ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 Google 的 Chubby 一个开源的实现,是 Hadoop 和 HBase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

    59 引用 • 29 回帖 • 19 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...