首页/云/Kubernetes 速查/emptyDir 的 Memory 介质
配置与存储54 条

emptyDir 的 Memory 介质

medium: Memory 用 tmpfs 提供内存盘,适合高速缓存的临时数据;其用量计入容器内存限制,需要与 memory limit 一起规划。

Kubernetes 速查云更新于 2026-10-13

内存介质临时目录

临时目录默认落在节点磁盘上,切换到内存介质后改用内存文件系统,读写速度显著提升且不怕磁盘写入压力。代价是它的用量计入容器内存:往里面写数据就等于占用容器内存预算。因此使用内存介质时必须同时规划容量上限与内存限制。

基本信息

适用平台Kubernetes 1.20+
数据生命周期随 Pod 一起创建与销毁
存储介质默认节点磁盘,可切换为内存
容量控制可设置容量上限
资源关系内存介质用量计入容器内存限制

典型使用场景

  • 应用需要高速临时缓存,例如会话暂存与中间结果
  • 数据库容器的临时排序空间,避免落在磁盘上
  • 需要写入大量临时文件但不想消耗节点磁盘
  • 合规要求敏感临时数据不落盘
  • 多容器共享一个临时目录做进程间数据交换

内存介质临时目录

内存介质临时目录
volumes:
  - name: tmp
    emptyDir:
      medium: Memory     # 使用内存介质
      sizeLimit: 64Mi    # 容量上限
containers:
  - name: app
    image: registry.example.com/app:1.26.0
    volumeMounts:
      - name: tmp
        mountPath: /tmp/work
    resources:
      limits:
        memory: 512Mi    # 需把临时目录用量算进总预算

参数读法

字段含义注意点
介质类型数据落在内存还是磁盘内存介质读写快但占内存
容量上限该目录可用的最大空间不设置时边界不明确
内存限制容器整体内存上限应包含临时目录的用量
挂载路径容器内的目录位置多容器可共享同一目录
临时目录的生命周期跟随 Pod:容器重启时数据仍在,Pod 被删除或重建时数据消失。需要跨重启保留的数据应使用持久卷。
内存介质的写入会占用容器内存配额。应用往里写的数据量接近内存上限时,进程会先被内存回收机制终止,日志里看到的是内存超限而不是磁盘错误。

易错点

  • 不设置容量上限:临时目录的可用边界不明确,写入过量会拖累节点内存
  • 使用内存介质却没调大内存限制:进程被判定内存超限终止,现象与磁盘无关
  • 把需要长期保留的数据放在临时目录:Pod 重建后数据全部丢失
  • 误以为容器重启数据会清空:容器重启时数据仍在,清理逻辑要按 Pod 生命周期设计

数据来源与参考

  • Kubernetes 官方文档 · Volumes(emptyDir:medium: Memory)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