docker安裝kafka+kafka-manager集群


1、搭建zookeeper集群

docker-compose.yml文件

version: '3.1'

services:
  zoo1:
    image: zookeeper
    restart: always
    hostname: zoo1
    ports:
      - 2181:2181
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181

  zoo2:
    image: zookeeper
    restart: always
    hostname: zoo2
    ports:
      - 2182:2181
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 server.3=zoo3:2888:3888;2181

  zoo3:
    image: zookeeper
    restart: always
    hostname: zoo3
    ports:
      - 2183:2181
    environment:
      ZOO_MY_ID: 3
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=0.0.0.0:2888:3888;2181

執行docker-compose up -d命令構建zookeeper集群

2、搭建Kafka集群

搭建三個Kafka節點:

節點1:

$ docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=10.0.101.162:2181,10.0.101.162:2182,10.0.101.162:2183 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.0.101.162:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka

節點2:

$ docker run -d --name kafka1 -p 9093:9093 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=10.0.101.162:2181,10.0.101.162:2182,10.0.101.162:2183 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.0.101.162:9093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka

節點3:

$ docker run -d --name kafka2 -p 9094:9094 -e KAFKA_BROKER_ID=2 -e KAFKA_ZOOKEEPER_CONNECT=10.0.101.162:2181,10.0.101.162:2182,10.0.101.162:2183 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.0.101.162:9094 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9094 -t wurstmeister/kafka

【注意】

其中10.0.101.162:2181改為自己的宿主機IP,查看宿主機方式為

ifconfig en0

> 10.0.101.162

測試Kafka安裝情況:

進入其中一個Kafka節點容器中

$ docker exec -ti kafka /bin/bash

進去Kafka所在的目錄:

$ cd /opt/kafka_2.13-2.6.0/

創建一個topic,Replication為2,partition為2:

$ bin/kafka-topics.sh --create --zookeeper 10.0.101.162:2181,10.0.101.162:2182,10.0.101.162:2183 --replication-factor 2 --partitions 2 --topic testtopic

Created topic testtopic.

查看topic信息:

$ bin/kafka-topics.sh --describe --zookeeper 0.0.101.162:2181,10.0.101.162:2182,10.0.101.162:2183 --topic testtopic

Topic: testtopic    PartitionCount: 2   ReplicationFactor: 2    Configs:
    Topic: testtopic    Partition: 0    Leader: 2   Replicas: 2,1   Isr: 2,1
    Topic: testtopic    Partition: 1    Leader: 0   Replicas: 0,2   Isr: 0,2

3、安裝Kafka-manager

$ docker run -itd  --name=kafka-manager -p 9500:9000 -e ZK_HOSTS="10.0.101.162:2181,10.0.101.162:2182,10.0.101.162:2183" sheepkiller/kafka-manager

容器啟動之后,訪問localhost:9500訪問kafka-manager界面


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM