一键创建kafka集群

1、编写集群docker-compose配置文件

[root@sgpexchangeintermediate-192-168-8-62 zookeeper]# cat docker-compose.yml
version: '3.4'

services:
  zoo1:
    image: zookeeper
    restart: always
    hostname: zoo1
    container_name: zoo1
    ports:
    - 2184:2181
    volumes:
    - "/data/deploy/zookeeper/zoo1/data:/data"
    - "/data/deploy/zookeeper/zoo1/datalog:/datalog"
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
    networks:
      br17219:
        ipv4_address: 172.19.0.11

  zoo2:
    image: zookeeper
    restart: always
    hostname: zoo2
    container_name: zoo2
    ports:
    - 2185:2181
    volumes:
    - "/data/deploy/zookeeper/zoo2/data:/data"
    - "/data/deploy/zookeeper/zoo2/datalog:/datalog"
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=0.0.0.0:2888:3888 server.3=zoo3:2888:3888
    networks:
      br17219:
        ipv4_address: 172.19.0.12

  zoo3:
    image: zookeeper
    restart: always
    hostname: zoo3
    container_name: zoo3
    ports:
    - 2186:2181
    volumes:
    - "/data/deploy/zookeeper/zoo3/data:/data"
    - "/data/deploy/zookeeper/zoo3/datalog:/datalog"
    environment:
      ZOO_MY_ID: 3
      ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=0.0.0.0:2888:3888
    networks:
      br17219:
        ipv4_address: 172.19.0.13

networks:
  br17219:
    external:
      name: br17219
[root@sgpexchangeintermediate-192-168-8-62 kafka]# cat docker-compose.yml
version: '2'

services:
  kafka1:
    image: wurstmeister/kafka
    restart: always
    hostname: kafka1
    container_name: kafka1
    ports:
    - 9092:9092
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka1
      KAFKA_ADVERTISED_PORT: 9092
      KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181
    volumes:
    - /data/deploy/kafka/kafka1/logs:/kafka
    external_links:
    - zoo1
    - zoo2
    - zoo3
    networks:
      br17219:
        ipv4_address: 172.19.0.14

  kafka2:
    image: wurstmeister/kafka
    restart: always
    hostname: kafka2
    container_name: kafka2
    ports:
    - 9093:9093
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka2
      KAFKA_ADVERTISED_PORT: 9093
      KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181
    volumes:
    - /data/deploy/kafka/kafka2/logs:/kafka
    external_links:
    - zoo1
    - zoo2
    - zoo3
    networks:
      br17219:
        ipv4_address: 172.19.0.15

  kafka3:
    image: wurstmeister/kafka
    restart: always
    hostname: kafka3
    container_name: kafka3
    ports:
    - 9094:9094
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka3
      KAFKA_ADVERTISED_PORT: 9094
      KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181
    volumes:
    - /data/deploy/kafka/kafka3/logs:/kafka
    external_links:
    - zoo1
    - zoo2
    - zoo3
    networks:
      br17219:
        ipv4_address: 172.19.0.16

networks:
  br17219:
    external:
      name: br17219

 

2、创建集群网络 

[root@sgpexchangeintermediate-192-168-8-62 zookeeper]# docker network create --subnet=172.19.0.0/24 br17219
228522f5f69d6b0e7938d9cf7d2cad3ce97b195d23fab58ce0946dd43924bf21

3、分别启动zookeeper和kafka集群

[root@sgpexchangeintermediate-192-168-8-62 zookeeper]# docker-compose up -d
Creating zoo1 ... done
Creating zoo3 ... done
Creating zoo2 ... done
[root@sgpexchangeintermediate-192-168-8-62 zookeeper]# cd ../kafka/
[root@sgpexchangeintermediate-192-168-8-62 kafka]# docker-compose up -d
Creating kafka1 ... done
Creating kafka2 ... done
Creating kafka3 ... done

4、查看集群镜像 

[root@sgpexchangeintermediate-192-168-8-62 kafka]# docker ps
CONTAINER ID   IMAGE                                       COMMAND                  CREATED          STATUS          PORTS                                                                                                     NAMES
86c25b647a72   wurstmeister/kafka                          "start-kafka.sh"         9 seconds ago    Up 8 seconds    0.0.0.0:9094->9094/tcp, :::9094->9094/tcp                                                                 kafka3
7554d88664e7   wurstmeister/kafka                          "start-kafka.sh"         9 seconds ago    Up 8 seconds    0.0.0.0:9093->9093/tcp, :::9093->9093/tcp                                                                 kafka2
2527c4a78add   wurstmeister/kafka                          "start-kafka.sh"         9 seconds ago    Up 8 seconds    0.0.0.0:9092->9092/tcp, :::9092->9092/tcp                                                                 kafka1
198c5a7a9102   zookeeper                                   "/docker-entrypoint.…"   17 seconds ago   Up 16 seconds   2888/tcp, 3888/tcp, 8080/tcp, 0.0.0.0:2185->2181/tcp, :::2185->2181/tcp                                   zoo2
b1586934130c   zookeeper                                   "/docker-entrypoint.…"   17 seconds ago   Up 16 seconds   2888/tcp, 3888/tcp, 8080/tcp, 0.0.0.0:2186->2181/tcp, :::2186->2181/tcp                                   zoo3
69b24ec6c6f0   zookeeper                                   "/docker-entrypoint.…"   17 seconds ago   Up 16 seconds   2888/tcp, 3888/tcp, 8080/tcp, 0.0.0.0:2184->2181/tcp, :::2184->2181/tcp                                   zoo1

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yunson_Liu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值