You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GKE Standard集群磁盘空间不足,Pod始终处于ContainerCreating状态求助

解决GKE Standard集群节点磁盘满导致Pod无法创建的问题

问题诊断

从kubectl describe pod的警告信息可明确:节点/var/lib/kubelet目录所在磁盘空间耗尽,导致kubelet无法创建Pod所需的投影卷(kube-api-access-xxx)。

解决步骤

1. 定位异常节点

先找到问题Pod所在的节点:

kubectl get pods -o wide

查看异常Pod对应的NODE字段,确定具体节点。

2. 清理节点无用资源(无需SSH)

  • 删除未使用的镜像:手动触发节点镜像清理:
    kubectl debug node/<节点名称> -it --image=alpine -- chroot /host crictl rmi --prune
    
  • 清理终止状态的Pod:批量删除已完成或失败的Pod以释放空间:
    kubectl get pods --all-namespaces -o json | jq '.items[] | select(.status.phase == "Failed" or .status.phase == "Succeeded") | "kubectl delete pod \(.metadata.name) -n \(.metadata.namespace)"' | sh
    
  • 清理kubelet旧Pod数据(紧急操作):若上述方法无效,可清理节点上所有Pod的本地卷数据(执行后需重启节点上的所有Pod):
    kubectl debug node/<节点名称> -it --image=busybox -- chroot /host rm -rf /var/lib/kubelet/pods/*
    

3. 永久解决:扩容节点磁盘

若节点磁盘本身容量不足,调整节点池的磁盘大小:

gcloud container node-pools resize <节点池名称> --cluster <集群名称> --zone <集群区域> --disk-size <新容量,如50GB> --node-count <当前节点数>

执行后GKE会滚动更新节点,替换为新磁盘容量的节点。

4. 预防措施

  • 确保GKE节点自动清理镜像功能开启(默认已开启)。
  • 为Pod配置磁盘资源限制,避免单个Pod过度占用空间。
  • 通过Kubernetes CronJob定期自动清理终止状态的Pod。

内容的提问来源于stack exchange,提问作者Thotsaphon Sirikutta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 08:12:14