0

我从 GKE(以及一般的 kubernetes)开始,我想使用 gcePersistentDisk 在 pod 上安装持久卷。

我首先在 Compute Engine 中创建了一个 Persistent Disk(项目数据),然后创建了一个 PersistentVolume 和一个 PersistentVolumeClaim,如下所示:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: project-data
spec:
  storageClassName: standard
  capacity:
    storage: 20G
  accessModes:
    - ReadWriteOnce
  gcePersistentDisk:
    pdName: project-data
    fsType: ext4
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: project-data-claim
spec:
  storageClassName: standard
  volumeName: project-data
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 20G
  selector:
    matchLabels:
      app: myapp

应用此配置后,我在 GKE/Storage 中看到我的 PVC 已“绑定”,但我找不到在 myapp 中访问我的卷的方法。

我尝试通过添加以下内容在控制台中编辑部署 yaml:

volumeMounts:
- mountPath: /data
  name: project-data

...但是控制台拒绝了这种修改(似乎禁止这种编辑)。

如何最终将我的 PersistentVolume 视为我的应用程序中的文件系统?

4

1 回答 1

2

首先,PVC应该在volumes部分定义:

volumes:
- name: project-data
  persistentVolumeClaim: 
    claimName: project-data-claim

如果直接编辑 pod 被拒绝,你可以编辑 yaml 文件,然后应用它:

$ kubectl apply -f your.yaml

另外,由于您selector在 pvc 配置中定义了,我认为您应该label在 pv 配置中定义。

于 2018-08-06T02:28:52.183 回答