Docker 安装 Kafka 集群 链接zookeeper集群

先安装zookeeper集群

      参考 https://blog.csdn.net/c237821375/article/details/108060676

kafka的docker地址

    https://hub.docker.com/r/wurstmeister/kafka

拉取image

 docker pull wurstmeister/kafka

生成镜像,一下命令适合单台也适合多台

docker run -d \
-p 19092:9092  \
--name=kafka1  \
-e KAFKA_BROKER_ID=0  \
-e KAFKA_ZOOKEEPER_CONNECT=106.152.239.39:2111,106.152.239.39:2121,106.152.239.39:2131 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://106.152.239.39:19092  \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-e KAFKA_HEAP_OPTS="-Xmx512M -Xms16M" \
-v /home/kafka/kafka1/logs:/opt/kafka/logs/  \
-v /home/kafka/kafka1/data:/kafka/  \
-v 
--privileged wurstmeister/kafka \

docker run -d \
-p 19093:9092  \
--name=kafka2  \
-e KAFKA_BROKER_ID=1  \
-e KAFKA_ZOOKEEPER_CONNECT=106.152.239.39:2111,106.152.239.39:2121,106.152.239.39:2131 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://106.152.239.39:19093  \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-e KAFKA_HEAP_OPTS="-Xmx512M -Xms16M" \
-v /home/kafka/kafka2/logs:/opt/kafka/logs/  \
-v /home/kafka/kafka2/data:/kafka/  \
--privileged wurstmeister/kafka \

docker run -d \
-p 19094:9092  \
--name=kafka3  \
-e KAFKA_BROKER_ID=2  \
-e KAFKA_ZOOKEEPER_CONNECT=106.152.239.39:2111,106.152.239.39:2121,106.152.239.39:2131 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://106.152.239.39:19094  \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-e KAFKA_HEAP_OPTS="-Xmx512M -Xms16M" \
-v /home/kafka/kafka3/logs:/opt/kafka/logs/  \
-v /home/kafka/kafka3/data:/kafka/  \
--privileged wurstmeister/kafka \

敲黑板

  • -e KAFKA_HEAP_OPTS="-Xmx512M -Xms16M"   是内存占用的大小,默认是-Xmx1G -Xms1G,如果不做设置且安装在一台机器上会造成oom。所以具体设置参考具体需要
  • KAFKA_ZOOKEEPER_CONNECT 是zookeeper的集群地址,如果只有一台zookeeper,可以只写一个。

安装完成后

容器中的重要路径

  • 用于储存kafka的相关工具配置和日志

  • 用于储存主题的分区数据

 

使用kafka tool链接

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装kafka集群需要以下步骤: 1. 安装dockerdocker-compose(如果已经安装可以跳过此步)。 2. 创建一个kafka集群docker-compose.yml文件。该文件包含了kafka集群的配置信息,可以参考以下模板: ```yaml version: '2' services: zookeeper: image: wurstmeister/zookeeper ports: - "2181:2181" kafka1: image: wurstmeister/kafka ports: - "9091:9091" environment: KAFKA_ADVERTISED_HOST_NAME: {kafka1的ip地址} KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 KAFKA_BROKER_ID: 1 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 kafka2: image: wurstmeister/kafka ports: - "9092:9092" environment: KAFKA_ADVERTISED_HOST_NAME: {kafka2的ip地址} KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 KAFKA_BROKER_ID: 2 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 ``` 3. 在命令行中进入到包含docker-compose.yml文件的目录,执行以下命令启动kafka集群: ```bash docker-compose up -d ``` 4. 验证kafka集群是否正常运行。可以通过在kafka1或kafka2容器中执行以下命令来创建一个测试主题: ```bash docker exec -it {kafka容器名称} bash ``` ```bash kafka-topics.sh --create --topic test-topic --partitions 3 --replication-factor 2 --zookeeper zookeeper:2181 ``` ```bash kafka-console-producer.sh --topic test-topic --broker-list kafka1:9091,kafka2:9092 ``` ```bash kafka-console-consumer.sh --topic test-topic --bootstrap-server kafka1:9091,kafka2:9092 --from-beginning ``` 以上命令中,kafka容器名称可以通过docker ps命令查看。 5. 如果测试主题创建并且可以正常发送和接收消息,则说明kafka集群已经成功安装并运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值