apiserver可以通过CNI提供的网络连接到节点的kubelet端口吗?

can the apiserver connect to the Kubelet port of a node through CNI-provided network?

Weave Net 的 sleeve mode 允许将 NAT 后面的节点添加到网格中,例如公司网络中没有外部 IP 的机器。

当 Weave Net 与 Kubernetes 一起使用时,可以将此类节点添加到集群中。唯一的缺点(除了与 fastdp 相比的性能)似乎是 Kubernetes API 服务器无法到达 Kubelet 端口,因此附加到 Pod 或获取日志不起作用。

是否可以通过某种方式解决此问题,例如通过 weave 网络连接到 NATed 节点的 Kubelet 端口?

考虑到 kubectl exec 的工作原理并查看 Weave Net 文档,无法解决 Weave CNI 的集群连接问题。

Weave 使用底层网络向节点发送数据包。我找不到任何资料说允许将集群节点放在NAT后面。可以找到更多详细信息here

因此无法按照您的建议解决此问题。

希望对您有所帮助。