Kubernetes详解(三十四)——Kubernetes emptyDir存储卷

今天继续给大家介绍Linux运维相关知识,本文主要内容是Kubernetes emptyDir存储卷。

一、emptyDir存储卷简介

emtpyDir总是在Pod被指定到Node节点上时创建,emptyDir在被创建之初是一个空目录,并且会一直存在于Pod的生命周期中,当Pod被移除时,emptyDir中的数据也会被随之删除。(但是,Pod中一个容器的崩溃并不会使得emptyDir被删除。)emptyDir可以被挂载到Pod的任意容器下的任意路径下,并且被Pod中的容器所共享。
emptyDir磁盘的作用如下所示:
1、Pod中容器的普通空间,用于临时的数据存储。
2、作为从崩溃中恢复的备份点。
在默认情况下,emptyDir会存储在主机所使用的媒介上,具体是何种存储媒介取决于环境。我们也可以将emptyDir.medium的值设置为Memory,使得Kubernetes来挂载基于内存的tmpfs,这样存储速度会增大,但是当主机重启后,数据会消失。
执行命令:

kubectl explain pods.spec.volumes.emptyDir

可以详细查看emptyDir存储的相关参数,该命令执行结果如下所示:
在这里插入图片描述

二、emptyDir存储卷创建

接下来,我们就来实际创建一个emptyDir的存储卷。
首先,我们来创建一个资源清单配置文件pod-vol.yaml,并向该文件中写入如下内容:

apiVersion: v1
kind: Pod
metadata:
  name: pod-with-emptydir
  namespace: default
  labels:
    pod: myapp
    dir: empty
spec:
  containers:
  - name: myapp
    image: ikubernetes/myapp:v1
    ports:
    - name: http
      containerPort: 80
    volumeMounts:
    - name: html
      mountPath: /usr/share/nginx/html/
  - name: busybox
    image: busybox
    volumeMounts:
    - name: html
      mountPath: /exp/
    command: ['/bin/sh','-c','while true; do echo $(date) > /exp/index.html; sleep 3; done']
  volumes:
  - name: html
    emptyDir: {}

资源清单文件配置完成后如下所示:
在这里插入图片描述
在上述配置文件中,Pod的spec字段中volumes来指定该Pod的存储卷,name参数表示该存储卷的名称,emptyDir参数表示该存储卷的类型。在spec的容器定义中,volumeMounts参数定义了在该容器内挂载的存储卷,其name参数和下面volumes中的name一致,表示在容器中挂载的存储卷就是下面的volumes中定义的emptyDir存储卷,后面的mountPath参数指定了该存储卷的挂载目录。
此外,在该配置文件中,我们在Pod中定义了两个容器——busybox容器和myapp容器,为了检测emptyDir存储卷在Pod中容器间的共享性,我们让这两个容器都挂载emptyDir存储卷。并且busybox容器会不断的向该存储卷内写入日志,而myapp则会从该存储卷中读取index.html文件中读取内容作为自己的主页。
完成配置后,我们来创建该Pod,执行命令:

kubectl apply -f pod-vol.yaml

该命令执行结果如下:
在这里插入图片描述

三、emptyDir存储卷查看

在该命令执行后,我们的Pod就已经创建了,接下来,我们来检验一下emptyDir存储卷的效果。执行命令:

kubectl get pods -o wide

查看我们创建的Pod及其IP地址信息,如下所示:
在这里插入图片描述
之后,我们访问该IP地址,执行命令:

curl 10.10.2.69

结果如下所示:
在这里插入图片描述
从上图可以看出,我们访问的结果正是busybox容器写入的内容,我们的Kubernetes emptyDir存储卷配置成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值