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

Install arbitrary resources with the Helm chart #115

Closed
d-m opened this issue Dec 14, 2021 · 3 comments · Fixed by #128
Closed

Install arbitrary resources with the Helm chart #115

d-m opened this issue Dec 14, 2021 · 3 comments · Fixed by #128

Comments

@d-m
Copy link
Contributor

d-m commented Dec 14, 2021

My team has written a Helm chart internally to install RStudio Connect and Workbench and we would like to replace it with these. As part of our Helm charts, we install some other custom resources like cert-manager Certificate resources, prometheus-operator PrometheusRule resources, etc.

Would it be possible to add support for installing arbitrary Kubernetes resources so these things could be part of the same deployment?

This is a common pattern with Bitnami's Helm charts:

@colearendt
Copy link
Member

Ahh nice! I had not seen that before - but that makes a lot of sense. Quite clever! I definitely think support for that seems reasonable / something worth supporting.

@atheriel
Copy link
Collaborator

atheriel commented Dec 20, 2021

@d-m Is the goal of this to make removing these resources easier, since they would be tracked by Helm? Or do these resources in particular need specific coordination with the Helm release that makes the regular kubectl apply route difficult?

An alternative here -- especially given that Certificate and PrometheusRule are common third-party CRDs -- would be to actually support them directly. I've been personally working on better Prometheus Operator support, in particular, and we'll likely roll out even more Prometheus/Grafana integration in the future. @d-m I'd love to see what you're putting in your PrometheusRule, if you are able to share.

@d-m
Copy link
Contributor Author

d-m commented Dec 20, 2021

The main goal for us is to be able to deploy and manage as a unit all of the other resources that constitute our Workbench deployment. These include PersistentVolume, PersistentVolumeClaim, cert-manager Certificate, Prometheus-operator ServiceMonitor, (one for Workbench, but also another and a matching Service resource for the sessions as we've installed node_exporter on those as well) AlertmanagerConfig, and PrometheusRule resources. Some of these things might be too opinionated to warrant supporting in the official charts. Even if they do eventually get supported, being able to deploy them using something like this allows us to adopt these charts earlier and migrate to the official values in the future. We have a bunch of internal Helm charts that predate these that we're looking forward to archiving.

In terms of Prometheus rules that we deploy, we have a few that monitor session metrics like memory utilization to warn users if they're getting close to an OOM issue and NFS stats. We also have a few outstanding feature requests with RStudio for additional metrics, particularly around license usage, that we would like to alert on in the future.

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

Successfully merging a pull request may close this issue.

3 participants