kubernetes flannel pod CrashLoopBackoff解决

2023-05-16

背景

某环境客户部署了一个kubernetes集群,发现flannel的pod一直重启,始终处于CrashLoopBackOff状态。

image-20200521194511898

 

排查

  1. 对于始终CrashLoopBackOff的pod,一般是应用本身的问题,需要查看具体pod的日志,通过kubectl logs -f --tail -n kube-system flannel-xxx显示,“pod cidr not assigned”,然后flannel退出

    image-20200521195205880

  2. 检查日志显示的节点10.0.0.17的cidr,发现确实为空,而正常的环境却是正常的。

image-20200521195643737

image-20200521195710005

     3. 检查flannel的启动参数,发现为--kube-subnet-mgr,–kube-subnet-mgr代表其使用kube类型的subnet-manager。该类型有别于使用etcd的local-subnet-mgr类型,使用kube类型后,flannel上各Node的IP子网分配均基于K8S Node的spec.podCIDR属性—"contact the Kubernetes API for subnet assignment instead of etcd.",而在第2步,我们已经发现节点的podcidr为空。image-20200521200119268

    4. node节点分配podCIDR,需要kube-controller-manager开启allocate-node-cidrs为true,它和cluster-cidr参数共同使用的时候,controller-manager会为所有的Node资源分配容器IP段, 并将结果写入到PodCIDR字段.检查环境kube-controller-manager的配置文件,发现问题所在。如下图,环境设置了cluster-cidr192.168.2.0/24,同时设置了node-cidr-mask-size24,node-cidr-mask-size参数,用来表示kubernetes管理集群中节点的cidr掩码长度,默认是24位,需要从cluster-cidr里面分配地址段,而设置的cluster-cidr显然无法满足这个掩码要求,导致kube-controller-manager为节点分配地址失败。

image-20200521201817669

后记

综上,可以修改node-cidr-mask-size参数为24以上的数解决node没法分配podcidr问题,但是同时发现环境部署使用的kubernetes自动化工具分配集群的service-cluster-ip-range也是从cluster-cidr里面取一段,分配不满足竟然使用了和cluster-cidr一样的地址,造成网段冲突。最终,让客户重新规划了网段,修改cluster-cidr掩码从24位改为16位,后续flannel均启动正常。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

kubernetes flannel pod CrashLoopBackoff解决 的相关文章

