9

我創建了一個PersistentVolume,源自Google Compute Engine永久磁盤,我已經格式化並提供數據。 Kubernetes說PersistentVolume可用。Kubernetes在待定狀態中無限期地持續聲明索賠

kind: PersistentVolume 
apiVersion: v1 
metadata: 
    name: models-1-0-0 
    labels: 
    name: models-1-0-0 
spec: 
    capacity: 
    storage: 200Gi 
    accessModes: 
    - ReadOnlyMany 
    gcePersistentDisk: 
    pdName: models-1-0-0 
    fsType: ext4 
    readOnly: true 

然後我創建了一個PersistentVolumeClaim這樣我就可以連接此卷在多個節點上的多個吊艙。然而,kubernetes無限期地說它處於未決狀態。

kind: PersistentVolumeClaim 
apiVersion: v1 
metadata: 
    name: models-1-0-0-claim 
spec: 
    accessModes: 
    - ReadOnlyMany 
    resources: 
    requests: 
     storage: 200Gi 
    selector: 
    matchLabels: 
     name: models-1-0-0 

任何見解?我覺得有可能是選擇器有問題...

是否有可能預先配置持久磁盤的數據,並且跨多個節點的pod都能夠讀取它?

回答

10

我很快意識到PersistentVolumeClaim在未指定時默認storageClassName字段爲standard。但是,創建PersistentVolume時,storageClassName沒有默認值,所以選擇器不會找到匹配項。

對我下面的工作:

kind: PersistentVolume 
apiVersion: v1 
metadata: 
    name: models-1-0-0 
    labels: 
    name: models-1-0-0 
spec: 
    capacity: 
    storage: 200Gi 
    storageClassName: standard 
    accessModes: 
    - ReadOnlyMany 
    gcePersistentDisk: 
    pdName: models-1-0-0 
    fsType: ext4 
    readOnly: true 
--- 
kind: PersistentVolumeClaim 
apiVersion: v1 
metadata: 
    name: models-1-0-0-claim 
spec: 
    accessModes: 
    - ReadOnlyMany 
    resources: 
    requests: 
     storage: 200Gi 
    selector: 
    matchLabels: 
     name: models-1-0-0