当前位置: 首页 > news >正文

calico node一直not ready

背景

我司某个大数据集群在做完添加到集群联邦管理后,该集群的calico-node全部处于not ready 状态,导致集群中节点之前的跨节点容器网络不通。

操作

将大数据所在的k8s集群添加到集群联邦的控制平面后,我们为了做各个子集群之间的容器网络可以直通,同时在对应的大数据集群安装了submariner,submariner安装后,其中有一个route-agent组件会以daemonset的方式在每个节点上都启一个Pod,该Pod起来后会在对应的每个节点上创建一个vx-submariner的vxlan网卡

问题

地址为240.x.x.x,calico-node的配置的IP为aoto-detach,通过查看calico-node的日志发现,calico-node启动的时候选择到了240.x.x.x网卡来做为bgp peer member的通信地址,而这是一张虚拟的网卡,各个节点之前是不能直接通的,从而导致bird组件一直not ready,随后通过官方推介的方式将calico-node的配置修改IP_AUTODETECTION_METHOD=kubernetes-internal-ip,从起所有的calico-node,但是还是not ready,通过查看对应的日志,发现还是选择的240.x.x.x网卡

原因

通过查看calico-node flex对应的部分的代码,发现,calico-node起来后会通过获取自己所在的的node信息,然后根据node上的key为projectcalico.org/IPv4Address对应的IP来构建一个node struct当作peer member的ip暴露出来,所以即使配置IP_AUTODETECTION_METHOD=kubernetes-internal-ip,calico-node启动的时候还是会优先选择node的key为projectcalico.org/IPv4Address的annotation对应的值来作为bgp peer member的ip。经过查看node的对应的projectcalico.org/IPv4Address实际的值还是240.x.x.x

解决方式

去掉所有node的对应的annotation,然后从起所有calico-node的pod即可

kubectl annotate node --all projectcalico.org/IPv4Address-kubectl rollout restart daemonset/calico-node -n kube-system

检查calico-node

kubectl get po -n kube-system |grep calico-node

相关文章:

  • 前端UI框架Element Plus 和 Ant Design Vue哪个好
  • 大模型微调工具LLaMA-Factory docker安装、大模型lora微调训练
  • 通用Mapper基础学习
  • [MQTT]服务器EMQX搭建SSL/TLS连接过程(wss://)
  • 以客户为中心:消费电子行业的产品研发之道
  • Nginx配置详细解释:(3)http模块及server模块,location模块
  • U盘文件系统结构损坏的应对与预防
  • 目标检测数据集 - 垃圾桶满溢检测数据集下载「包含VOC、COCO、YOLO三种格式」
  • ATTCK红队评估(五)
  • 链桨PaddleDTX-基于区块链的联邦学习
  • 在使用高防IP的时候易出现什么问题,该如何解决呢?
  • pdf文件如何防篡改内容
  • LLM的基础模型8:深入注意力机制
  • Linux CGroup资源限制(概念限制进程CPU使用)
  • JavaScript——ES6
  • Android框架之Volley
  • Iterator 和 for...of 循环
  • java取消线程实例
  • js继承的实现方法
  • Mac转Windows的拯救指南
  • Median of Two Sorted Arrays
  • v-if和v-for连用出现的问题
  • 阿里云前端周刊 - 第 26 期
  • 给github项目添加CI badge
  • 回流、重绘及其优化
  • 前端
  • 微服务框架lagom
  • 移动端解决方案学习记录
  • 【干货分享】dos命令大全
  • 函数计算新功能-----支持C#函数
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • ###C语言程序设计-----C语言学习(3)#
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (Java)【深基9.例1】选举学生会
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (学习日记)2024.01.19
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .NET Core 和 .NET Framework 中的 MEF2
  • .net core控制台应用程序初识
  • .NET轻量级ORM组件Dapper葵花宝典
  • .net中的Queue和Stack
  • .net中生成excel后调整宽度
  • @RequestParam详解
  • [.NET]桃源网络硬盘 v7.4
  • [28期] lamp兄弟连28期学员手册,请大家务必看一下
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [bzoj1038][ZJOI2008]瞭望塔
  • [C++] 统计程序耗时
  • [C++]18:set和map的使用
  • [Cloud Networking] Layer3 (Continue)
  • [Foreman]解决Unable to find internal system admin account
  • [LeetCode] Sort List