kubernetes flannel 网卡绑定错误,故障排查
kubernetes 新加了个node,状态Ready,但调度过去的任务,都执行异常
查看异常节点日志
`Error adding net work: open run/flannel/subnet.env no such file or directory`
flannel 有问题
环境里flannel也是在容器里启动的,查看flannel,果然新节点的flannel服务没有起来
kbs get pods
kube-flannel-ds-28rh8 0/1 CrashLoopBackOff 7 1h
追查flannel启动日志
kbs logs --tail 10 -f kube-flannel-ds-28rh8
I1213 07:44:58.471264 1 main.go:201] Could not find valid interface matching en1: failed to find IPv4 address for interface en1
E1213 07:44:58.471366 1 main.go:225] Failed to find interface to use that matches the interfaces and/or regexes provided
interface en1 网卡问题
ifcofing 查看
原来这个节点的ip绑在en2上
再看其他节点运行正常的flannel,也是指向的en1
/opt/bin/flanneld --ip-masq --kube-subnet-mgr --iface=en1
问题已经定位到
k8s集群原来机器的ip都在en1上,flannel节点启动设置的网卡都在en1,新加的这台节点ip却在en2上,以en1启动则失败
查看flannel的配置
kubectl -n kube-system get ds kube-flannel-ds -o yaml
...
containers:
- args:
- --ip-masq
- --kube-subnet-mgr
- --iface=en1
...
果然这里也是en1
运维比较给力,10分就换好了网卡,服务正常恢复
如果无法更换网卡则需改个iface=en1这个参数
flannel如果在宿主机上,改宿主机的设置即可,但这里的flannel都是在容器内启动的
为了通用把
--iface=en1
改为(192.168.1.255是子网绑定的ip)
--iface=$(ip add |grep 192.168.1.255 |awk '{print $7}')
需要改的地方就是如何把有效的网卡拿出来
但这个方式通用性还是不太好
更复杂的通用办法就是写个复杂的sh,加入sh打成镜象或把sh映射到容器里,用sh替换启动容器的命令
最新文章
- thinkphp vendor
- Kakfa重连测试
- EntityFramework Reverse POCO Generator工具
- centos7安装eclipse
- OS X中如何获取当前运行程序的路径
- starting Intent from ProcessRecord with revoked permission android.permission.CALL_PHONE 的错误
- cocos2d-x box2d使用调试绘图
- 基于visual Studio2013解决算法导论之003雇佣问题
- Java常见算法整理
- JavaScript 面试中常见算法问题详解
- ROC曲线的计算
- 20190312 Windows上Kafka集群
- Android Toolbar的使用 顶部标题栏+后退键
- 人脸对齐matlab实现-FaceAlignment 3000fps
- Git配置用户名密码
- 自动实时监控Windows2003服务器终端登录
- memory leak-----tomcat日志warn
- JavaScript的柯里化函数
- python之路 线程、进程、协程、队列、python-memcache、python-redis
- 漫谈JVM之类加载机制(篇一)
热门文章
- POJ - 3657 Haybale Guessing(二分+并查集)
- Dlib笔记二:matrix或array2d与cv::Mat的互转
- 9.1hadoop 内置计数器、自定义枚举计数器、Streaming计数器
- 施魔法(DP)
- ZooKeeper解决的问题
- ZJNU 2340/2341/2343 - 罗小黑的“礼物”Ⅰ/Ⅱ/Ⅲ
- 在CentOS/RHEL 7下修改网卡名为 eth0 形式
- 计算机utf-8/gbk/utf-16对照表
- java依赖包问题排查
- [原]排错实战——通过对比分析sysinternals事件修复程序功能异常