定风波

莫听穿林打叶声,何妨吟啸且徐行。竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生。

docker环境下Kafka1.1.0 搭建

查询资料记录

docker 镜像 地址: https://hub.docker.com/r/wurstmeister/kafka/ ,使用1.1.0

github 地址 :https://github.com/wurstmeister/kafka-docker 使用1.1.0

使用说明: http://wurstmeister.github.io/kafka-docker/

https://blog.csdn.net/qq_35904833/article/details/74525485

https://github.com/wurstmeister/kafka-docker/wiki/Connectivity

使用最新版本的1.1.1时,存在问题: 启用单broker 时,一直警告,使用单broker
 

安装使用:

  1. 安装docker 和 Compose

  2. 从github上下载两个文件 docker-compose.yml (或者 docker-compose-single-broker.yml )

  3. 将docker-compose.yml中的KAFKA_ADVERTISED_HOST_NAME环境变量配置为Docker宿主机的IP地址

  4. 在 docker-compose.yml 所在目录执行命令

    docker-compose up
    
  5. 如果要启动多broker
    docker-compose scale kafka=2
    
  6. 启动Kafka Shell容器,进入容器
    #注意替换$1为宿主机ip $2 为zkip:zkport
    docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -e HOST_IP=$1 -e ZK=$2 -i -t wurstmeister/kafka:1.1.0 /bin/bash
    
  7. 验证kafka
    $KAFKA_HOME/bin/kafka-topics.sh --list --zookeeper $ZK
    $KAFKA_HOME/bin/kafka-topics.sh --create --topic topic --partitions 4 --zookeeper $ZK --replication-factor 2
    $KAFKA_HOME/bin/kafka-topics.sh --describe --topic topic --zookeeper $ZK 
    $KAFKA_HOME/bin/kafka-console-producer.sh --topic=topic --broker-list=`broker-list.sh`
    $KAFKA_HOME/bin/kafka-console-consumer.sh --topic=topic --zookeeper=$ZK --from-beginning
    
  8. 启动多broker 时,端口不是固定的解决办法,这个方式有点麻烦,增加节点需要改配置文件,每增加一个kafka,那么就要增加一个service
    version: '2'
    services:
      zookeeper:
        image: wurstmeister/zookeeper
        ports:
          - "2181:2181"
      kafka:
        image: wurstmeister/kafka:1.0.0 
        ports:
          - "9002:9092"
        environment:
          KAFKA_ADVERTISED_HOST_NAME: 192.168.99.100
          KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
        volumes:
          - /var/run/docker.sock:/var/run/docker.sock
      kafka2:
        image: wurstmeister/kafka:1.0.0
        ports:
          - "9003:9092"
        environment:
          KAFKA_ADVERTISED_HOST_NAME: 192.168.99.100
          KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
        volumes:
          - /var/run/docker.sock:/var/run/docker.sock
    
点赞

发表评论

电子邮件地址不会被公开。