代码发布后,线上页面没有变化——原来是 pod pending

原因

当创建 pod 后,pod 会被快速分配给有足够资源来运行它的节点。

而导致集群无法分配 pod 的其中一个原因是,Node 节点为不可调度状态,这可能是节点压力或人为节点封锁导致的。会阻止在节点上调度新的 pod,节点上现有的 pod 不受影响。

当只有一个 Node 节点可用,且不可调度时,便会出现代码发布后,部署成功,但线上页面没有变化。需要 cue 运维人员。

SchedulingDisabled 表示 Node 节点处于不可调度状态,此时 pod 为 pending 状态

排查过程

需求是新页面开发,以为是自己 nginx 没配置好,导致的 404 问题。直到在正常页面上修改几个字符,发布后,仍是没变化。猜测是不是 k8s 缓存问题。于是乎,把 pod 给删了, 503 崩了,重新发布,也无法恢复正常。这时候找了运维,才知道是节点不可调度的缘故导致。

其实,当几次代码修改无效后,要早点想到是 k8s 集群问题,这样可以节省没必要的时间浪费。

相关推荐
dfdvervdv1 分钟前
Vue3 + Element Plus 表单校验踩坑:为什么我写的规则不生效?
前端
Rhi6373 分钟前
第 5 篇:用React-Leaflet 做充电桩地图监控,实现实时状态
前端
洞窝技术4 分钟前
低成本高可用:洞窝团队如何搭建 AI 协同开发环境
前端·ai编程
Asize8 分钟前
JavaScript 对象通关指南:从字面量到原型链,一篇文章踩遍所有坑
前端·javascript
yingyima16 分钟前
Docker 容器内定时任务秘诀全解
前端
moMo17 分钟前
前后端模块化分离,web盒子布局思维
前端·后端
前端繁华如梦19 分钟前
不写模型文件,用代码「捏」出 3D 世界:Vue3 + Three.js 程序化资产生成实战
前端·vue.js
灰子学技术22 分钟前
Envoy OAuth2 过滤器功能实现分析
运维·服务器·前端·网络
LCG元28 分钟前
MySQL慢查询分析与索引调优:从故障诊断到性能翻倍的进阶之路
android·前端·mysql
天涯明月19931 小时前
后端工程师全栈转型前端入门
前端·状态模式·全栈工程师