我有一个指定了以下卷的 Pod
- name: file-storage
emptyDir:
medium: Memory
Run Code Online (Sandbox Code Playgroud)
还具有请求和限制中指定的临时存储:
limits:
cpu: 2
ephemeral-storage: 2Gi
memory: 2Gi
requests:
cpu: 1
ephemeral-storage: 2Gi
memory: 2Gi
Run Code Online (Sandbox Code Playgroud)
现在我想知道,emptyDir.medium 会优先,以便我可以使用 RAM,还是获得临时存储并让 kubernetes 为我决定最好的?
小智 7
emptyDir 规范medium: Memory
存储在 RAM 上,并计入您的请求和您指定的内存限制。如果删除,medium: Memory
那么它们将存储在ephemeral-storage
.
这是因为medium: Memory
规范是在tmpfs
从 RAM 分配的内存上创建的。
如果您想了解更多相关信息,请查看以下链接:
https://kubernetes.io/docs/concepts/storage/volumes/#emptydir https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#resource-emphemeralstorage-conspiration
希望这能回答您的问题,如果您需要更清楚的说明,请告诉我。
如果您不指定在何处创建emptyDir,它将在Kubernetes节点的磁盘空间上创建。
如果您需要一个小的暂存卷,您可以将其定义为在 RAM 中创建。一旦您开始使用emptyDir.medium,它就会开始使用RAM。
您可以通过创建 busybox 的部署、执行到 pod 并运行 df -h 来检查相同的情况,然后您可以检查是否会获得 tmpfs (RAM) 文件系统类型。
基于 RAM 的emptyDir 的默认大小是其运行的节点的RAM 的一半。根据限制和请求,请尝试检查磁盘的大小。它仍然来自节点还是从限制值中获取。
请检查此练习以更好地理解 https://www.alibabacloud.com/blog/kubernetes-volume-basics-emptydir-and-persistentvolume_594834
归档时间: |
|
查看次数: |
14028 次 |
最近记录: |