IBM / ibm-storage-odf-console

ibm-storage-odf-console provides IBM storage specific console page, which will be loaded by ODF console when end users access IBM storage. It's specially designed for displaying IBM specific storage attributes to customer. Current scope includes IBM flashsystem only.
Apache License 2.0
3 stars 7 forks source link

pvc's remain in pending and not bound because there is not provisioner #35

Closed MonicaLemay closed 3 years ago

MonicaLemay commented 3 years ago

I used the console to create pvc's. All are still in Pending state and all give the same reason.

[root@cluster2-inf ~]# oc get pvc -A | grep -vi bound
NAMESPACE                  NAME                          STATUS    VOLUME                           CAPACITY   ACCESS MODES   STORAGECLASS                      AGE
default                    pvc-ibm-block                 Pending                                                              ibm-block-flashsystem             23h
default                    pvc-test1                     Pending                                                              test1                             23h
openshift-storage          pvc-ibm-ns2                   Pending                                                              ibm-block-flashsystem             23h
openshift-storage          pvc-test1-ns                  Pending                                                              test1                             23h
[root@cluster2-inf ~]#
[root@cluster2-inf ~]# oc describe pvc -n openshift-storage pvc-ibm-ns2
Name:          pvc-ibm-ns2
Namespace:     openshift-storage
StorageClass:  ibm-block-flashsystem
Status:        Pending
Volume:
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner: block.csi.ibm.com
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode:    Filesystem
Mounted By:    <none>
Events:
  Type    Reason                Age                    From                                                                               Message
  ----    ------                ----                   ----                                                                               -------
  Normal  Provisioning          3m45s (x291 over 23h)  block.csi.ibm.com_ibm-block-csi-controller-0_1bfa7090-db42-40f9-b341-7b8d91063e02  External provisioner is provisioning volume for claim "openshift-storage/pvc-ibm-ns2"
  Normal  ExternalProvisioning  2m5s (x5805 over 23h)  persistentvolume-controller                                                        waiting for a volume to be created, either by external provisioner "block.csi.ibm.com" or manually created by system administrator
[root@cluster2-inf ~]#

To create the pvc using the GUI, these are the panels. Screen Shot 2021-09-22 at 10 33 27 AM

I've tried both storage classes: test1 and ibm-block-flashsystem Screen Shot 2021-09-22 at 10 36 06 AM

Both have the same result.

I think the problem is that the pvc's are requiring a provisioner based on their storage class, which the GUI assigns as block.csi.ibm.com

[root@cluster2-inf ~]# oc describe sc ibm-block-flashsystem
Name:                  ibm-block-flashsystem
IsDefaultClass:        No
Annotations:           <none>
Provisioner:           block.csi.ibm.com
Parameters:            SpaceEfficiency=thin,csi.storage.k8s.io/controller-expand-secret-name=flashsystem,csi.storage.k8s.io/controller-expand-secret-namespace=openshift-storage,csi.storage.k8s.io/controller-publish-secret-name=flashsystem,csi.storage.k8s.io/controller-publish-secret-namespace=openshift-storage,csi.storage.k8s.io/fstype=ext4,csi.storage.k8s.io/provisioner-secret-name=flashsystem,csi.storage.k8s.io/provisioner-secret-namespace=openshift-storage,pool=isvV7K11_1,volume_name_prefix=odf
AllowVolumeExpansion:  <unset>
MountOptions:          <none>
ReclaimPolicy:         Delete
VolumeBindingMode:     Immediate
Events:                <none>

There is no such provisioner running.

[root@cluster2-inf ~]# oc get pods -n openshift-storage
NAME                                                              READY   STATUS      RESTARTS   AGE
32461ced2c5327a2c3c82c6a3c0cd4b2ff356a08e51467845343908b445d4tq   0/1     Completed   0          5d22h
5cb2b16ec2b11bf63dbe691d44a63535dc026bb5315d5075dc6c398b3c28mxp   0/1     Completed   0          5d22h
7c806f6568f85cf10d72508261a2535c220429b54dbcf87349b9b4b9839k2fw   0/1     Completed   0          5d22h
c4b05566c04876677a22d39fc9c02512401d0962109610e85c8fb900d3fpk74   0/1     Completed   0          5d22h
ibm-block-csi-controller-0                                        6/6     Running     0          5d21h
ibm-block-csi-node-bdcfk                                          3/3     Running     0          5d21h
ibm-block-csi-node-g9qrq                                          3/3     Running     0          5d21h
ibm-block-csi-node-s72vd                                          3/3     Running     9          5d21h
ibm-block-csi-node-z8zgc                                          3/3     Running     0          5d21h
ibm-block-csi-operator-cbf6c7796-fbprk                            1/1     Running     0          5d22h
ibm-flashsystem-storage-5b85668897-grwsh                          1/1     Running     0          43h
ibm-odf-console-bfc5f8b7b-qbknj                                   1/1     Running     0          5d22h
ibm-storage-odf-operator-799dbc7468-gms78                         2/2     Running     13         5d22h
noobaa-operator-77bc548bf8-jt74h                                  1/1     Running     0          5d22h
ocs-metrics-exporter-689cf549d5-zrn4j                             1/1     Running     0          5d22h
ocs-operator-79b895b9dc-nn8zn                                     1/1     Running     14         5d22h
odf-catalogsource-rrxdn                                           1/1     Running     0          5d22h
odf-console-8dbb8fc85-pg44c                                       2/2     Running     0          5d22h
odf-operator-controller-manager-5cdb86df97-lq58x                  2/2     Running     13         5d22h
rook-ceph-operator-84d699978f-nf9bh                               1/1     Running     0          5d22h
[root@cluster2-inf ~]# oc get pods -n openshift-storage | grep -i prov
[root@cluster2-inf ~]#

The only provisioner is the ibm-spectrum-scale-csi-provisoner-0

[root@cluster2-inf ~]# oc get pods -A |grep provisioner
ibm-spectrum-scale                                 ibm-spectrum-scale-csi-provisioner-0                              1/1     Running                 3          8d

I think it is the responsibility of the odf installation to start all of the rquired CSI pods. The provisioner is missing.

MonicaLemay commented 3 years ago

It looks like the problem is only with RWX pvc's. Are these not supported? If not, then shouldn't it be blocked or give a message?

openshift-storage          new-pvc-rwo                   Bound     pvc-67aedd25-df1e-4bb7-a641-5fd23f8fb9e1   1Mi        RWO            test-odf                          7m54s
openshift-storage          new-pvc-rwx                   Pending                                                                        test-odf                          2m49s
shdn-ibm commented 3 years ago

hi, @MonicaLemay yes, RWX is not supported by flashsystem. As this console is a common UI for PVC creation, we cannot customer it for flashsystem. But openshift console team have realized this problem and they plan to support different storage vendor to custome their own configuration in future release. details in https://github.com/openshift/console/pull/8345

So close this as work as design