4

在我的 kubernetes 集群中,每个节点都是一个带有两个 NIC 的 virtualbox vm,eth0 用于 NAT,eth1 用于 Host-Local 通信。

kubectl get pod --all-namespaces -o wide节目

在此处输入图像描述

我们可以看到 k8s-3 和 k8s-4 报告了正确的 IP,而 k8s-2 没有。

我试图添加's但它只是不起作用 --bind-address=192.168.99.202k8s-2kube-proxy.yaml

有人有什么建议吗?

4

2 回答 2

2

https://github.com/kubernetes/kubernetes/issues/44702

通过传递--node-ip=给 kubelet 解决了问题。

于 2017-06-06T08:24:55.717 回答
0

在您的 kubelet 中使用 --hostname-override 并将其设置为 ip。它会将您的节点名称添加到您的 ip 中,但它将具有正确的地址。我在我的测试集群(vagrant 和 virtualbox)上遇到了这个问题,我不得不做出改变。我还在我的 kube-proxy 中设置了主机名覆盖。我正在对我的 kube-proxy 问题进行故障排除,并且有一次我进行了更改,但这并不是最终解决它的原因,所以我不确定是否真的需要。

如果您正在运行法兰绒,请不要忘记确保它使用正确的 --iface,因为它喜欢使用 eth0。

于 2017-04-21T14:46:43.430 回答