• docker kafka


    1.拉取相关镜像
    docker pull wurstmeister/kafka
    docker pull zookeeper    
    2 运行zookeeper 
    docker run -d --name zookeeper -p 2181:2181 -t zookeeper

    3 .运行kafka
    Kafka0:
    docker run -d --name kafka0 -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=101.36.181.232:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://101.36.181.232:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
    Kafka1:
    docker run -d --name kafka1 -p 9093:9093 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=101.36.181.232:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://101.36.181.232:9093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka
    Kafka2:
    docker run -d --name kafka2 -p 9094:9094 -e KAFKA_BROKER_ID=2 -e KAFKA_ZOOKEEPER_CONNECT=101.36.181.232:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://101.36.181.232:9094 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9094 -t wurstmeister/kafka

    参数说明:
    -e KAFKA_BROKER_ID=0 在kafka集群中,每个kafka都有一个BROKER_ID来区分自己
    -e KAFKA_ZOOKEEPER_CONNECT=10.20.8.50:2181/kafka 配置zookeeper管理kafka的路径10.20.8.50:2181/kafka
    -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.20.8.50:9092 把kafka的地址端口注册给zookeeper,如果是远程访问要改成外网IP。
    -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口:这个不能改
    -v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间

    启动3个Kafka节点
    4.设置topic
    进入kafka0:
    docker exec -it kafka0 /bin/bash
    cd /opt/kafka_2.13-2.8.1/bin
    创建topic:
    kafka-topics.sh --create --zookeeper 101.36.181.232:2181 --replication-factor 3 --partitions 5 --topic TestTopic
    查看topic:
    kafka-topics.sh --describe --zookeeper 101.36.181.232:2181 --topic TestTopic

    集群节点说明:
    Topic: TestTopic PartitionCount: 5 ReplicationFactor:3代表TestTopic有5个分区,3个副本节点;
    Topic: 代表主题名称
    Leader 代表主题节点号,
    Replicas代表他的副本节点有 Broker.id = 2、0、1(包括Leader Replica和Follower Replica,且不管是否存活),
    Isr表示存活并且同步Leader节点的副本有Broker.id = 2、0、1

    5.进行生产者和消费者测试
    分别在Broker0上运行一个生产者,Broker1、2上分别运行一个消费者:
    kafka-console-producer.sh --broker-list 101.36.181.232:9092 --topic TestTopic
    kafka-console-consumer.sh --bootstrap-server 101.36.181.232:9093 --topic TestTopic --from-beginning
    kafka-console-consumer.sh --bootstrap-server 101.36.181.232:9094 --topic TestTopic --from-beginning


     

  • 相关阅读:
    ISTQB- TTA大纲
    4.物联网射频识别,RFID开发【智能门禁项目】
    .NET高级技术_04正则、序列化、XML
    vue2+elTree 实现右键菜单
    4、android中级控件(2)(选择按钮)
    【C++11】C++的新特性(详解)
    java使用selenium自动化WebDriver等待
    洛谷 B2033 A*B问题 C++代码
    【C++模块实现】| 【07】对于互斥、自旋锁、条件变量、信号量简介及封装
    哈希表(Hash Table)介绍
  • 原文地址:https://blog.csdn.net/weixin_37855495/article/details/126259585