-
Notifications
You must be signed in to change notification settings - Fork 117
Description
Describe the problem/challenge you have
Localpv-zfs is very flexible in the sense that it reflects a lot of volume/dataset parameters in the StorageClass. For specific workloads (e.g. a Postgres database), one might desire some special recordsize/compression/etc options on the block level.
However, it is challenging for admins and confusing for users to have a separate storageclass for each possible set of parameters.
Describe the solution you'd like
I am not a ZFS expert but afaik, parameters may differ between datasets/zvols, even in the same pool.
Thus, it would be very handy to have the option to override those on a per-PVC level where necessary. This could be achieved with a set of annotations, such as
kind: PersistentVolumeClaim
metadata:
name: my-zfs-pvc
annotations:
zfs.csi.openebs.io/recordsize: 16k
zfs.csi.openebs.io/compression: zstd
spec:
storageClassName: local-zfsAnything else you would like to add:
An option to enable/disable this feature might be desirable for those who want to strictly enforce parameters set in the storageclass. Ideally, admins would decide which parameters are changeable and which ones aren't.