32MB内存设备跑K8s?这波容器化我服了
发布时间:2026-10-09 05:17:21 所属栏目:系统 来源:DaWei
导读:周一早上九点四十二,我端着豆浆点开巡检工单系统,看到一台边缘节点内存三十二兆,容器运行时 containerd,kubelet 状态 Ready,K3s 版本 v1.27.3+k3s1。我差点把“已关闭”按钮按下去,因为三十二兆跑 K8s 这事简直像把 kubele
|
周一早上九点四十二,我端着豆浆点开巡检工单系统,看到一台边缘节点内存三十二兆,容器运行时 containerd,kubelet 状态 Ready,K3s 版本 v1.27.3+k3s1。我差点把“已关闭”按钮按下去,因为三十二兆跑 K8s 这事简直像把 kubelet 塞进计算器。 三十二兆跑K8s谁信谁傻 带我的老周正在隔壁工位啃包子,听我说完,用油手敲了敲屏幕说:“三十二兆跑 K8s?这不是容器化,这是给蚂蚁穿机甲。” 他敲得屏幕全是油点,我抽了张纸擦。心里还在想这设备是不是从报废库里复活了。 我周二凌晨两点十七用 kubectl top pod -A 登上去,Metrics API 直接返回 503,换 node_exporter 看 node_memory_MemAvailable_bytes,值是一点二 MB,kubelet 的 kube-reserved 配了 64Mi,cgroup v2 里 memory.max 写着 33554432,也就是三十二兆。三个 pod 全是 OOMKilled,退出码 137。我盯着 Grafana 那条内存曲线,从顶上掉到零,像被人拔了电源。 这工单居然还能审批过。
文章配图,仅供参考 工单字段居然把GB写成MB我昨天下午四点二十登录那台机,用 free -m 看到 total 32768,用 dmidecode -t memory 看到 32GB,资产表 t_zhuji_xunjian_ls 的 mem_total 字段存的是 32768,备注写 MB,前端除以 1024 显示三十二兆。脚本 tmp_zy_mem_32 里一行 awk '{print $2}' 直接截了 free -m 的第二列,没乘也没除。K3s 实际在 32GB 上跑,根本不是三十二兆跑 K8s,这波是我服了巡检脚本。 旧机房八台机都没这么离谱 二零二三年我在学校机房帮忙,八台二手 R710,每台内存十六GB,做法是 systemd 起 Nginx 和 MySQL 8.0,每台给五百一十二兆内存,没有容器,跑了三个月没重启。现在这台边缘节点明明有三十二GB,却被工单写成三十二兆,容器化没疯,疯的是资产字段和计量单位。我师傅老周又啃了一口包子,嘴角还有韭菜,没再说话。 容器化不是给蚂蚁穿机甲 K3s 确实轻,官方最低建议五百一十二兆,我测过空跑 kubelet 加 containerd 常驻七十八兆,cgroup v2 下 limits.memory 写 32Mi 的 pod 连 pause 容器都起不来,OOMKilled 137 六次,kubectl get pod -A 里 kube-system 的 coredns 一直 CrashLoopBackOff。这配置居然能审批过,绝对是流程里没人看字段类型。我翻了三张同类工单,还有两台机器把 mem_total 写成 3145728,前端显示三兆,简直是让 K8s 住胶囊旅馆。 这脚本根本不该这么取数 今天十点零五,我在工单里把 mem_total 改成 32768MB,备注写“非 32MB,是 32GB,脚本没除 1024”,又把 tmp_zy_mem_32 改成 tmp_zy_mem_mb,提交给师傅。他回了一句“早说啊,这单害我查了半宿”。我关掉页面,豆浆已经凉了,键盘上还有半粒包子渣,三十二兆跑 K8s 这事到此为止,但资产表里还有十七台机器的 mem_total 字段 (编辑:站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


全平台多端适配网站的容器化资源优化实战
