Flanneld:错误注册网络:找不到具有管理 IP 的网络

Flanneld: error registering network: cannot finding network with management IP

我在覆盖 (VXLAN) 模式下使用 Flannel 设置一个混合模式的 kubernetes 集群(CentOS7 master,WS2019 worker)。我已经通过了 Microsoft Kubernetes for Windows Instructions but when I kick off start.ps1 I'm stuck in the "Waiting for the Network to be created" loop referenced here。按照他们的说明直接启动 flanneld,我收到以下错误:

E0306 16:43:21.218797 2576 main.go:289] Error registering network: Cannot find network with Management IP [IPAddrofWorkerNIC].

引用的 IP 是 "Ethernet" NIC 上工作人员的主要 IP,根据 flanneld 的 --iface 参数调用。

master 和 worker 都是启用了 MAC 欺骗的 Win10 1809 机器上的 Hyper-v VM。我确认6433/tcp、10250/tcp、4096/udp和4789/udp在master的firewalld中打开。我也禁用firewalld后再次尝试,没有任何变化,所以我认为问题不是在master端。

我尝试在引用的第 289 行的 flanneld Go code 中挖掘线索,但我不熟悉 Go,不得不认输。

知道为什么我会收到此错误吗?

显然我没有仔细阅读要求。 Windows 上的 Flannel VXLAN 在 3 月 25 日发布的 Kubernetes 1.14 之前不受支持。

Overlay networking: use Flannel in vxlan mode to configure a virtual overlay network

-     requires either Windows Server 2019 with KB4482887 installed or Windows Server vNext Insider Preview Build 18317+
-     requires Kubernetes v1.14 (or above) with WinOverlay feature gate enabled
-     requires Flannel v0.11.0 (or above)

./start.ps1指定参数时

.\start.ps1 -ManagementIP 10.0.xxx.xxx [...]

我把 Kubernetes API 服务器的 IP 放在那里,而不是新 Windows 节点的 IP,如 -ManagementIP.

使用正确的值重新运行 start.ps1 解决了我的问题。