首页 > 其他分享 >一台云主机怎么搭建Kafka集群?[基于Docker]

一台云主机怎么搭建Kafka集群?[基于Docker]

时间:2023-01-19 15:33:24浏览次数:41  
标签:PLAINTEXT 主机 2181 Kafka zoo1 zoo2 zoo3 Docker KAFKA

前提:

  1. 首先服务器内存,建议在4G以上。
  2. 安装docker、docker-compose
  3. 服务器执行curl cip.cc查看公网IP

docker-compose 一键运行yml

将下面的内容中的[your server ip] ——替换成——> 你的公网ip

version: "3.1"
networks:
  zk-net: # 网络名
    name: zk-net
    driver: bridge

services:
  # zookeeper集群
  zoo1:
    image: zookeeper:3.8.0
    container_name: zoo1 # 容器名称
    restart: always # 开机自启
    hostname: zoo1 # 主机名
    ports:
      - 2181:2181 # 端口号
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
    networks:
      - zk-net
  zoo2:
    image: zookeeper:3.8.0
    container_name: zoo2
    restart: always
    hostname: zoo2
    ports:
      - 2182:2181
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
    networks:
      - zk-net
  zoo3:
    image: zookeeper:3.8.0
    container_name: zoo3
    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=zoo3:2888:3888;2181
    networks:
      - zk-net
  # kafka集群
  kafka1:
    image: "bitnami/kafka:3.0.0"
    container_name: kafka1
    hostname: kafka1
    networks:
      - zk-net
    ports:
      - "9092:9092"
    environment:
      - KAFKA_CFG_ZOOKEEPER_CONNECT=zoo1:2181,zoo2:2182,zoo3:2183/kafka
      - KAFKA_BROKER_ID=1
      - KAFKA_CFG_LISTENERS=PLAINTEXT://:9092
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://[your server ip]:9092
      - ALLOW_PLAINTEXT_LISTENER=yes
    depends_on:
      - zoo1
      - zoo2
      - zoo3
  kafka2:
    image: "bitnami/kafka:3.0.0"
    container_name: kafka2
    hostname: kafka2
    networks:
      - zk-net
    ports:
      - "9093:9093"
    environment:
      - KAFKA_CFG_ZOOKEEPER_CONNECT=zoo1:2181,zoo2:2182,zoo3:2183/kafka
      - KAFKA_BROKER_ID=2
      - KAFKA_CFG_LISTENERS=PLAINTEXT://:9093
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://[your server ip]:9093
      - ALLOW_PLAINTEXT_LISTENER=yes
    depends_on:
      - zoo1
      - zoo2
      - zoo3
  kafka3:
    image: "bitnami/kafka:3.0.0"
    container_name: kafka3
    hostname: kafka3
    networks:
      - zk-net
    ports:
      - "9094:9094"
    environment:
      - KAFKA_CFG_ZOOKEEPER_CONNECT=zoo1:2181,zoo2:2182,zoo3:2183/kafka
      - KAFKA_BROKER_ID=3
      - KAFKA_CFG_LISTENERS=PLAINTEXT://:9094
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://[your server ip]:9094
      - ALLOW_PLAINTEXT_LISTENER=yes
    depends_on:
      - zoo1
      - zoo2
      - zoo3

最后一键执行

docker-compose -f [xxx.yml] up -d

查看是否运行成功:docker-compose ps

标签:PLAINTEXT,主机,2181,Kafka,zoo1,zoo2,zoo3,Docker,KAFKA
From: https://www.cnblogs.com/KyleHsu/p/17061605.html

相关文章

  • Docker获取tomcat镜像,安装 tomcat容器
    Docker获取tomcat镜像,安装tomcat容器1、搜索tomcat镜像 dockersearchtomcat2、拉取tomcat镜像 dockerpulltomcat:7-jre73、创建tomcat容器 dockerrun-di......
  • Docker获取svn镜像,安装 svn容器
    Docker获取svn镜像,安装svn容器1、搜索svn镜像 dockersearchsvn2、拉取svn镜像 dockerpullgarethflowers/svn-server:latest3、创建svn容器 dockerrun--pr......
  • 一文搞定大数据消息队列Kafka
    文章目录​​1.JMS+AMQP核心知识​​​​1.1.什么是MQ中间件​​​​1.2.使用场景​​​​1.3.JMS消息服务和和常见核心概念​​​​2.分布式流处平台Kafka核心概念​​​​......
  • Kafka快速入门(命令行操作)
    Kafka命令行操作Kafka基础架构主题命令行操作1)查看操作主题命令参数bin/kafka-topics.sh-参数-描述–bootstrap-server<String:servertoconnectto>连接的KafkaBroker......
  • Kafka快速入门(生产者)同步异步发送、分区、消息精确一次发送、幂等性、事务
    Kafka生产者1.生产者消息发送流程1.1发送原理在消息发送的过程中,涉及到了两个线程——main线程和Sender线程。在main线程中创建了一个双端队列RecordAccumulator。......
  • Kafka快速入门(安装集群)
    安装部署1.集群规划hadoop102hadoop103hadoop104zkzkzkkafkakafkakafka2.集群部署0)官方下载地址:​​官网​​1)解压安装包tar-zxvfkafka_2.12-3.0.0.tgz-C/opt/module......
  • Docker和K8S存在的意义
    之前一直没搞明白为什么要用docker和k8s,下面简单说一下:先说现实中需求:1、服务器上的环境、数据,有时需要迁移2、服务器上的资源,需要动态伸缩,比如双十一的时候搞促销,就需......
  • Docker 安装 Rancher
    Docker安装Rancher环境:RedHatv8.6, Dockerv20.10.22, Rancher v2.6.9   如报K3S 错误:[FATAL]k3sexitedwith:exitstatus1查看日志:进入容器,查看k3s......
  • Docker
    安装Docker原理docker安装docker安装先准备一个mysql容器用于复制配置文件,配置好之后把其删除再创建一个新的下面这些操作都是为了创建一个容器,它的配置文件和数据都......
  • 解决docker启动报错“Error starting daemon: SELinux is not supported with the ove
    启动docker报错,这个是关于selinux的问题。一般的做法是内核升级或者关闭docker的selinux部分--selinux-enabled=false ......