【问题标题】:Calico NetworkPlugin cni failed on the status hook for pod 'nginx' - invalid CIDR address: Device "eth0" does not existCalico NetworkPlugin cni 在 pod 'nginx' 的状态挂钩上失败 - 无效的 CIDR 地址:设备“eth0”不存在
【发布时间】:2016-07-07 00:43:28
【问题描述】:

我的 minions 出现以下 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

【问题讨论】:

  • 输入ifconfig 看看有哪些接口。
  • 在minions上运行ifconfig,我有以下接口calife2d2bc6404docker0eth0lolxcbr0,和tunl0
  • 另一个minion上的calico接口是cali765599c241a
  • 好像是azure阻塞ipip流量的问题

标签: kubernetes calico project-calico


【解决方案1】:

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

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

您可能会使用类似于 canal 项目的东西 - flannel vxlan,并在顶部使用 Calico 来实施政策。或者等到 azure 原生支持 Calico,如上述问题中所述。

【讨论】:

    猜你喜欢
    • 2019-12-29
    • 2017-11-02
    • 2021-08-31
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 2020-08-05
    • 2021-01-12
    • 2015-12-15
    相关资源
    最近更新 更多