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

原因

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

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

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

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

排查过程

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

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

相关推荐
kong@react1 分钟前
wsl2安装及命令(详细教程)
java·docker·容器
学Linux的语莫4 分钟前
k8s知识点整体概览
java·linux·kubernetes
karshey7 分钟前
【前端】sort:js按照固定顺序排序
开发语言·前端·javascript
MyBFuture9 分钟前
索引器实战:对象数组访问技巧及命名空间以及项目文件规范
开发语言·前端·c#·visual studio
IT_陈寒18 分钟前
Redis性能提升50%的7个实战技巧,连官方文档都没讲全!
前端·人工智能·后端
VermiliEiz19 分钟前
二进制文件方式部署k8s(2)
kubernetes·云计算·etcd
打小就很皮...21 分钟前
React 富文本图片上传 OSS 并防止 Base64 图片粘贴
前端·react.js·base64·oss
咬人喵喵28 分钟前
告别无脑 <div>:HTML 语义化标签入门
前端·css·编辑器·html·svg
古城小栈38 分钟前
Spring Boot 容器化:Docker+K8s 部署最佳实践
spring boot·docker·kubernetes