NFS静态持久化存储卷的定义和声明和使用

PV 描述的,是持久化存储数据卷。这个 API 对象主要定义的是一个持久化存储在宿主机上的目录,比如一个 NFS 的挂载目录。

PVC 描述的,则是 Pod 所希望使用的持久化存储的属性。比如,Volume 存储的大小、可读写权限

定义一个NFS类型的PV
cat wanglong-PersistentVolume.yaml 

apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs
spec:
  storageClassName: manual
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: yutang2-181
    path: "/data/nfs-volume/nfs_client_provisioner"
声明使用NFS-PV
cat wanglong-PersistentVolumeClaim.yaml

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nfs
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: manual
  resources:
    requests:
      storage: 1Gi
使用声明的PVC资源
cat wanglong-dp.yaml 

apiVersion: v1
kind: Pod
metadata:
  name: testpod
  labels:
    role: web-frontend
spec:
  containers:
  - name: web
    image: nginx
    ports:
      - name: web
        containerPort: 80
    volumeMounts:
        - name: nfs
          mountPath: "/usr/share/nginx/html"
  volumes:
  - name: nfs
    persistentVolumeClaim:
      claimName: nfs
查看创建的Pod地址
NAME      READY   STATUS    RESTARTS   AGE    IP            NODE                   NOMINATED NODE   READINESS GATES
testpod   1/1     Running   0          2m7s   172.2.177.6   yutang2-177.host.com   <none>           <none>


在共享目录下,创建主页文件
echo 'wo shi wanglong' > /data/nfs-volume/nfs_client_provisioner/index.html
检测主页文件持久化存储是否生效
[root@yutang2-177 ~]# curl http://172.2.177.6
wo shi wanglong
posted @ 2020-04-14 14:32  Done、  阅读(500)  评论(0编辑  收藏  举报