Kubernetes 我的PersistentVolumeClaim赢了';t绑定到NFS PersistentVolume--我做错了什么?

Kubernetes 我的PersistentVolumeClaim赢了';t绑定到NFS PersistentVolume--我做错了什么?,kubernetes,persistent-volumes,Kubernetes,Persistent Volumes,我的PersistentVolume的配置如下: apiVersion: v1 kind: PersistentVolume metadata: name: pv0001 spec: capacity: storage: 5Gi volumeMode: Filesystem accessModes: - ReadWriteOnce nfs: path: /volume2/K8s_NFS server: 172.16.66.50 persis

我的PersistentVolume的配置如下:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv0001
spec:
  capacity:
    storage: 5Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteOnce
  nfs:
    path: /volume2/K8s_NFS
    server: 172.16.66.50
  persistentVolumeReclaimPolicy: Recycle
我的PVC配置如下:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nfs-claim1
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi
这似乎与我相符,但结果是它不具有约束力:

Name:          nfs-claim1
Namespace:     default
StorageClass:
Status:        Pending
Volume:
Labels:        <none>
Annotations:   <none>
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode:    Filesystem
Used By:       <none>
Events:
  Type    Reason         Age                   From                         Message
  ----    ------         ----                  ----                         -------
  Normal  FailedBinding  86s (x26 over 7m33s)  persistentvolume-controller  no persistent volumes available for this claim and no storage class is set
名称:nfs-claim1
名称空间:默认值
StorageClass:
状态:待定
卷:
标签:
注释:
终结器:[kubernetes.io/pvc保护]
容量:
访问模式:
VolumeMode:文件系统
使用人:
活动:
从消息中键入原因年龄
----    ------         ----                  ----                         -------
正常故障绑定86s(x26/7m33s)persistentvolume控制器没有可用于此声明的持久卷,也没有设置存储类

我已确认群集中的所有三个节点都可以装载卷。我缺少什么?

您必须在规范中定义storageClassName,该规范将用于将PersistentVolumeClaim请求绑定到PersistentVolume

已更新配置,永久卷:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv0001
spec:
  storageClassName: manual
  claimRef:
    name: nfs-claim1
  capacity:
    storage: 5Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteOnce
  nfs:
    path: /volume2/K8s_NFS
    server: 172.16.66.50
  persistentVolumeReclaimPolicy: Recycle
持续批量索赔:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nfs-claim1
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi

您必须在规范中定义storageClassName,该规范将用于将PersistentVolumeClaim请求绑定到PersistentVolume

已更新配置,永久卷:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv0001
spec:
  storageClassName: manual
  claimRef:
    name: nfs-claim1
  capacity:
    storage: 5Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteOnce
  nfs:
    path: /volume2/K8s_NFS
    server: 172.16.66.50
  persistentVolumeReclaimPolicy: Recycle
持续批量索赔:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nfs-claim1
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi

由于
Alif Biswas的回答应该能解决您的问题,我只会补充更多信息。如果已经定义了默认存储类的详细信息,则可能无法提供特定的存储类。另外,请记住,使用
RWO
,您只能在一个节点上装载此卷。如果你想在不同的节点上挂载,你应该使用
RWX
访问模式。由于
Alif-Biswas的
回答应该可以解决你的问题,我将只添加额外的信息。如果已经定义了默认存储类的详细信息,则可能无法提供特定的存储类。另外,请记住,使用
RWO
,您只能在一个节点上装载此卷。如果要装载到不同的节点上,应使用
RWX
访问模式。