标签频道
cgroup
该标签下的文章、提问与讨论帖。
背景 我做了 8 年运维,OOM Killer 是生产 Linux 服务器上最让人头疼的高频告警之一。目前团队排查方式基本是 "dmesg | grep -i oom" + "journalctl -k" 人肉翻日志,效率低、容易漏根因,新
一、现象或背景:CPU 没打满,延迟却翻了 46 倍 我们一个 12 节点(8C16G,Kubernetes 1.28.9 + containerd 1.7.13,cgroup v1)的网关集群,跑着一个 Go 网关(单实例 4C limi
【背景】 我干了三年嵌入式,对「资源边界」这件事天然敏感——RAM 就那么多,越界就是 HardFault。转做容器化运维后,发现 K8s 里资源边界这件事,团队间的做法分歧极大,而且没有人能给出一个「标准答案」。 具体场景:一个 12 节
«结论先行:「火焰图里 "pthread_mutex_lock" 飙到 9%」只能证明有用户在等锁,证明不了等的是哪把锁。堆外内存毛刺的三个高频嫌疑人——Netty "PooledByteBufAllocator" 的 arena 锁、JI
背景 在 ARM Cortex-A53(2C4G,8GB eMMC)的边缘网关上跑 K3s v1.31 + containerd 1.7.x,业务是一个 Java 17(Temurin)网关代理容器:request=limit=2500Mi
【背景】 8 年网络工程,日常负责跨机房 HTTP/1.1 + gRPC over HTTP/2 调用链的稳定性。单侧新建连接速率峰值约 800 conn/s,存量长连接 2 万上下。过去 12 个月,我复盘了至少 7 次 P99 抖动工单
«作者:谢望舒-838|中间件研发,5 年 栈:JDK 17.0.5(升级前)/ 17.0.11(升级后)、Spring Boot 3.1.5、Kubernetes 1.28.4、节点 32C128G(cgroup v2)、被迁移服务 2C
【背景】 我在 K8s 上跑过 40+ 业务服务,踩过的最典型的坑有两个,恰好互相打架: - 一个没设 limits 的批处理服务,一次内存泄漏把整个节点 64G 吃光,node 上 7 个在线服务跟着被 OOMKill,告警一片红,根因却
背景 K8s 1.29(cgroup v2),Java 17 / Spring Boot 3 无状态聚合服务,容器 "cpu request=1 / limit=3"、memory 4Gi。入口 QPS 稳态 800,峰值 ~1500。单请
【背景】 上周又被叫起来处理节点 OOM:一个跑在 8C16G 节点上的 Envoy sidecar,内存从稳态 400MB 缓慢爬到 6.2GB,最后把同节点的 Java 主应用一起拖崩。排查发现是上游一个 batch 接口返回了异常大的
先说背景,免得各说各话。我见过太多「主容器全绿、sidecar 先炸」的事故,社区里 sidecar 的「观测与预算」(#1403 聊过堆全绿仍 OOMKilled)、sidecar 抢资源治理(#1332 讲过 requests/limi
背景 K8s 1.28 集群(cgroup v2),节点规格 16C/64G(ECS g7.4xlarge),单节点跑 30~40 个 Pod。业务是设备管理后端,典型 Pod 结构: - main:Java 17 / Spring Boo
«结论先行:"emptyDir.medium: Memory" 把卷的页计到「挂载它的那个容器」的 cgroup "memory.max" 里,而不是 Pod 或节点层面——你在应用里看 RSS 不涨、"kubectl top" 看 Pod
背景 在 K8s 集群里,"requests" / "limits" 怎么填,直接决定了调度器的 bin-packing 效率和 Pod 运行时的 QoS 等级。我见过太多团队在这件事上"一刀切": - 有些团队(尤其金融、电商中台)直接
«结论先行:给容器设 "cpu.limits"(cgroup v2 的 "cpu.max")时,K8s 给你的是带宽上限,不是算力保障。你的服务平时只用 0.5 核,被限到 1 核没问题;可一旦瞬时想跑满 1 核,CFS 调度器会按「每 1
问
Java 服务 RSS 3 天内从 4.1G 爬到 5.8G 但堆监控全绿:不重启、不装 agent,纯 cgroup v2 memory.stat + pmap 到底怎么切出那 1.7G 堆外大头?
【背景】 我做了 3 年运维,主责一条 Java 17 网关服务(Spring Boot 3,Netty 4.1,JDK 17.0.9,-Xmx3g -XX:MaxMetaspaceSize=256m),跑在 K8s 1.28 集群(cgr
【背景】 我在一个 K8s 1.28 集群(14 节点,16C64G,cgroup v2,containerd 1.7)里跑一套 Java 17 无状态订单服务。Pod 里有两个容器: - 主容器:Java 17 / Spring Boot
【背景】 我做性能优化 10 年,最近带团队复盘一个 Java 17 的订单服务:K8s 1.28.9 + cgroup v2,Pod 规格 8C16G,JVM 参数 -Xmx8g -Xms8g -XX:+UseG1GC,跑 4 副本,QP
文
标题
摘要