Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide for reusing PV in stateful stream apps. #446

Open
corneil opened this issue Apr 12, 2024 · 3 comments
Open

Provide for reusing PV in stateful stream apps. #446

corneil opened this issue Apr 12, 2024 · 3 comments
Labels
area/kubernetes type/enhancement Is an enhancement request

Comments

@corneil
Copy link
Contributor

corneil commented Apr 12, 2024

Users need to specify the volumeName.
Users need to be able to derive mapped path names from stream/app names.
Users need to configure a dataSource for the PVC. They can then reference an existing PVC or VolumeSnapshot.

@github-actions github-actions bot added the status/need-triage Team needs to triage and take a first look label Apr 12, 2024
@davidpenske
Copy link

davidpenske commented Apr 15, 2024

But how would this work with dynamic provisioning, especially when you have a versioned deployment.
When we deploy Stateful KStream Apps (Using Kafka Streams Binder) with SCDF as StatefulSets, the name of the StatefulSet includes the name of the stream, the name of the app and a version number. This same name is used to create the name of the underlying PVC.
When a stream is updated with new versions, a new PV is created and a new subpath will be created, the PVC will also have a new name with a new version number. I know we can manually change the name back, but that means whenever there is a new deployment we need to do a manually change, that will be too much work when we have all several hundred apps migrated to k8s.

@corneil
Copy link
Contributor Author

corneil commented Apr 17, 2024

We are considering an option where updates patches existing deployment/statefulset instead of creating a new version.

@cppwfs cppwfs removed the status/need-triage Team needs to triage and take a first look label Apr 22, 2024
@rakrvptl
Copy link

Currently the PVC name is combination of VolumeTemplate name + Statefulset, volumetemplatename is externalized, can the add prefix be externalized, so if user specifies one use it else use statefulset?

The idea primarily is to ensure when we use stream apps that do read data from kafka topics and store it to local to perform stateful kafka operations, it doesnt have to do a full download of data from kafka topic in event of new deploys.

@cppwfs cppwfs added type/enhancement Is an enhancement request and removed type/feature labels Jun 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/kubernetes type/enhancement Is an enhancement request
Projects
None yet
Development

No branches or pull requests

4 participants