pod访问不通问题--kube-proxy未正常创建

news2024/11/23 17:13:02

用户问题

Pod创建后访问对象存储OSS不通。

初步排查

初步排查,网络连通性是OK的。再次反馈创建Pod后2分钟内可能存在业务不通。

业务架构

该集群采用了节点自动弹缩功能,节点弹缩范围在13-28之间。

用户周期性创建大批量Pod,共300个,与对象存储OSS交互,Pod生命周期2分钟左右。

CoreDNS中配置了用户DNS。(可以通过CoreDNS的Configmap查看,此处略)

排障预案

1、瞬时大批量Pod能否顺利创建

2、Node autoscaler是否及时

3、集群组件是否正常提供服务

4、DNS域名解析是否能顶住压力

5、节点日志是否有异常:dmesg -T

6、节点上规则是否正常:iptables-save、ipvs list、ipvsadm -ln、ip rule/ip route

7、必要的抓包:tcpdump

问题排查

排查范围

因业务Pod不是一直不能访问OSS,先放弃抓包验证。重建镜像,dig检查DNS是否正常。

问题复现

分析复现后的问题Pod日志

关键信息:

1、用户侧DNS直接解析正常(前两项)。

  1. 通过SVC访问,第一次就超时退出。

dig oss.com @IP

connection timed out; no servers could be reached

为什么某些Pod访问集群DNS Service不通,某些Pod访问却正常?

分析原因

通盘分析这300个Pod,状态分为两类:Running,CrashLoopBackOff,其中后者对应上述日志。

CrashLoopBackOff集中在6个Node节点,且这6个节点上只有该状态的Pod,说明这几个节点肯定有问题。

进入其中一个Node,查看iptables规则、ipset规则、ipvs规则,没有任何与集群Service相关的配置,当然也找不到DNS Service与后端Pod对应规则,符合上述超时日志。

Service规则是谁创建的呢,是kube-proxy,每个节点都应该有一个kube-proxy Pod。

查看集群kube-proxy,有6个Pod处于Pending状态,正好与这6个节点对应。

为什么kube-proxy处于待调度状态(Pending),通过“kubectl describe”命令查看Event,显示CPU资源不足,真是这样吗?

手动删除1个CrashLoopBackOff业务Pod,其中一个Pending kube-proxy变为Running,说明确实是CPU资源不足。

优先级PriorityClass

经观察,集群中kube-proxy Damonset没有配置PriorityClass,与业务Pod竞争资源失败。

重新梳理整个流程:

1、同时创建300个业务Pod

2、大量Pod处于Pending状态

3、触发Node扩容

4、节点扩容过程中kube-proxy Damonset触发生成新kube-proxy Pod

5、Node部署完CNI,处于Ready状态,可以接受Pending状态业务Pod调度,与Pending状态kube-proxy Pod竞争节点资源(业务Pod先处于Pending状态可能优先调度成功)

6、业务Pod通过DNS SVC解析OSS域名,但节点未部署成功kube-proxy,未生成相关规则,造成域名解析超时。

尝试解决问题

编辑kube-proxy Damonset,spec添加priorityClassName: system-node-critical,保证关键Pod能正常调度(当资源不足时kill掉低优先级Pod强行创建)。

重复业务流程

先缩容Pod及Node,再扩容,重新验证,300个Pod均满足预期。

问题原因

集群关键组件kube-proxy等未配置合理的PriorityClassName。

解决方案

1、集群关键组件kube-proxy等配置合理的PriorityClassName。

2、集群节点需要等关键组件就绪后才能设置为Ready状态,等待业务Pod调度。

Reference

Pod 优先级与抢占:https://kubernetes.io/zh/docs/concepts/configuration/pod-priority-preemption/

关键插件 Pod 的调度保证:https://kubernetes.io/zh/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/193554.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

46_API接口漏洞

API接口漏洞 一、概念 api > application interface 应用接口 向特定的接口发送一个请求包 返回一个类似于json格式的字符串 二、REST型web service 可以从网上去搜索下api接口去理解,下面有个我找到的网址,给出api接口的分类 https://blog.csdn.net/t79036912/article…

Linux(Ubuntu)通过NFS服务挂载群晖NAS为虚拟磁盘

1. 设置NAS,共享目录 1. 文件服务 设置 首先进入NAS服务,打开 [控制面板] ,在控制面版包含** 文件服务 ** 功能如图所示。 2.选中要共享的文件夹后,点击操作栏的 【编辑】 按钮,如图: 3.进入编辑面板后&a…

盘点三个超好用的截图软件

一款好用的截图软件往往能给人们带来更高的工作效率,目前市面上的截图软件已经很多,今天就给大家盘点一些好用的截图软件。 QQ截图 QQ截图软件是QQ内置自带的一款截图,快捷键ctrlA 可以唤起,其功能也是应有尽有包括屏幕录制&#…

【JavaScript】数据劫持(代理)详解

💻 【JavaScript】数据劫持(代理)详解 🏠专栏:JavaScript 👀个人主页:繁星学编程🍁 🧑个人简介:一个不断提高自我的平凡人🚀 🔊分享方向:目前主攻…

3万行代码硬撸一个一键发布文章工具,简直不要太好用,从此写文章,发文章,太简单了好伐

