[英]Kafka from docker container not showing topics in offset explorer
嗨,我在设置 kafka / docker 以显示所有主题时遇到问题,这是用于测试/开发环境的。 我对 Kafka 和 docker 很陌生,所以我的一些术语可能不正确
设置:自定义 Windows 应用程序 - 带有 Kafka / zoo-keeper- 容器 - 偏移资源管理器的 WSL (Debian)。
我在偏移资源管理器中得到一个绿色集群连接,但没有主题:
Docker 容器克隆自: https ://github.com/wurstmeister/kafka-docker/blob/master/README.md
Windows 主机 IP 为 192.168.1.143。
从 windows cmd 我可以看到 WSL 的 IP 为 172.25.224.1。
通过附加到 docker 容器docker exec -t -i 64a637cea4b9 /bin/bash
上的 bash shell,我可以运行ifconfig
并获取内部 ip 172.18.0.2。
从 docker 容器我可以 ping 主机 192.168.1.143。
从 WSL 我可以 ping 容器
从 Windows 主机我可以固定 WSL 172.25.224.1。
从 windows 主机我无法 ping 容器 172.18.0.2。 我不确定这是否相关,但我的蜘蛛感觉对这次 ping 失败有点刺痛。
我对 docker-compose.yml 做了一些修改。
version: '2'
services:
zookeeper:
image: wurstmeister/zookeeper
container_name: zookeeper
ports:
- "2181:2181"
restart: unless-stopped
kafka:
container_name: kafka-container
build: .
ports:
- "9092"
environment:
DOCKER_API_VERSION: 1.22
KAFKA_ADVERTISED_HOST_NAME: 192.168.1.143
AUTO_CREATE_TOPICS_ENABLE: 'true'
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- /var/run/docker.sock:/var/run/docker.sock
restart: unless-stopped
我还尝试通过添加来编辑 docker 容器中的两个配置文件 /opt/kafka_2.13-2.8.1/config/server.properties 和 opt/kafka_2.13-2.8.1/config/kraft/server.properties该行:
auto.create.topics.enable=true
当我读到这可能有帮助?
我没有想法,因为偏移浏览器中的连接似乎表明我们有某种形式的连接,但显然不完整。 我对它发生的事情没有很好的理解,所以它可能很简单。 感谢您提供任何可能的帮助!
因此,WSL 和 windows 之间似乎存在网络问题。 最后,我将 kafka 直接安装到 WLS 中,但仍然存在问题。 解决方案是四倍。
在 WLS 中更喜欢 IV4
export KAFKA_OPTS="-Djava.net.preferIPv4Stack=True" 我最终把它放在 bin/zookeeper-server-start.sh 和 bin/kafka-server-start.sh 的开头
通过添加/设置 reg 设置在 Windows 中首选 IPV4
New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters" -Name "DisabledComponents" -Value 0x20 -PropertyType "Dword"
或者如果 reg 键已经存在
Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\" -Name "DisabledComponents" -Value 0x20
需要重新启动才能生效。
WLS 端口转发 使用 [这里][1] 中的脚本并修改端口。
确保 config/server.properties 中的 Advertisementd.hosts.name 设置为等于 ifconfig 返回的 WSL 内部 IP。
在此之后,我可以通过 python 脚本或手动使用 kafkacat 添加我的主题。 [1]: https ://dev.to/vishnumohanrk/wsl-port-forwarding-2e22
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.