-
Bug
-
Resolution: Done
-
Medium
-
El Alto Release
-
None
-
SDNC Fr Sp1:11/4-11/22
Hello,
today when deploying SDN-C with OOM, PersistentVolumeClaim for CDS needs the "ReadWriteMany" (or "RWX") capability:
$ kubectl get pvc -n onap | grep sdnc onap-sdnc-cds-blueprints Bound onap-sdnc-cds-blueprints-processor-blueprints 2Gi RWX 3h41m onap-sdnc-cds-db Pending 3h41m onap-sdnc-cds-db-data-onap-sdnc-cds-db-0 Bound onap-sdnc-cds-db-data0 2Gi RWX onap-sdnc-cds-db-data 3h41m onap-sdnc-nengdb Pending 3h41m onap-sdnc-nengdb-data-onap-sdnc-nengdb-0 Bound onap-sdnc-nengdb-data0 2Gi RWX onap-sdnc-nengdb-data 3h41m onap-sdnc-sdnc-mdsal-onap-sdnc-sdnc-0 Bound onap-sdnc-sdnc-mdsal0 1Gi RWO onap-sdnc-sdnc-mdsal 3h41m onap-sdnc-sdnc-pvc-certs Bound onap-sdnc-sdnc-pv-certs 50Mi RWO 3h41m
According to Kubernetes Documentation (https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes), ReadWriteMany stands for "the volume can be mounted as read-write by many nodes".
That means that a particular PVC needs to be read and written from many pods. That also means that your code takes that into account and do the work to avoid write at the same place at the same time.
An issue on RWX mode is that most "official" storage driver from Kubernetes doesn't support it (13 over the 19 drivers doesn't support it, espacially OpenStack, Amazon and Google storage classes).
It's then very hard in a lot of case to use CDS.
If the needs is that the volume can be mounted as read by many nodes and write by one node (which seems to be the case), RWO (ReadWriteOnce) should be sufficient and is supported by all drivers.
in the effort to deploy ONAP for gating on public cloud (one the priority of El Alto), using storage classes (and if possible RWO access) is very important.
Can you verify that RWO is sufficient and if yes, I can submit a Gerrit review to move your access needs to RWO.