docker run -d --name kafka01 -p 9092:9092 -p 9999:9999 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=192.168.18.5:2181 -e KAFKA_ADVERTISED_HOST_NAME=192.168.18.5 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.18.5:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -e JMX_PORT=9999 -e KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.18.5 -Dcom.sun.management.jmxremote.rmi.port=9999" wurstmeister/kafka:0.11.0.0 docker run -d --name kafka02 -p 9092:9092 -p 9999:9999 -e KAFKA_BROKER_ID=2 -e KAFKA_ZOOKEEPER_CONNECT=192.168.18.5:2181 -e KAFKA_ADVERTISED_HOST_NAME=192.168.18.249 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.18.249:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -e JMX_PORT=9999 -e KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.18.249 -Dcom.sun.management.jmxremote.rmi.port=9999" wurstmeister/kafka:0.11.0.0 docker run -d --name kafka02 -p 9092:9092 -p 9999:9999 -e KAFKA_BROKER_ID=3 -e KAFKA_ZOOKEEPER_CONNECT=192.168.18.5:2181 -e KAFKA_ADVERTISED_HOST_NAME=192.168.21.166 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.21.166:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -e JMX_PORT=9999 -e KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.21.166 -Dcom.sun.management.jmxremote.rmi.port=9999" wurstmeister/kafka:0.11.0.0
手动创建一个topic,复制系数设为3,分区为2,就是每个broker上一个副本。
查看可见,副本=3,brokers总数=3,brokers for topic = 3,就是每个broker上一个副本。
这个topic是2分区,可见,每个broker上都有2分区。
分区信息,可见,分区0的leader副本在broker1上,分区1的副本在broker3上。
现在杀掉broker1,可见,分区0的leader副本到了broker2上,在同步中的副本信息中,没有了broker1。
同时生产和消费正常。
重启broker1,broker1又回来了。
查看broker的信息,broker1上拥有大量的数据rw
原文:https://www.cnblogs.com/jabbok/p/12966342.html