docker-compose kafka kraft
时间: 2023-08-22 22:14:10 浏览: 166
Kafka是一个分布式流处理平台,用于处理高吞吐量的实时数据流。最近,Kafka开始逐步舍弃Zookeeper,而使用自带的KRaft。如果你想使用Docker来安装Kafka并且不使用Zookeeper,可以按照以下步骤进行操作。
首先,你需要在各个服务器上创建一个docker-compose.yml文件,并将以下内容放入文件中:
```
version: "3"
services:
kafka:
image: 'bitnami/kafka:latest'
user: root
environment:
- KAFKA_ENABLE_KRAFT=yes
- KAFKA_CFG_PROCESS_ROLES=broker,controller
- KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9095,CONTROLLER://:9096
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://10.8.15.49:9095
- KAFKA_BROKER_ID=1
- KAFKA_KRAFT_CLUSTER_ID=LelM2dIFQkiUFvXCEcqRWA
- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@10.8.15.49:9096,2@10.11.206.141:9093,3@10.11.206.4:9093
- ALLOW_PLAINTEXT_LISTENER=yes
volumes:
- /data/deploy/kafkaCluster/kraft:/bitnami/kafka:rw
network_mode: host
```
请注意,由于某些服务器的端口9092和9093已被占用,所以在这个例子中使用了9095和9096端口。另外,由于使用了network_mode: host,所以docker-compose文件中没有指定ports。
完成后,你可以使用docker-compose命令来启动Kafka:
```
docker-compose up -d
```
这将在你的服务器上启动Kafka容器,并使用指定的配置参数。现在,你可以使用Kafka来处理你的消息系统了。
阅读全文