节点资源不足:临时存储
Posted
技术标签:
【中文标题】节点资源不足:临时存储【英文标题】:The node was low on resource: ephemeral-storage 【发布时间】:2020-05-11 09:25:39 【问题描述】:由于“”,节点的所有 pod 都处于 Evicted 状态。
portal-59978bff4d-2qkgf 0/1 Evicted 0 14m
release-mgmt-74995bc7dd-nzlgq 0/1 Evicted 0 8m20s
service-orchestration-79f8dc7dc-kx6g4 0/1 Evicted 0 7m31s
test-mgmt-7f977567d6-zl7cc 0/1 Evicted 0 8m17s
任何人都知道它的快速修复。
【问题讨论】:
您是如何设置集群的,它位于公共云还是 Prem 上? 【参考方案1】:在没有存储配额的情况下使用emptyDir 卷的 Pod 将填满此存储空间,并出现以下错误:
eviction manager: attempting to reclaim ephemeral-storage
设置配额limits.ephemeral-storage, requests.ephemeral-storage
来限制这一点,否则任何容器都可以将任意数量的存储写入其节点文件系统。
资源配额定义示例
apiVersion: v1
kind: ResourceQuota
metadata:
name: compute-resources
spec:
hard:
pods: "4"
requests.cpu: "1"
requests.memory: 1Gi
requests.ephemeral-storage: 2Gi
limits.cpu: "2"
limits.memory: 2Gi
limits.ephemeral-storage: 4Gi
此问题的另一个原因可能是日志文件占用磁盘空间。检查这个question
【讨论】:
感谢您的快速响应我没有得到这个,这是否也会限制持久卷声明? No..this 适用于使用 emotyDir 的卷: 请查看下面的 pod 详细信息,隐含地没有声明卷 容器:-image: $nexusrepo_pull_162/service_orchestration:develop imagePullPolicy: Always name: service-orchestration resources: limits: cpu: 400m内存:2Gi 临时存储:2Gi 请求:cpu:200m 内存:400Mi 临时存储:500Mi 你能检查一下你是否在 pod 中生成了大量的日志吗?【参考方案2】:您可以增加附加的 EBS 卷的大小并重新启动 EC2 实例以达到该效果。
【讨论】:
你能发布一些关于如何实现这一目标的信息吗?这将有助于加强答案。【参考方案3】:发生此问题是由于在处理(例如应用程序处理其作业并存储临时缓存数据)时缺少临时存储。要解决此问题,您必须深入您的 pod,并通过命令 df-h
检查运行哪个设备位置的进程何时消耗您的可用存储空间,并观察可用容量大小。您可以创建一个较大的 pvc(使用主机路径或其他方式)并挂载到存储其临时数据的 pod 目录中。
【讨论】:
以上是关于节点资源不足:临时存储的主要内容,如果未能解决你的问题,请参考以下文章
电脑上显示“没有足够的内存运行此程序”,以及“系统资源严重不足”是怎么回事?怎么样解决?