当前位置: 首页 > 知识库问答 >
问题:

NFS卷的PersistentVolumeClaim挂起

裴和怡
2023-03-14

我们使用pv-volume-network.yaml创建了一个PersistentVolume pv01:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv01
spec:
  capacity:
    storage: 5Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Recycle
  storageClassName: slow
  mountOptions:
    - hard
    - nfsvers=4.1
  nfs:
    path: "/nfsfileshare"
    server: "10.0.0.112"

并通过键入:

kubectl create -f pv-volume-network.yaml

然后,当我们键入Kubectl get pv pv01时,pv01PersistentVolume显示“可用”的状态。

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: my-pv-claim
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 3Gi
kubectl create -f pv-claim.yaml

注此OP与其他问题不同,因为即使在NFS IP和路径周围有引号,此问题仍然存在。

为什么这种PVC不与PV结合?需要做哪些具体的改变来解决这个问题?

共有1个答案

梁存
2023-03-14

我通过键入kubectl description pvc my-pv-claim并查看结果的事件部分来诊断问题。

然后,根据报告的事件,我可以通过将StorageClassName:manual更改为StorageClassName:slow来解决这个问题。

问题是PVC的StorageClassName不符合它与PV中指定的类匹配的要求。

 类似资料:
  • 问题内容: 示例(为简便起见,省略了许多选项): 这是错误的,因为没有名称名称的卷,这意味着该卷名称必须是文件的完整路径(即,您不能在该卷名称后附加路径)? 尝试设置只会返回错误。 有没有办法将单个文件安装到容器中? 问题答案: 您不能在命名卷中装入文件或子目录,源是命名卷或主机路径。NFS本身,以及您将在Linux中挂载的大多数文件系统,都要求您挂载整个文件系统,而不是单个文件,当下降到inod

  • 问题内容: 我最近创建了一个在Windows上的boot2docker上运行的mongodb docker实例。 不幸的是,在尝试kitematic的过程中,我意外地从mongo容器中删除了该卷,并且无法再访问我的数据。 mongo实例似乎创建了一个新卷,而旧卷现在仍悬空(孤立)并且未安装在任何容器中。 有什么办法可以恢复吗? 问题答案: 感谢您的答复,它使我处于正确的轨道,我设法使用以下命令启动

  • 问题内容: 我有一个v3的撰写文件,其中有3个服务共享/使用相同的卷。在使用群模式时,我们需要创建额外的容器和卷来管理整个集群中的服务。 我打算使用NFS服务器,以便单个NFS共享将直接安装在群集内的所有主机上。 我发现以下两种实现方法,但是它需要在Docker主机上执行额外的步骤- 在主机上使用“ fstab”或“ mount”命令挂载NFS共享,然后将其用作Docker服务的主机卷。 使用Ne

  • 问题内容: 我有一个在Kubernetes中的POD上运行的应用程序。我想将一些输出文件日志存储在持久存储卷上。 为此,我在NFS上创建了一个卷,并通过相关的卷声明将其绑定到POD。当我尝试写入或访问共享文件夹时,由于“ NFS”显然是只读的,因此收到“权限被拒绝”消息。 以下是我用来创建卷的json文件: 以下是POD配置文件 有没有办法更改权限? 更新 这是PVC和NFS配置: PVC: NF

  • 问题内容: 有谁知道如何使用centos基本映像在docker容器中安装nfs共享?我已经尝试过以下命令: 并得到下一个错误: 当我尝试将其与 -o nolock 选项一起使用时,错误是: 问题答案: 对于使用,您需要具有此功能,Docker在创建容器时会丢弃该功能。 有几种解决方案: 用标志启动容器。这将导致Docker保留该功能,从而使您可以从容器内挂载NFS共享。这可能是一个安全问题;不要在