Summary
The storage capability catalog is keyed by exact CSI provisioner. Some provisioners front more than one storage shape behind one name: csi.trident.netapp.io serves ONTAP NAS (NFS, ReadWriteMany works) and ONTAP SAN (block, ReadWriteMany filesystem claims never bind). The catalog entry added in #2171 declares the NAS shape, so a cluster whose nvcf-sc is a Trident SAN class would receive the shared-claim workflow and fail at PVC binding until the pending timeout.
Proposal
Allow a catalog entry to require StorageClass parameters, for example parameters.backendType: ontap-nas, and have model cache storage selection treat a class that does not satisfy them as having no catalog entry. This keeps the provisioner as the key while letting one provisioner carry one qualified shape per parameter set.
Notes
- Today the operator contract is documented in the entry comment:
nvcf-sc for Trident must be an ONTAP NAS class.
- Same concern applies to any future multi-backend provisioner.
Summary
The storage capability catalog is keyed by exact CSI provisioner. Some provisioners front more than one storage shape behind one name:
csi.trident.netapp.ioserves ONTAP NAS (NFS,ReadWriteManyworks) and ONTAP SAN (block,ReadWriteManyfilesystem claims never bind). The catalog entry added in #2171 declares the NAS shape, so a cluster whosenvcf-scis a Trident SAN class would receive the shared-claim workflow and fail at PVC binding until the pending timeout.Proposal
Allow a catalog entry to require StorageClass parameters, for example
parameters.backendType: ontap-nas, and have model cache storage selection treat a class that does not satisfy them as having no catalog entry. This keeps the provisioner as the key while letting one provisioner carry one qualified shape per parameter set.Notes
nvcf-scfor Trident must be an ONTAP NAS class.