随机推荐

  • new 对象加括号和不加括号的区别

    在new对象的时候有加上 xff0c 有不加 xff0c 不知道这个到底是什么区别 xff1f 比如 xff1a cpp view plain copy print CBase base 61 new CDerived CBase base
  • 结构程序设计的经典定义

    结构程序设计的经典定义如下所述 xff1a 如果一个程序的 代码块仅仅通过顺序 选择和循环这3种基本控制结构 进行连接 xff0c 并且每个代码块只有一个入口和一个出口 xff0c 则称这个程序是结构化的 如果只允许使用顺序 IF THEN
  • 总体设计启发性规则7条

    nbsp 启发性规则 7条 1 改进软件结构提高模块独立性 通过模块分解或合并 降低耦 合提高内聚 2 模块规模应该适中 过大的模块往往是由于分解不充分 过小 的模块将导致模块数目过多将使系统接口复杂 3 深度 宽度 扇出和扇入都应适当 深
  • SqlServer调用webapi和webService接口

    1 通过http协议post调用webapi接口 xff08 json数据格式 xff09 declare 64 ServiceUrl as varchar 1000 set 64 ServiceUrl 61 39 http 127 0 0
  • C语言和C++的区别是什么?8个点通俗易懂的告诉你

    有些初学的同学傻傻分不清其中的区别 xff0c 下面我将详细的讲解C语言和C 43 43 的区别点 帮助大家尽快的理解 1 关键字 蓝色标注为C语言关键字 xff0c C 43 43 继承了C语言的所有关键字 xff0c 以下红色标注为C
  • money 最小花费(spfa)

    问题描述 在n个人中 xff0c 某些人的银行账号之间可以互相转账 这些人之间转账的手续费各不相同 给定这些人之间转账时需要从转账金额里扣除百分之几的手续费 xff0c 请问A最少需要多少钱使得转账后B收到100元 输入格式 第一行输入两个
  • cpu优化-cpu亲和性

    cpu亲和性 taskset命令可以将进程绑核 格式为taskset p c cpu list pid xff0c 其中cpu list是数字化的cpu列表 xff0c 从0开始 多个不连续的cpu可用逗号连接 xff0c 连续的可用 连接
  • Homebrew安装慢,总是失败如何解决

    前言 如果使用Homebrew xff08 https brew sh xff09 官网提供的命令来进行下载的 xff0c 是从github上进行下载 xff0c 没有翻墙工具的话会比较慢 xff0c 甚至可能会下载失败 xff0c 所以我
  • 开源飞控APM与PIXHAWK

    一 APM 官网地址 xff1a http ardupilot org APM xff08 ArduPilotMega xff09 是在2007年由DIY无人机社区 xff08 DIY Drones xff09 推出的飞控产品 xff0c
  • Pixhawk解锁常见错误

    第一次解锁 xff0c 接上MP看着HUD的提示 xff0c 即飞行数据的界面 xff1a 一般的不成功解锁有以下的原因 xff08 网络整理 xff09 xff08 1 xff09 HUD显示 RC not calibrated xff1
  • 学习MySQL——单表查询

    文章目录 一 SQL语言规范二 基本的SELECT语句1 列的别名2 去除重复行3 空值参与运算4 着重号 96 96 5 显示表结构 三 运算符 比较运算符1 等号运算符 xff08 61 xff09 2 不等于运算符 xff08 lt
  • FreeRTOS-启动第一个任务

    FreeRTOS开始第一个任务源码分析 vTaskStartScheduler xff1a 1 创建一个空任务 xff1a 优先级为0 2 是否使用软件定时器 是的话 创建软件定时器 3 关闭中断 xff08 关中断操作的寄存器是BASEP
  • 我的2014个人总结——学习篇、工作篇、生活篇

    2013的个人总结在我印象当中是写过的 xff0c 2014已成为过去 xff0c 当我想回过头来看看我2013年的总结时 xff0c 奈何我已不知它的踪迹了 xff0c 所以决定以后的个人总结还是以博客的形式记录吧 xff01 平静下来
  • ubuntu vnc 已经配置好,一键开启,节省大家时间

    1 粘贴复制 自己找个目录复制过去 2 修改权限 sudo chmod 777 x0vncserver 3 开启 x0vncserver rfbport 61 5900 SecurityTypes 61 None 下载地址 xff1a ht
  • ArcGIS Engine许可突然用不了了或者localhost没有有效的许可管理器

    ArcGIS Engine许可突然用不了了或者localhost没有有效的许可管理器 在Arc Engine安装包中再重新安装一次许可管理
  • ZeroMQ学习 (五)发布-订阅模式

    7 发布 订阅模式 发布者不用管是否有订阅者 xff0c 它只管不停的发布 xff0c 也不用接受客户端的请求 多订阅者可以尝试链接发布者 xff0c 来接受信息 xff0c 但是不能往发布者发送请求 发布者源码 xff1a span st
  • 树莓派3B+安装Ubuntu20.04

    ros2已经出到F版本了 xff0c 本来想下载一个尝鲜一下 xff0c 怒肝了两天终于把Ubuntu20 04装到树莓派里面了 但是 xff0c 忽然发现F版本的还未发行 xff0c 只是在网站上更新了安装方法 xff0c 安装包和公钥都
  • 【SpringBoot】SpringBoot+SpringSecurity+CAS实现单点登录

    文章目录 一 CAS的概述1 SSO2 CAS3 概念 二 CAS的流程三 CAS服务端部署1 下载地址2 源码打包3 部署运行4 java io FileNotFoundException etc cas thekeystore 系统找不
  • Google Scholar 谷歌学术文献检索技巧总结

    原文链接 xff1a https zhuanlan zhihu com p 24369927 身边有朋友想学如何使用谷歌学术 xff0c 为了更广泛的传播和重复查阅 xff0c 故将个人了解到的谷歌学术检索文献的技巧总结在此 当然 xff0
  • kubernetes flannel pod CrashLoopBackoff解决

    背景 某环境客户部署了一个kubernetes集群 xff0c 发现flannel的pod一直重启 xff0c 始终处于CrashLoopBackOff状态 排查 对于始终CrashLoopBackOff的pod xff0c 一般是应用本身