Calico NetworkPlugin cni在pod' nginx'的状态挂钩上失败了。 - 无效的CIDR地址:设备" eth0"不存在

时间:2016-07-03 08:24:20

标签: kubernetes calico project-calico

我的小兵上有以下kubelet错误:

Jul 02 16:20:42 sc-minion-1 kubelet[46142]: E0702 16:20:42.899902 46142 manager.go:309] NetworkPlugin cni failed on the status hook for pod 'nginx' - invalid CIDR address: Device "eth0" does not exist.

我所有节点上的10-calico.conf看起来像这样:

{
    "name": "calico-k8s-network",
    "type": "calico",
    "etcd_authority": "172.1.1.4:6666",
    "log_level": "info",
    "ipam": {
        "type": "calico-ipam"
    }
}

我还在所有节点上运行了calicoctl pool add 192.168.0.0/16 --ipip --nat-outgoing

1 个答案:

答案 0 :(得分:1)

您从kubelet日志中显示的错误很常见且通常是良性的,只要在同一个pod的日志中不重复。 Kubernetes仓库中的此问题包含更多信息:https://github.com/kubernetes/kubernetes/issues/25281

您的Calico配置对我来说是正确的。但是你提到你在Azure上运行。目前,由于底层网络结构的限制,Calico ipip模式无法在Azure上运行(请参阅https://github.com/projectcalico/calico-containers/issues/949

你可能会使用像运河项目 - 法兰绒vxlan这样的东西,将Calico放在首位来实施政策。或者等到azure原生支持Calico,如上面的问题所述。