docker-compose 部署kafkakafka-manager集群
以下是一个简单的示例docker-compose.yml文件,用于部署Kafka和Kafka-Manager集群。在这个例子中,我们使用了三个Kafka节点和一个Kafka-Manager节点。
version: '3'
services:
kafka-zookeeper:
image: wurstmeister/zookeeper
restart: always
ports:
- "2181:2181"
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=kafka-zookeeper:2888:3888
networks:
- kafka-network
kafka-node-1:
image: wurstmeister/kafka
restart: always
ports:
- "9092:9092"
environment:
KAFKA_ZOOKEEPER_CONNECT: kafka-zookeeper:2181
KAFKA_ADVERTISED_HOST_NAME: kafka-node-1
KAFKA_BROKER_ID: 1
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 2
depends_on:
- kafka-zookeeper
networks:
- kafka-network
kafka-node-2:
image: wurstmeister/kafka
restart: always
ports:
- "9093:9092"
environment:
KAFKA_ZOOKEEPER_CONNECT: kafka-zookeeper:2181
KAFKA_ADVERTISED_HOST_NAME: kafka-node-2
KAFKA_BROKER_ID: 2
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 2
depends_on:
- kafka-zookeeper
networks:
- kafka-network
kafka-node-3:
image: wurstmeister/kafka
restart: always
ports:
- "9094:9092"
environment:
KAFKA_ZOOKEEPER_CONNECT: kafka-zookeeper:2181
KAFKA_ADVERTISED_HOST_NAME: kafka-node-3
KAFKA_BROKER_ID: 3
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 2
depends_on:
- kafka-zookeeper
networks:
- kafka-network
kafka-manager:
image: kafkamanager/kafka-manager
restart: always
ports:
- "9000:9000"
environment:
ZK_HOSTS: kafka-zookeeper:2181
APPLICATION_SECRET: letmein
networks:
- kafka-network
networks:
kafka-network:
在这个例子中,我们使用了wurstmeister/kafka和kafkamanager/kafka-manager这两个Docker镜像。在Kafka节点中,我们设置了KAFKA_ZOOKEEPER_CONNECT环境变量来指定Zookeeper的连接地址。我们还设置了KAFKA_ADVERTISED_HOST_NAME环境变量来指定该节点的主机名。KAFKA_BROKER_ID环境变量用于指定每个Kafka节点的唯一标识符。KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR环境变量用于指定偏移量主题的副本因子。
在Kafka-Manager节点中,我们设置了ZK_HOSTS环境变量来指定Zookeeper的连接地址。我们还设置了APPLICATION_SECRET环境变量来指定Kafka-Manager的应用程序密钥。
在这个例子中,我们使用了一个名为kafka-network的Docker网络。您可以根据需要使用不同的网络名称。
要启动此Docker Compose文件,请使用以下命令:
docker-compose up -d
这将启动Kafka和Kafka-Manager集群,并将它们连接到一个Docker网络中。您可以使用以下命令来检查容器是否正在运行:
docker ps
您还可以使用以下命令来查看Kafka-Manager的Web界面:
http://localhost:9000
在这个例子中,我们将Kafka节点的端口映射到主机的端口上。如果您正在运行Docker Compose文件的主机不是localhost,则需要将localhost替换为Docker主机的IP地址
原文地址: https://www.cveoy.top/t/topic/cp3E 著作权归作者所有。请勿转载和采集!