K8s 网络插件 Calico 报错:Number of node(s) with BGP peering established = 0
问题现象
calico 对应的 Pod 启动失败,报错:
Number of node(s) with BGP peering established = 0
问题分析
Calico 提供了 IP 自动检测的方法,默认是使用第一个有效网卡上的第一个有效的 IP 地址:
IP_AUTODETECTION_METHOD=first-found
节点上应该是出现了有问题的网卡,可以使用以下命令查看:
ip link | grep br
问题原因
Calico 选择了有问题的网卡,导致 Pod 不能启动。
解决方案
有两种方法:
方法一:修改 IP 自动检测方法
Calico 部署 yaml 中,在 spec.containers.env
下添加以下两行:
- name: IP_AUTODETECTION_METHOD
value: "interface=ens.*" # ens 根据实际网卡开头配置
CentOS 7 以后的系统,由于 systemd 版本升级,网卡命名模式已经由 ethX 更改为 ensX。
方法二:删除有问题的网卡(推荐)
指定网卡名称(br 开头的问题网卡)删除:
ifconfig br-xd3829 down
参考资料
在Kubernetes中正确地安装Calico
K8S集群Calico网络组件报错BIRD is not ready: BGP not established with
Calico -Calico问题排障汇总
k8s网络之Calico网络
网卡不叫eth0,而叫ens33、ens160、eno1 or enp0s*?
Predictable Network Interface Names
本文作者:ageovb
本文链接:https://www.cnblogs.com/ageovb/p/16727759.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
分类:
,
标签:
,
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步