美文网首页
docker安装部署zookeeper和kafka

docker安装部署zookeeper和kafka

作者: 梨花菜 | 来源:发表于2020-09-30 11:19 被阅读0次

    1、安装zookeeper

    docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper

    • -v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间

    2、安装kafka

    docker run  -d --name kafka -p 9092:9092 -v /etc/hosts:/etc/hosts -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.1.7:5000 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.19:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
    
    • -name kafka指定容器的名称为kafka,可以任意起
    • 192.168.1.7:5000 是zookeeper的ip和端口
    • 192.168.1.19:9092 是启动kafka所在机器的ip和端口
    • -v /etc/hosts:/etc/hosts 宿主机hosts映射到容器,因为kafka和zookeeper不在同一个机器,需要配置hosts才能访问
    • KAFKA_BROKER_ID 在kafka集群中,每个kafka都有一个BROKER_ID来区分自己
    • KAFKA_ZOOKEEPER_CONNECT 的ip和端口
    • KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.19:9092 把kafka的地址端口注册给zookeeper
    • KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口

    3、测试kafka

    3.1、创建topic

    • 进入容器 docker exec -it kafka /bin/shkafka第二步中的容器名称
    • 查找kafka所在路径
    # find / -name kafka-topics.sh
    /opt/kafka_2.13-2.6.0/bin/kafka-topics.sh
    
    • 进入kafka所在路径cd /opt/kafka_2.13-2.6.0/bin/,创建名称为mytopictopic

    ./kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 2 --topic mytopic

    3.2、发送消息

    ./kafka-console-producer.sh --broker-list localhost:9092 --topic mytopic

    3.3、消费消息

    ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mytopic --group lihuacai

    image.png

    参考链接

    相关文章

      网友评论

          本文标题:docker安装部署zookeeper和kafka

          本文链接:https://www.haomeiwen.com/subject/tqsuuktx.html