emqx开源版5.8.4使用k8s方式构建集群,pod在ipv6单栈场景下访问k8s_apiserver域名失败

相关配置如下


错误日志如下

实际上,修改成 IP地址,仍然出现类似错误


错误显示 “nxdomain”,表示该域名无法解析或地址无法访问。

IPv6 地址 2001:db8:42:1::1 是一个示例/文档地址(属于 RFC 3849 定义的文档前缀),不是真实可连接的地址。

你应该将其替换为你实际 Kubernetes apiserver 的 IPv6 地址。你可以通过以下命令找到正确的地址:
kubectl -n kube-system get endpoints kubernetes
或者
kubectl get service kubernetes

k8s.apiserver = “https://[你的实际IPv6地址]:443”

首先,感谢您的回复。

apiserver 的 svc 地址确实是 2001:db8:42:1::1


然而,即使更换为具体 endpoint 的 pod ip 和 port 后,仍然可以复现此问题

本意是使用 apiserver 的 svc 域名 或 ip

不过这里的报错一直是 inet nxdomain
我理解是不是 emqx 错误的把 ipv6下的域名或者地址,当做成ipv4下的域名或者地址了?
针对 单栈ipv6 环境,是不是还存在额外的配置?
目前我的配置如下


image
image

没有了,有一个 address_type ,他默认就是 ip 的

所以目前 是不是不支持 单栈ipv6,k8s 集群发现这种方式 ? :sweat_smile:

你所有的图上的配置都配置了。address_type 为 hostname,你填的也是 ip, 试试把他改成 ip,看看效果?

address_type 应该只是一个显示形式

不太明白什么是"显示形式",我看到的明明是hostname,为什么一下就是 ip 了?
如果节点是 running 的 试试,看看运行状态的是什么值。
./bin/emqx ctl conf show cluster


好的,谢谢,那生效的应该是 ip 了。
估计是 bug,麻烦 GitHub · Where software is built 提个问题,在这里更方便跟进。

再次感谢回复和支持 :+1: