ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Kubernetes (十二) 存储——Volumes配置管理

2026/8/13 9:57:40 拓冰建站 浏览量
Kubernetes (十二) 存储——Volumes配置管理

一. 卷的概念                                                                                                                    

        官方地址:卷 | Kubernetesicon-default.png?t=N7T8https://v1-24.docs.kubernetes.io/zh-cn/docs/concepts/storage/volumes/

  二. 卷的类型及使用                                                                                                         

                  emptyDir卷              

                   1. 创建编辑文件                    vim emptydir.yaml

 apiVersion: v1
kind: Pod
metadata:
  name: vol1
spec:
  containers:
  - image: busyboxplus
    name: vm1                 #容器1
    command: ["sleep", "300"]
    volumeMounts:
    - mountPath: /cache                    #挂载点
      name: cache-volume      #共享这个卷
  - name: vm2                 #容器2
    image: nginx
    volumeMounts:
    - mountPath: /usr/share/nginx/html    #挂载点
      name: cache-volume      #共享这个卷
  volumes:
  - name: cache-volume
    emptyDir:                 #卷的类型
      medium: Memory          #存储
      sizeLimit: 100Mi        #大小   删除pod:  kubectl delete pod vol1

                       hostPath卷               

                  1. 创建编辑文件             vim hostpath.yaml

apiVersion: v1
kind: Pod
metadata:
  name: vol2
spec:
  nodeName: k8s3         #这里是指定的节点
  containers:
  - image: nginx
    name: test-container
    volumeMounts:
    - mountPath: /usr/share/nginx/html #挂接到默认发布目录
      name: test-volume
  volumes:
  - name: test-volume
    hostPath:
      path: /data    #会在分配到的宿主机上创建data目录然后挂接到容器
      type: DirectoryOrCreate

                   2.   查看分配的节点

                   3.  此时尝试访问

                   4. 在分配的节点上创建一个页面 重新访问pod即可

                  nfs卷                            

         实验环境:需要在所有k8s节点上安装nfs-utils软件包           

                          yum install -y nfs-utils
                1. (k8s1) 在集群外server安装nfs并   配置nfs server          vim /etc/exports
   2.  (k8s1) 创建目录给予权限并开启服务  
3.  (k8s2) 创建编辑文件         vim nfs.yaml
apiVersion: v1
kind: Pod
metadata:
  name: nfs
spec:
  containers:
  - image: nginx
    name: test-container
    volumeMounts:
    - mountPath: /usr/share/nginx/html   #容器直接挂接到nginx发布目录
      name: test-volume
  volumes:
  - name: test-volume
    nfs:
      server: 192.168.72.171  #集群外nfs输出的server地址
      path: /nfsdata
 出现这个报错是因为节点没有安装nfs  安装即可
           安装即可(删除上面没有创建好的pod重新创建)
   4.  尝试访问依旧403
   5.   在nfsserver端创建测试页  重新访问即可          #注意不要用错主机