首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >kafka集群部署 - 利用docker-compose 进行集群部署

kafka集群部署 - 利用docker-compose 进行集群部署

原创
作者头像
全栈研发知识库
发布2024-12-11 14:08:21
发布2024-12-11 14:08:21
2.9K0
举报

kafka集群部署 - 利用docker-compose 进行集群部署

一、安装docker-compose

使用docker-compose 进行集群部署前需要安装docker-compose

可参考:https://cloud.tencent.com/developer/article/2475894

二、创建kafka-cluster.yml

1创建kafka-cluster-yml文件夹

代码语言:shell
复制
mkdir docker-compose-yml

2.进入docker-compose-yml文件夹,创建kafka-cluster.yml文件

代码语言:shell
复制
cd docker-compose-yml
vi kafka-cluster.yml

3.编辑kafka-cluster.yml文件

注意请将:192.168.80.102 替换成你的服务器ip内网地址

代码语言:yml
复制
version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper:latest
    ports:
      - "2181:2181"
      
  kafka1:
    image: wurstmeister/kafka:latest
    ports:
      - "9092:9092"
    environment:
      KAFKA_BROKER_ID: 1
      KAFKA_ZOOKEEPER_CONNECT: 192.168.80.102:2181
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.80.102:9092
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT
      KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

  kafka2:
    image: wurstmeister/kafka:latest
    ports:
      - "9093:9093"
    environment:
      KAFKA_BROKER_ID: 2
      KAFKA_ZOOKEEPER_CONNECT: 192.168.80.102:2181
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.80.102:9093
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT
      KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9093
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

  kafka3:
    image: wurstmeister/kafka:latest
    ports:
      - "9094:9094"
    environment:
      KAFKA_BROKER_ID: 3
      KAFKA_ZOOKEEPER_CONNECT: 192.168.80.102:2181
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.80.102:9094
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT
      KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9094
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      
  kafka-ui:
    image: provectuslabs/kafka-ui:latest
    ports:
      - "18080:8080"
    environment:
      KAFKA_CLUSTERS_0_NAME: "local"
      KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: "192.168.80.102:9092,192.168.80.102:9093,192.168.80.102:9094"
      KAFKA_CLUSTERS_0_ZOOKEEPER: "192.168.80.102:2181"
    depends_on:
      - kafka1
      - kafka2
      - kafka3
      - zookeeper

三、建议手动先拉取相关镜像(可跳过)

拉取:docker pull wurstmeister/zookeeper、

代码语言:shell
复制
docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
docker pull provectuslabs/kafka-ui:latest

四、使用docker-compose启动

代码语言:shell
复制
docker-compose -f kafka-cluster.yml up -d

参数说明:

-f 参数指定一个或多个配置文件的路径

-d 参数命令启动的容器会在后台持续运行,直到显式停止或使用docker-compose down命令停止容器

up 命令启动服务,该命令十分强大,它将尝试自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作

五、验证集群是否是否部署完成

访问Kafka UI:http://192.168.80.102:18080

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • kafka集群部署 - 利用docker-compose 进行集群部署
    • 一、安装docker-compose
    • 二、创建kafka-cluster.yml
    • 三、建议手动先拉取相关镜像(可跳过)
    • 四、使用docker-compose启动
    • 五、验证集群是否是否部署完成
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档