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

Optional PVC provisioning #2

Open
orlovmyk opened this issue Dec 17, 2024 · 2 comments
Open

Optional PVC provisioning #2

orlovmyk opened this issue Dec 17, 2024 · 2 comments

Comments

@orlovmyk
Copy link

orlovmyk commented Dec 17, 2024

I want to shkeeper only to work only with USDT (TRX) network, meanwhile even If I keep all other currencies false - PVCs are created for all currencies enabled. There is no any if statement in PVC objects:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: tron-output-directory
  namespace: {{ .Values.namespace }}
spec:
  storageClassName: {{ .Values.storageClassName }}
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 2000Gi

P.S.
Also I am not sure if everyone can afford to provision 2 TB storage, it would be great to have those configurable as well

P.S.S.
PVC request size for full node, even if I want to have trimmed one

@dmytro-samoylenko
Copy link
Member

Hello,

Thank you for suggestion and PR.

The reason PVC are unconditionally created it to prevent data loss by PVC unprovisioning if user accidently disable previously enabled crypto. The main platform for Shkeeper deployment is k3s, which is a self hosted k8s distro for virtual and dedicated servers, and there were no downsides in provisioning PVC of any size, as they created on a local disk and take no space, except an extra directory under /var/lib/rancher/k3s/storage. But I see that it can introduce an unwanted expense if deployed on managed k8s services like AWS.

I think the solution might be in keeping important small PVC unconditionally created (like shkeeper db, tron db, mysql etc). The rest of PVC are not that important because they contain blockchain data that can be re-downloaded in case of its loss.

@orlovmyk
Copy link
Author

@dmytro-samoylenko Hello, glad to hear quick response from your team

Even with k3s cluster, in my installation I've disabled local-path provisioner at all, because I think it's very dangerous to use it. k3s allows you yo do that with option --disable=local-storage. While I agree with you on some points I think you need to look forward and make chart as flexible as possible.

If you want I can update PR to make only big (>100GB) PVCs optional.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants