现在我得到了一个日志量:
- name: log
hostPath:
path: /opt/cloud/logs/sample
当我执行cd /opt/cloud/logs/sample;df -h .
时,它显示:
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 11G 27G 29% /opt/cloud/logs/sample
我的问题是:40G号码是哪里来的?有没有办法将其限制为另一个数字,例如30GB?如果容器用完40G,被逐出或磁盘大小神奇地增加到更大的数量,会发生什么?
我刚刚发现40G是主机磁盘的大小。但是,如果我使用emptyDir而不是hostPath,它的大小仅为9.8G,相当于主机上/mnt/paas/kubernetes/kubelet
的大小,我不知道它是什么还是为什么是9.8G。
k8s版本:
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.9", GitCommit:"16236ce91790d4c75b79f6ce96841db1c843e7d2", GitTreeState:"clean", BuildDate:"2019-03-25T06:40:24Z", GoVersion:"go1.10.8", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13+", GitVersion:"v1.13.10-r1-CCE2.0.28.B001", GitCommit:"0de6083f712a799642f25141c60fdeff34d5514c", GitTreeState:"clean", BuildDate:"2019-10-30T14:19:27Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"linux/amd64"}
答案 0 :(得分:1)
hostPath
卷类型是节点文件系统卷,该卷由保存kubelet根目录的文件系统的介质确定。
emptyDir
或hostPath
卷可以消耗多少空间没有限制,Containers
或Pods
之间没有隔离。
您的Pod将具有write error
,因为文件系统已满。