ThinkParQ / beegfs-csi-driver

The BeeGFS Container Storage Interface (CSI) driver provides high performing and scalable storage for workloads running in Kubernetes. 📦 🐝
Apache License 2.0
65 stars 18 forks source link

Add ReadWriteOncePod? #11

Open scaleoutsean opened 2 years ago

scaleoutsean commented 2 years ago

I'm not sure if this would be useful to BeeGFS CSI users, but a new flavor of RWO called ReadWriteOncePod could be added if there's a use case for it.

It seems like an anti-feature for BeeGFS CSI... Maybe there's a use case for lowering risks of application-induced data corruption in RWO workloads?

ejweber commented 2 years ago

Thanks @scaleoutsean. ReadWriteOncePod does generally seem like an "anti-feature" to me, but reading through the documentation you linked, it seems supporting it would be fairly straightforward. I don't think we'd have to put in any real code changes (it does not matter to BeeGFS if a BeeGFS directory is read from or written to by multiple nodes/pods or a single node/pod as long as the implications are understood by the BeeGFS user). Additionally, we currently don't validate/restrict any particular Kubernetes access mode.

Since this is opt-in (we have to advertise new capabilities and potentially update sidecars), I'll create an internal issue with the team to look at this more closely. We'll likely not prioritize it too highly, as the feature is still in Alpha right now.