docker-compose极速部署kafka3.2.0集群(含zookeeper集群)

该文章详细介绍了如何使用docker-compose在三台服务器上部署Kafka3.2.0集群,包括配置Zookeeper,设置KafkaBroker,创建Topic以及开启JMX_PORT进行监控。此外,还提到了KafkaStreaming作为集群管理工具的使用。
摘要由CSDN通过智能技术生成

准备工作:准备三台服务器
服务器地址缩写
192.168.0.200200
192.168.0.201201
192.168.0.202202

一、完成服务器之间的免密登录
二、完成每台服务器的docker、docker-compose环境部署(版本保持一致)


注意:先完成服务器之前的免密登录,如未设置,则无需继续部署!

部署Zookeeper集群

一、部署服务器zookeeper
在这里插入图片描述

三台服务器上分别创建以下 docker-compose.yml

version: '3.1'

services:
  zk1:
    image: 'zookeeper:3.7'
    restart: always
    hostname: zoo200
    container_name: zk200
    network_mode: host
    ports:
      - 2181:2181
      - 2888:2888
      - 3888:3888
    environment:
      ZOO_MY_ID: 201
      ZOO_SERVERS: server.200=192.168.0.200:2888:3888;2181 server.201=192.168.0.201:2888:3888;2181 server.202=192.168.0.202:2888:3888;2181

注意点:
1、hostname 自定义
2、ZOO_MY_ID 自定义
3、ZOO_SERVERS 分别为三台服务器的地址
4、server.200、server.201、server.202 对应的是三台服务器 自定义的“ZOO_MY_ID”


部署kafka集群

三台服务器分别创建以下 docker-compose.yml
在这里插入图片描述

version: '3'

services:
  k1:
    image: 'bitnami/kafka:3.2.0'
    restart: always
    container_name: kafka200
    network_mode: host
    user: root
    ports:
      - "9092:9092"
      - "9999:9999"
    environment:
      - KAFKA_CFG_ZOOKEEPER_CONNECT=192.168.0.200:2181,192.168.0.201:2181,192.168.0.202:2181
      - ALLOW_PLAINTEXT_LISTENER=yes
      - KAFKA_BROKER_ID=200
      - KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.0.200:9092
      - KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092
      - KAFKA_CFG_NUM_PARTITIONS=3
      - KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR=3
      - KAFKA_HEAP_OPTS=-Xmx512M -Xms256M
      - JMX_PORT=9999
    volumes:
      - /middleware/Kafka/kraft:/bitnami/kafka:rw

注意点:
1、ports 端口映射 要与“environment”的端口保持一致
2、JMX_PORT 端口 推荐使用 9999
3、JMX_PORT为kafka的数据监控工具需要使用的服务端口,默认关闭,建议开启,下面会详细介绍
4、host 为系统默认network,也自定义network


创建Topic

进入kafka容器

docker exec -it kafka200 bash
kafka-topics.sh --create --bootstrap-server 192.168.0.200:9092 --replication-factor 1 --partitions 3 --topic ODSDataSync

检查topic是否创建成功

kafka-topics.sh --bootstrap-server 192.168.0.200:9092 --describe --topic ODSDataSync

开启JMX_PORT

注意点:
1、docker-compose.yml 中需要开启 9999 端口
2、需要进入kafka容器修改 kafka-server-start.sh
3、需要进入kafka容器修改 kafka-run-class.sh


以上docker-compose内容与上面的一致,只是为了重点强调端口开发位置

在这里插入图片描述

kafka-server-start.sh 中 倒数第二行 添加 JMX_PORT=“9999”

在这里插入图片描述
kafka-run-class.sh 大概在 209行,找到 KAFKA_JMX_OPTS

KAFKA_JMX_OPTS= 进行修改

KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.rmi.port=9999 -Djava.rmi.server.hostname=192.168.0.200 -Dcom.sun.management.jmxremote.local.only=false  -Dcom.sun.management.jmxremote.local.only=false  -Dcom.sun.management.jmxremote.authenticate=false  -Dcom.sun.management.jmxremote.ssl=false "

根据自己服务器的地址进行修改


kafka集群管理工具使用的 KakfaStreaming

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

成都—大数据开发工程师—杨洋

你的打赏是我创作的动力

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

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

打赏作者

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

抵扣说明:

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

余额充值