我想将PersistentVolumeClaim与gcePersistentDisk PersistentVolume绑定.在我为此做的步骤下面:
gcloud compute disks create --size=2GB --zone=us-east1-b gce-nfs-disk
# pv-pvc.yml
apiVersion: v1
kind: PersistentVolume
metadata:
name: nfs-pv
spec:
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
gcePersistentDisk:
pdName: gce-nfs-disk
fsType: ext4
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nfs-pvc
labels:
app: test
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
Run Code Online (Sandbox Code Playgroud)
运行后kubectl apply -f pv-pvc.yml,nfs-pvc不受约束nfs-pv.事实上,下面是我拥有的PersistentVolume和PersistentVolumeClaim的列表:
$ kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
nfs-pv 2Gi RWO Retain …Run Code Online (Sandbox Code Playgroud) kubernetes google-kubernetes-engine persistent-volumes persistent-volume-claims gce-persistent-disk
方法 1(kubernetes 卷附加到 google 永久磁盘,kubernetes 卷声明附加到 kubernetes 卷)
apiVersion: v1
kind: PersistentVolume
metadata:
name: volume-1
spec:
storageClassName: ""
capacity:
storage: 50Gi
accessModes:
- ReadWriteOnce
gcePersistentDisk:
pdName: pd-test-1
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pv-claim-1
spec:
storageClassName: ""
volumeName: volume-1
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
Run Code Online (Sandbox Code Playgroud)
方法 2(Kubernetes 卷声明直接附加到 google 永久磁盘)
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pv-claim-1
spec:
volumeName: pd-test-1
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
Run Code Online (Sandbox Code Playgroud)
方法3(pod直接使用google持久磁盘文档)
apiVersion: v1
kind: Pod
metadata:
name: test-pd
spec: …Run Code Online (Sandbox Code Playgroud) kubernetes ×2