我正在使用
docker-compose.yml
运行 kafka。我docker-compose.yml
的内容是:
version: "3.8"
name: "event-driven-systems"
services:
kafka:
container_name: "kafka"
image: "bitnami/kafka:latest"
networks:
- internal
ports:
- "9092:9092"
volumes:
- "kafka_data:/bitnami"
environment:
- KAFKA_CFG_NODE_ID=0
- KAFKA_CFG_PROCESS_ROLES=controller,broker
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka:9093
- KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
networks:
internal:
driver: "bridge"
volumes:
kafka_data:
driver: local
我正在使用 spring 的 kafka 依赖项连接到正在运行的 kafka 服务。 在 Spring Boot 的 application.yml 文件中,我有这个:
kafka-topic:
name: "location-update-topic"
spring:
kafka:
producer:
bootstrap-servers: "localhost:9092"
key-serializer: org.apache.kafka.common.serialization.StringSerializer
value-serializer: org.apache.kafka.common.serialization.StringSerializer
server:
port: 8081
但我收到此错误:
2023-08-30T20:54:01.884+05:30 WARN 263120 --- [| adminclient-1] org.apache.kafka.clients.NetworkClient : [AdminClient clientId=adminclient-1] Error connecting to node 596afe8fbe94:9092 (id: 0 rack: null)
java.net.UnknownHostException: 596afe8fbe94
at java.base/java.net.InetAddress$CachedAddresses.get(InetAddress.java:801) ~[na:na]
at java.base/java.net.InetAddress.getAllByName0(InetAddress.java:1524) ~[na:na]
at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1381) ~[na:na]
at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1305) ~[na:na]
at org.apache.kafka.clients.DefaultHostResolver.resolve(DefaultHostResolver.java:27) ~[kafka-clients-3.4.1.jar:na]
at org.apache.kafka.clients.ClientUtils.resolve(ClientUtils.java:110) ~[kafka-clients-3.4.1.jar:na]
...
如何解决这个问题。我是第一次使用kafka。
尝试主机就在那里安装应用程序。