theme: channing-cyan highlight: github-gist 本人6年前端开发老鸟- 【程序员蜗牛】,欢迎沟通交流 操作演示(视频) 视频演示 项目背景 程序员工作中,不免会遇到一些技术难题,然后通过不懈努力将问题攻克&#xf…

1x1卷积、Inception网络、

目录1.1x1卷积(1x1 convolution)又称网络中的网络(network in network)池化层只能压缩图像的宽和高,1x1卷积能压缩通道数量,减少计算成本。如上图,输入维度的通道数为192,用32个1x1x192的filters,就能将输出的通道数压…

【Rust】20. Rust 的高级特征

20.1 不安全 Rust 20.1.1 不安全的超能力 20.1.2 解引用裸指针 裸指针(raw pointers):类似于引用类型;和引用一样,裸指针是不可变或可变的,分别写作 *const T 和 *mut T,这里的星号不是解引用运…

Kubernetes集群部署与实践

一、提要 部署Kubernetes集群至少需要3台服务器,其中至少要有1个服务器做master节点,至少要有1个服务器做node节点,且节点名称是唯一的。 当集群中只有一个master节点时,如果其出现了故障,会导致Kubernetes的控制平面…

规则引擎-drools-5-决策表

文章目录Excel格式决策表 官网地址决策表使用方式Excel组成部分与drl规则文件对应关系Excel文件内容示例drl规则文件内容Excel决策表内容说明1. RuleSet2. RuleTable3. Attributes示例Excel转化drl代码及结果执行drl代码及结果Excel格式决策表 官网地址 决策表这部分内容在官网…

几种IO模型

IO真正的IO操作涉及到和IO设备的交互,而操作系统限制了应用程序直接和设备交互。我们通常说的IO操作实际上是应用程序和操作系统进行交互,一般会使用操作系统的System Call,即系统调用,读是read(),写是write()&#xf…

设计模式-结构型模式

目录 5.结构型模式 5.1 代理模式 5.1.1 概述 5.1.2 结构 5.1.3 静态代理 5.1.4 JDK动态代理 5.1.5 CGLIB动态代理 5.1.6 三种代理的对比 5.1.7 优缺点 5.1.8 使用场景 5.2 适配器模式 5.2.1 概述 5.2.2 结构 5.2.3 类适配器模式 5.2.4 对象适配器模式 5.2.5 应…

聊聊关于矩阵反向传播的梯度计算

目录 1. 前向传播 2. 反向传播 3. 矩阵反向传播 4. 总结 1. 前向传播 建立如图所示的简单网络 W 是权重矩阵,初始赋值为 2*2 的矩阵 X 是输入特征,初始赋值为 2*1 的矩阵 这样通过矩阵乘法 , Y WX ,应该得到一个 2*1 的输…

在这竞争激烈的时代,如何才能够在激烈竞争中脱颖而出呢

不管是在职场想要获得认可得到晋升,还是与客户谈合作;都需要你能够脱颖而出。让他人能够看到你并且认可你。那如何才能脱颖而出呢?首先你要先认识自己,知道自己有什么优势、劣势、技能、兴趣、爱好等等。明确自己有什么价值&#…

软件工程(1)--初识基础概念

前言 学习了半年的软件工程课程,总不能一无所获吧,故此写下文章总结一番。 软件工程是一门综合性交叉学科,它涉及计算机科学、工程科学、管理科学和数学等领域。学习目标是掌握需求分析、软件设计、编码风格、软件测试的工程化方法。 软件程序…

什么是股票量化研究?

谈到股票量化研究领域,肯定少不了有自动交易系统的支撑,像平时能将股票池中的数据挖掘出来也能熟能生巧的进行自助量化研究,包括数据接口系统的开发使用都是受到量化的影响,那么,如何看待股票量化研究?像平…

arm版(以uos为例)linux安装mysql8

官网下载:https://downloads.mysql.com/archives/community/上传到服务器,然后解压缩tar -zxvf mysql-8.0.31-linux-glibc2.17-aarch64.tar.gzmv mysql-8.0.31-linux-glibc2.17-aarch64 /usr/local/mysql-8创建MySQL数据目录mkdir -p /datacd datamkdir …

打通对账的最后一公里——对账管理平台

背景 日新月异的科技与快速变化的消费需求不断驱动零售模式的变革,实体商业与数字经济、传统零售与新零售,逐渐融合并形成了全渠道、一体化的发展趋势,也改变了以往企业认知中线上、线下渠道割裂的思维定式,零售快消类企业纷纷建…

电子技术——MOS管的物理特性

电子技术——MOS管的物理特性 增强型 MOSFET 是应用最广泛的场效应晶体管。除了最后一节,我们整章讨论的都是增强型 MOSFET 。我们从它的物理元件结构和物理操作入手,在下一节我们会在本节的基础上学习 MOSFET 的电流-电压特性。 元件结构 上图展示了n-…

Day876.redolog刷盘问题 -MySQL实战

redolog刷盘问题 Hi,我是阿昌,今天学习记录的是关于redolog刷盘问题的内容。 平时的工作中,一条 SQL 语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢,并且这样的场景很…

RPA自动化办公07——Uibot流程加入python插件

参考:扩展UiBot命令_UiBot开发者指南 Uibot是非常方便,但是有些功能可能还需要别的语言来完成,例如python语言,作为胶水语言,在一个Uibot里面插入python脚本是很方便,好用的。 加入插件的位置 在新建一个流…