k8s集群安装网络插件calico常见问题

关于calico网络插件报错的常见问题处理

1.安装calico插件时,calico相关pod无法成功运行。

c 复制代码
报错信息:"MountVolume.SetUp failed for volume "bpffs" : hostPath type check failed: /sys/fs/bpf is not a directory"
解决办法:检查系统内核版本,升级系统内核到4.4以上
c 复制代码
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
# 安装最新版本内核
yum --enablerepo=elrepo-kernel install -y kernel-lt
# 查看可用内核
cat /boot/grub2/grub.cfg |grep menuentry
# 设置开机从新内核启动
grub2-set-default "CentOS Linux (5.4.188-1.el7.elrepo.x86_64) 7 (Core)"  #此处根据你安装的实际内核版本进行替换设置
# 查看内核启动项
grub2-editenv list
# 重启系统使内核生效
reboot
# 查看内核版本是否生效
uname -r

2."Readiness probe failed: calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to connect to BIRDv4 socket: dial unix /var/run/calico/bird.ctl: connect: connection refused"

解决办法:检查服务器是否是双网卡,修改calico配置文件指定正确的网卡名。(注意如下的ensxxx只是举例,具体看自己的机器网卡名)

方法一:

kubectl edit ds calico-node -n kube-system

c 复制代码
# 新增环境变量(指定使用网卡interface=ensxxx)
- name: IP_AUTODETECTION_METHOD
  value: interface=ensxxx

方法二:

如果calico插件是单个calico.yaml文件,则修改calico.yaml配置文件,如果是operator方式安装,则修改custom-resources.yaml文件

#修改calico.yaml方式

c 复制代码
  - name: IP_AUTODETECTION_METHOD
    value: "interface=ensxxx"

#修改完删除重新创建。

c 复制代码
kubectl delete -f calico.yaml
kubectl create -f calico.yaml
相关推荐
有代理ip31 分钟前
详解 HTTP 代理 8080 与 3128 的端口特性及用途
网络·网络协议·http
Hill_HUIL6 小时前
学习日志23-路由高级特性(静态路由)
网络·学习
cyhty6 小时前
静态路由实验报告
网络·网络安全
Chen放放6 小时前
【华三】VXLAN-三层集中式网关配置
运维·网络
花火Neko`6 小时前
openwrt防火墙安全配置
网络·安全·智能路由器·istoreos
Wen6 小时前
小米路由器4A千兆刷OPENWRT(简单快速)
网络·经验分享·智能路由器
碎梦归途6 小时前
思科网络设备配置命令大全,涵盖从交换机到路由器的核心配置命令
linux·运维·服务器·网络·网络协议·路由器·交换机
七维大脑虚拟机6 小时前
飞牛NAS公网IPv6+DDNS远程访问零延迟教程
运维·服务器·网络
珠海西格电力科技7 小时前
微电网系统架构设计:并网/孤岛双模式运行与控制策略
网络·人工智能·物联网·系统架构·云计算·智慧城市
浩浩测试一下7 小时前
从Web 到 域控 <----> 企业级内网渗透思路
网络