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替换启动容器的命令

kubernetes flannel 网卡绑定错误,故障排查的更多相关文章

  1. 【转】Keepalived无法绑定VIP故障排查经历

    一 故障描述 我在台湾合作方给定的两台虚拟机上部署HAProxy+Keepalived负载均衡高可用方案.在配置完Keepalived后,重新启动Keepalived,Keepalived没有绑定VI ...

  2. VMware常见错误故障排查

    1. VMware安装失败 “Failed to create the requested registry key Key:installer Error:1021" 1.1. windo ...

  3. 图解Kubernetes——故障排查指南

    针对越来多的Kubernetes容器云,对Kubernetes集群的故障排查却成了一个棘手问题.本文虫虫给大家以直观图示方式介绍如何排查Kubernetes的故障.该篇是系列文章续——故障排查篇. 概 ...

  4. [转] Linux运维常见故障排查和处理的技巧汇总

    作为linux运维,多多少少会碰见这样那样的问题或故障,从中总结经验,查找问题,汇总并分析故障的原因,这是一个Linux运维工程师良好的习惯.每一次技术的突破,都经历着苦闷,伴随着快乐,可我们还是执着 ...

  5. Linux运维常见故障排查和处理的33个技巧汇总

    作为linux运维,多多少少会碰见这样那样的问题或故障,从中总结经验,查找问题,汇总并分析故障的原因,这是一个Linux运维工程师良好的习惯.每一次技术的突破,都经历着苦闷,伴随着快乐,可我们还是执着 ...

  6. 超长可视化指南!带你理清K8S部署的故障排查思路,让bug无处遁形

    本文将帮助你厘清在Kubernetes中调试 deployment的思路.下图是完整的故障排查思路,如果你想获得更清晰的图片,请在公众号后台(RancherLabs)回复"troublesh ...

  7. 冗余网络构建方案对比:VRRP协议、多网卡绑定及WN202冗余链路网卡

    在组建网络时为网络设计冗余方案已经成为提高网络可用性必不可少的一环,伴随着网络技术的发展实现网络冗余的技术方案也是层出不穷,例如应用于服务器端的HA.LB,应用于存储的SAN.DAS.NAS等.本文重 ...

  8. SQL Server 2008性能故障排查(二)——CPU

    原文:SQL Server 2008性能故障排查(二)--CPU 承接上一篇:SQL Server 2008性能故障排查(一)--概论 说明一下,CSDN的博客编辑非常不人性化,我在word里面都排好 ...

  9. Linux系统运维故障排查

    一.思路 1.处理问题要求 2.一般思路 二.具体问题 1.网络问题 (1)网络不通 (2)网络很慢 2.硬件问题 3.操作系统问题 (1)系统无法正常启动 (2)系统运行慢或死机 4.服务或程序问题 ...

随机推荐

  1. h5-任意元素居中

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 两个exe共享内存数据

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  3. 理解String的intern()方法

    API文档中的介绍: intern public String intern() Returns a canonical representation for the string object. A ...

  4. 2. laravel 5.5 学习 过程中 遇到问题 的 链接

    关于 laravel 5.5 的文档 网络上已经太多 就不些太多重复的话了 在以后的 工作 中遇到问题的 查询到的解决方案 或者 相关文档将会具体写在这里 laravel 5.5 中文文档 https ...

  5. Go 验证是否字符串包含中文

    发现一个验证字符串是否包含中文滴时候,一个比正则更好使滴方法,而且是golang 自带滴验证. 不需要自己写正则验证,代码如下: package main import ( "fmt&quo ...

  6. Scanner方式输入小写字母转换成大写字母

    import java.util.Scanner; /**  * 小写字母转换成大写字母      * @author zzu119  *  */ public class letterTransfe ...

  7. kindle关闭自动同步

    登录网页,在我的“管理我的内容和设备”里,关闭自动同步设置

  8. JS—DOM操作

    节点分为三类: 1.元素节点:标签<div></div> 2.文本节点:标签内的纯文本. 3.属性节点:标签内的属性,id或class 查找元素: getElementById ...

  9. Half of UK 10-year-olds own a smartphone

    1. preposition n. 介词  pronoun  n. 代词 2. despite /preposition. (1) used to say that something happens ...

  10. Java static 静态代码块、代码块

    简述 static{} 静态代码块,加载类之前执行 {} 代码块,每次new的时候都会被执行 示例 类: public class Student { int age; String name; bo ...