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

[ENH] - Adding Conda-Store, JupyterHub, Traefik, Keycloak Grafana Dashboards #1127

Closed
Tracked by #1309
costrouc opened this issue Feb 28, 2022 · 3 comments · Fixed by #1723
Closed
Tracked by #1309

[ENH] - Adding Conda-Store, JupyterHub, Traefik, Keycloak Grafana Dashboards #1127

costrouc opened this issue Feb 28, 2022 · 3 comments · Fixed by #1723

Comments

@costrouc
Copy link
Member

Feature description

Currently the Grafana dashboards for these services are already added but the metrics are not being fetched. In order to fix this we need to add the prometheus scraping operators to get the configuration. Simlar to the example here. The catch is that this requires a custom resource definition. CRDs cannot be used and defined within the same step hashicorp/terraform-provider-kubernetes#1367. Unless this issue is resolved this is complex to solve.

The most promising plan would be to use the kubectl provider

Value and/or benefit

Users can see monitoring from all their services.

Anything else?

No response

@Adam-D-Lewis
Copy link
Member

Adam-D-Lewis commented Apr 12, 2022

Adding a note in case it's useful. Though a CRD sounds like a potentially better solution, we did have a workaround in the Prometheus config in the past (https://github.com/Quansight/qhub/pull/797/files) (see monitoring/main.tf)

@Adam-D-Lewis
Copy link
Member

Adam-D-Lewis commented Apr 13, 2022

@costrouc When adding kubectl provider, we'll need to add credentials, right? e.g.

provider "kubectl" {
  host                   = var.eks_cluster_endpoint
  cluster_ca_certificate = base64decode(var.eks_cluster_ca)
  token                  = data.aws_eks_cluster_auth.main.token
  load_config_file       = false
}

I see these outputs are output in stage 2, but we don't have a way to get them from stage 2 to stage 7, do we?

@costrouc
Copy link
Member Author

costrouc commented Apr 13, 2022

@Adam-D-Lewis this is done via https://github.com/Quansight/qhub/blob/main/qhub/stages/tf_objects.py#L27-L64 and dynamically generated and added to each stage in https://github.com/Quansight/qhub/blob/main/qhub/stages/tf_objects.py#L183-L250. I would like to add this support though.

If you were to develop this I'd like to have it in two PRs:

  • one for adding the kubectl provider to each stage which uses kubernetes
  • one for adding the dashboards via kubectl

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

Successfully merging a pull request may close this issue.

3 participants