k8s 使用NFS的Volume

1. k8s PV 与 PVC

  • PV 是已经由管理员提供或者动态使用供应的集群中的一块存储的存储类。它是集群中的资源,就像节点是集群资源一样。PV是类似于Volumes的卷插件,但是其生命周期独立于使用PV的任何单个Pod。此API对象捕获NFS,iSCSI或特定于云提供商的存储系统的存储实现的详细信息。
  • PVC 是由用户进行存储的请求。它类似于豆荚。容器消耗节点资源,PVC消耗PV资源。Pod可以请求特定级别的资源(CPU和内存)。声明可以请求特定的大小和访问模式(例如,可以将它们安装为读/写一次或多次只读)。
  • 尽管PVC允许用户使用抽象的存储资源,但是PV对于不同的问题,用户通常需要具有不同的属性(例如性能)。集群管理员需要能够以多种PV方式提供各种不同的功能,而不仅仅是大小和访问模式,而又不让用户了解如何实现这些卷的细节。对于这些需求,有StorageClass 资源,如:ssd、nfs等等。

2. 使用PV与PVC

apiVersion: v1
kind: PersistentVolume
metadata:
  name: nexus-data
spec:
  capacity:
    storage: 5Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: nfs
  nfs:
    path: /var/nfs/nexus-data
    server: 192.168.0.250
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nexus-data-pvc
spec:
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 5Gi
  storageClassName: nfs
posted @ 2020-01-24 21:34  whyfate  阅读(1533)  评论(0编辑  收藏  举报