Docker Compose 部署 Zookeeper、Kafka 和 Kafka-Manager 集群
以下是使用 Docker Compose 部署 Zookeeper、Kafka、Kafka-Manager 集群的示例:
-
创建一个目录,例如:
/home/user/kafka-cluster -
在该目录下创建一个
docker-compose.yml文件,内容如下:
version: '3'
services:
zookeeper:
image: zookeeper:3.5.6
ports:
- '2181:2181'
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zookeeper:2888:3888
volumes:
- './data/zookeeper:/data'
kafka1:
image: wurstmeister/kafka:2.12-2.7.0
ports:
- '9092:9092'
environment:
KAFKA_ADVERTISED_HOST_NAME: kafka1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_BROKER_ID: 1
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
volumes:
- './data/kafka1:/kafka'
depends_on:
- zookeeper
kafka2:
image: wurstmeister/kafka:2.12-2.7.0
ports:
- '9093:9092'
environment:
KAFKA_ADVERTISED_HOST_NAME: kafka2
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_BROKER_ID: 2
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
volumes:
- './data/kafka2:/kafka'
depends_on:
- zookeeper
kafka3:
image: wurstmeister/kafka:2.12-2.7.0
ports:
- '9094:9092'
environment:
KAFKA_ADVERTISED_HOST_NAME: kafka3
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_BROKER_ID: 3
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
volumes:
- './data/kafka3:/kafka'
depends_on:
- zookeeper
kafka-manager:
image: hlebalbau/kafka-manager:latest
ports:
- '9000:9000'
environment:
ZK_HOSTS: zookeeper:2181
APPLICATION_SECRET: 'random-secret'
depends_on:
- zookeeper
- 创建一个
data目录,用于存储zookeeper和kafka的数据
mkdir -p /home/user/kafka-cluster/data/zookeeper
mkdir -p /home/user/kafka-cluster/data/kafka1
mkdir -p /home/user/kafka-cluster/data/kafka2
mkdir -p /home/user/kafka-cluster/data/kafka3
- 使用
docker-compose启动集群
cd /home/user/kafka-cluster
docker-compose up -d
- 查看服务状态
docker-compose ps
- 访问kafka-manager
打开浏览器,访问http://localhost:9000,即可进入kafka-manager的管理界面。在界面上添加kafka集群,将Cluster Zookeeper Hosts设置为zookeeper:2181,Cluster Name可以根据需要自己设置。之后就可以在kafka-manager上进行kafka集群的管理了。
原文地址: https://www.cveoy.top/t/topic/nveZ 著作权归作者所有。请勿转载和采集!