Skip to content

Support PVC accessModes in Feast Go operator #4853

@dandawg

Description

@dandawg

Is your feature request related to a problem? Please describe.
Currently when deploying Feast PVC-backed services with the Feast Go operator, the accessModes list is hard coded to ["ReadWriteMany"]. Different use cases will likely require setting the accessModes list to something different, and users should be able to make the choice of which access modes they would like for each of the Feast services (Online, Offline, Registry) that have PVC-backed storage.

Describe the solution you'd like
We propose adding an accessModes field to spec.services.<service>.persistence.file.pvc.create in the FeatureStore CRD. Users would then be able to set this field when deploying Feast resources.

  spec:
    feastProject: sample
    services:
      onlineStore:
        persistence:
          file:
            pvc:
              create:
                accessModes:
                - ReadWriteOnce
                - ReadWriteMany

We will also update the Feast Go operator to take care of setting and managing the PVC accessModes.
As part of this change, we propose setting the default access mode to ReadWriteOnce (the setting used if a user requires a PVC, but doesn't explicitly provide the accessModes field in the resource YAML).

Describe alternatives you've considered
The current functionality is that PVC access modes are hard coded to one value (in the Feast operator), and the user has no choice.

Additional context
Work for this issue is progressing in PR #4851.
Docs on PVCs: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions