Cannot mount glusterfs volume on GKE

5/29/2020

I have deployed a GlusterFS cluster on GCE, three nodes, one volume and one brick. I need to mount it on a pod deployed on GKE. I have successfully created the endpoint and PV, but I cannot create the PVC, If I introduce the volumeName refered to my PV, I get the following error:

2s Warning VolumeMismatch persistentvolumeclaim/my-glusterfs-pvc Cannot bind to requested volume "my-glusterfs-pv": storageClassName does not match

If I don't introduce a volumeName selector I get the following error:

3s Warning ProvisioningFailed persistentvolumeclaim/my-glusterfs-pvc Failed to provision volume with StorageClass "standard": invalid AccessModes [ReadWriteMany]: only AccessModes [ReadWriteOnce ReadOnlyMany] are supported

I though that glusterfs has native support on GKE, however I cannot find on the GCP site:

https://cloud.google.com/kubernetes-engine/docs/concepts/node-images#storage_driver_support

Is it related to the errors I'm getting while deploying the PVC? How could I solve it?

Thanks!

I have not defined any storageClass. I can only find Heketi provisioned GlusterFS storageClass on Kubernetes documentation. My YAMLs:

kind: PersistentVolume
metadata:
  name: my-glusterfs-pv
spec:
  capacity:
    storage: 100Gi
  accessModes:
    - ReadWriteMany
  glusterfs:
    path: mypath
    endpoints: my-glusterfs-cluster
    readOnly: false
  persistentVolumeReclaimPolicy: Retain
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-glusterfs-pvc
spec:
  accessModes:
  - ReadWriteMany
  resources:
    requests:
      storage: 100Gi
  volumeName: my-glusterfs-pv
-- Enrique Palazuelos
glusterfs
google-kubernetes-engine
kubernetes

0 Answers