官网描述:
对于定义了emptyDir卷的Pod,在Pod被指派到某节点时此卷会被创建。就像其名称所表示的那样,emptyDir卷最初是空的。尽管Pod中的容器挂载emptyDir卷的路径可能相同也可能不容。但这些容器都可以读写emptyDir卷中相同的文件。当Pod因为某些原因被从节点上删除时,emptyDir卷中的数据也会被永久删除。
说明: 容器崩溃并不会导致 Pod 被从节点上移除,因此容器崩溃期间 emptyDir 卷中的数据是安全的。
理解:
emptyDir 卷的生命周期是和Pod挂钩的。也就是容器的数据是保存在Pod中的。只有Pod被删除数据才被删除。
实践:
创建一个Pod,并配置emptyDir卷
kubectl create -f Pod-emptyDir.yaml
apiVersion: v1
kind: Pod
metadata:
name: emptydir-pod
spec:
containers:
- image: nginx
name: emptydir-container
volumeMounts:
- mountPath: /usr/share/html
name: emptydir-volume
volumes:
- name: emptydir-volume
emptyDir:
sizeLimit: 200Mi
kubectl get pod emptydir-pod
[root@k8s-master ~]# kubectl get pod emptydir-pod
NAME READY STATUS RESTARTS AGE
emptydir-pod 1/1 Running 0 41s
kubectl describe pod emptydir-pod