zoukankan      html  css  js  c++  java
  • 在一台服务器里面通过docker-compose部署zookeeper,kafka集群

    在同一台服务器里面部署zk,kafka集群

         1、首先在服务器安装docker和docker-compose环境(这里不多说)

         2、拉取zookeeper和kafka镜像到服务器上

            可以通过以下命令来查找相关的镜像

    docker search   镜像名称
    docker  search  zookeeper
    docker search  kafka

        

         3、通过 命令docker pull  镜像名称:版本号   拉取镜像

         4、分别创建目录/zookeeper, /kafka,并在相应的目录里面新建docker-compose.yml文件

         zookeeper集群对应的docker-compose.yml文件内容

        

    version: '3.1'
    
    services:
      zoo1:
        image: zookeeper:3.5.9
        restart: always
        hostname: zoo1
        networks:
          - zoo-net
        ports:
          - 2181:2181
        volumes:
          - zoo1-data:/data
          - zoo1-log:/datalog
        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
          ZOO_4LW_COMMANDS_WHITELIST: "*"
    
      zoo2:
        image: zookeeper:3.5.9
        restart: always
        hostname: zoo2
        networks:
          - zoo-net
        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
          ZOO_4LW_COMMANDS_WHITELIST: "*"
    
      zoo3:
        image: zookeeper:3.5.9
        restart: always
        hostname: zoo3
        networks:
          - zoo-net
        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
          ZOO_4LW_COMMANDS_WHITELIST: "*"
    
    volumes:
      zoo1-data:
        external: false
      zoo1-log:
        external: false  
    
    networks:
      zoo-net:

     

     在目录/zookeeper下执行docker-compose up -d命令

     

      /kafka目录下的docker-compose.yml文件内容

    version: '2'
    
    services:
      kafka1:
        image: kafka:0.11.0.1
        ports:
          - "9092:9092"
        environment:
          KAFKA_ADVERTISED_HOST_NAME: 172.16.119.28     #宿主机地址              
          KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.119.28:9092    #宿主机地址
          KAFKA_ZOOKEEPER_CONNECT: 172.16.119.28:2181,172.16.119.28:2182,172.16.119.28:2183  #zk宿主机地址
          KAFKA_ADVERTISED_PORT: 9092
        container_name: kafka1
      kafka2:
        image: kafka:0.11.0.1
        ports:
          - "9093:9092"
        environment:
          KAFKA_ADVERTISED_HOST_NAME: 172.16.119.28           #宿主机地址       
          KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.119.28:9093       #宿主机地址
          KAFKA_ZOOKEEPER_CONNECT: 172.16.119.28:2181,172.16.119.28:2182,172.16.119.28:2183   #zk宿主机地址
          KAFKA_ADVERTISED_PORT: 9093
        container_name: kafka2
      kafka3:
        image: kafka:0.11.0.1
        ports:
          - "9094:9092"
        environment:
          KAFKA_ADVERTISED_HOST_NAME: 172.16.119.28    #宿主机地址
          KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.119.28:9094  #宿主机地址
          KAFKA_ZOOKEEPER_CONNECT: 172.16.119.28:2181,172.16.119.28:2182,172.16.119.28:2183  #zk宿主机地址
          KAFKA_ADVERTISED_PORT: 9094
        container_name: kafka3

     

    在目录/kafka下执行docker-compose up -d命令

     

    结果如下:

     

     

  • 相关阅读:
    有关程序开发中有关验证中常用的正则表达式汇总
    python学习---logging模块
    有关递归函数,返回值的学习
    设计模式之建造者模式、模版方法
    XXL-JOB使用命令行的方式启动python时,日志过多导致阻塞的解决方式
    Spring Boot后端与Angular前端进行timestamp的交互
    设计模式之代理模式
    设计模式之工厂模式
    设计模式之单例模式
    设计模式之反射机制
  • 原文地址:https://www.cnblogs.com/braveym/p/15409988.html
Copyright © 2011-2022 走看看