求助:Container-Optimized OS Kubernetes节点丢失google-ip-forwarding-daemon.service IP
问题分析与修复方案
我之前在GCE环境维护老旧版本Kubernetes的时候也碰到过类似的问题,结合你的环境细节和症状表现,给你梳理下问题根源和可行的解决办法:
先明确你的环境背景
- Kubernetes版本:
v1.9.2 - 部署方式:通过
kube-up.sh在GCE环境搭建 - 节点操作系统:Container-Optimized OS (COS) 10032.88.0
核心症状拆解
- 节点上的
google-ip-forwarding-daemon.service日志持续出现异常 - 已经在运行的Pod大多能正常工作,但偶尔会被标记为
Unknown状态,随后被集群重调度 - 新调度到节点的Pod一直卡在
ContainerCreating状态,具体报错:Failed create pod sandbox. & Error response from daemon: network none not found
问题根源推测
从报错和症状来看,核心问题出在节点的容器网络栈异常,而google-ip-forwarding-daemon的异常要么是网络故障的诱因,要么是伴随现象:
- COS节点的容器网络配置(比如CNI插件相关的网络命名空间、网桥规则)出了损坏,导致Docker连内置的
none网络都找不到——别觉得奇怪,要是节点网络栈本身出问题,就算是Docker默认网络也会出故障 google-ip-forwarding-daemon负责GCE节点上的IP转发规则同步,它异常会直接导致Pod网络连通性失效,甚至让Kubelet误判Pod状态(标记为Unknown)- Kubernetes v1.9.2是2018年的老版本,和COS 10032.88.0大概率存在兼容性适配问题,尤其是网络组件的交互逻辑
无需重启节点的替代修复方案
1. 先重启异常的网络相关服务
别着急重启节点,先试试重启google-ip-forwarding-daemon和Kubelet,很多时候能快速恢复:
# 重启google-ip-forwarding-daemon服务 sudo systemctl restart google-ip-forwarding-daemon.service # 检查服务是否正常启动 sudo systemctl status google-ip-forwarding-daemon.service # 接着重启Kubelet sudo systemctl restart kubelet.service
重启完后看看Pod状态有没有恢复,同时检查Docker的默认网络是否正常:
# 查看Docker内置的none网络是否存在 docker network ls | grep none
2. 重建Docker网络栈
如果发现none网络真的丢了,可以尝试重建Docker的默认网络:
# 先停掉Docker服务 sudo systemctl stop docker.service # 备份并删除Docker的网络配置数据库 sudo mv /var/lib/docker/network/files/local-kv.db /var/lib/docker/network/files/local-kv.db.bak # 重启Docker服务,它会自动重建默认网络 sudo systemctl start docker.service
等Docker重启完成后,再重启Kubelet让它重新同步Pod的网络配置。
3. 检查并修复IP转发配置
IP转发是Kubernetes网络正常运行的基础,确认节点的IP转发是否开启:
# 查看当前IP转发状态 sysctl net.ipv4.ip_forward # 如果输出是0,临时开启 sudo sysctl -w net.ipv4.ip_forward=1 # 写入配置文件,确保节点重启后依然生效 echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
长期稳定解决方案
- 升级Kubernetes版本:v1.9.2实在太老了,存在大量已知bug和兼容性问题,建议升级到官方支持的稳定版本(比如v1.21+,注意和GCE/COS的版本匹配)
- 同步升级COS版本:COS 10032.88.0也是旧版本,新版本修复了很多网络相关的bug,升级到最新稳定版能减少这类问题的发生
- 更换部署方式:
kube-up.sh已经被官方逐渐弃用,建议改用GKE(Google托管的K8s服务),或者用kubeadm进行部署,稳定性和后续维护都会省心很多
内容的提问来源于stack exchange,提问作者FriedOkra
相关产品推荐
相关产品推荐

