Kubernetes详解(三十六)——Kubernetes NFS存储卷

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

一、NFS服务配置

要进行Kubernetes的NFS存储卷相关配置,那么我们就必须先配置好NFS服务。NFS服务的配置方式可以参考文章NFS配置实战
本文是在该篇文章的基础上来进行的配置,因此,最后我们完成了一个/data/nfs目录的NFS创建,如下所示:
在这里插入图片描述
注意,在Kubernetes集群中,因为我们的Pod要创建NFS服务,因此我们的Node1和Node2两个结点上都必须安装nfs服务!

二、存储卷创建

在创建存储卷之前,我们可以先执行命令:

kubectl explain pods.spec.volumes.nfs

来查看NFS存储卷的相关配置和命令,如下所示:
在这里插入图片描述
接下来,我们就可以来创建Pod,并且在Pod中定义使用NFS的存储卷了。创建资源配置清单文件nfs-pv.yaml,并且在该文件中写入如下内容:

apiVersion: v1
kind: Pod
metadata:
  name: pod-with-nfs-pv
  namespace: default
spec:
  containers:
  - name: myapp
    image: ikubernetes/myapp:v1
    volumeMounts:
    - name: nfs-pv
      mountPath: /usr/share/nginx/html
  volumes:
  - name: nfs-pv
    nfs:
      path: /data/nfs
      server: 192.168.136.13

在上述资源清单配置中,我们的挂载使用了NFS卷,NFS卷有两个参数,path参数指定了NFS挂载的目录,server参数则指定了NFS服务器的IP地址。
完成后的资源配置清单文件如下所示:
在这里插入图片描述
完成资源清单配置文件的创建后,接下来,我们就可以开始创建该Pod了,执行命令:

kubectl apply -f nfs-pv.yaml

来根据我们之前的资源清单配置文件创建Pod,该命令执行结果如下所示:
在这里插入图片描述
从上图中可以看出,该命令被成功执行,我们带有NFS挂载卷的Pod已经成功创建!

三、NFS存储卷查看

最后,我们来检验一下我们的配置结果。
首先,执行命令:

kubectl get pods -o wide

来查看我们创建的Pod情况,该命令执行结果如下:
在这里插入图片描述
从上图中可以看出,我们的Pod资源已经成功创建。执行命令:

kubectl describe pods pod-with-nfs-pv

来查看该Pod的详细信息,可以看到该Pod的挂载情况,如下所示:
在这里插入图片描述
接下来,我们在NFS服务器上,执行命令:

echo "Kubernetes Pod with NFS PV" > /data/nfs/index.html

向被挂载的目录写入一个index.html文件,用于检验Pod的挂载情况。刚才我们查看到Pod的IP地址为10.10.2.75,我们可以使用curl访问该IP地址,结果如下:在这里插入图片描述
从上图中可以看出,我们的curl显示的结果正是我们在NFS服务器上创建的index.html,我们的Pod挂载NFS存储卷实验成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

猜你喜欢

转载自blog.csdn.net/weixin_40228200/article/details/124428643