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

原因

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

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

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

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

排查过程

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

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

相关推荐
Hilaku6 小时前
你们公司有 35 岁以上的前端吗?
前端·javascript·程序员
徐小夕6 小时前
开源Vector-Graph-RAG:向量+图谱双引擎,打破纯向量RAG的效果天花板
前端·vue.js·github
SameX6 小时前
HarmonyOS ArkTS 把组件截图保存成 PNG 再调系统分享面板的做法
前端
Swot7 小时前
SvelteKit SSG 发布后,为什么老访客非要强刷才能看到新内容?
前端
鸿蒙开发7 小时前
小程序存档写到一半怎么办?双槽保存与损坏恢复实战
前端·javascript·react.js
卸任8 小时前
AI 编程工具越用越多,模型配置越来越乱:用 Magpie 把它们管起来
前端·ai编程
方便面不加香菜8 小时前
Docker Volume -- 管理卷Volume详解
运维·docker·容器
前端一课8 小时前
凝神诀
前端
前端双越老师9 小时前
程序员 1v1 访谈系列第十三期:大龄已育空窗一年如何破局
前端·ai编程·全栈
江湖有缘9 小时前
Docker实战 | 使用Docker部署lemonitor镜像站点列表程序
运维·docker·容器