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

Add cloud-specific deployment and configuration #37

Merged
merged 4 commits into from
May 6, 2022
Merged

Add cloud-specific deployment and configuration #37

merged 4 commits into from
May 6, 2022

Conversation

hjet
Copy link
Contributor

@hjet hjet commented May 5, 2022

This PR makes it easier to deploy the TNS app and mixin when using our cloud products & Kubernetes integration.

There will be an accompanying doc in Cloud docs that will walk the user through deploying the app, deploying the mixin (using Grizzly), and navigating the dashboards.

Existing code paths are mostly unchanged.

This PR does the following:

  • When passing in an optional cloud parameter, installs only the TNS app into an existing K8s cluster, without Loki, Grafana, Agent, etc.
  • When using the cloud deployment path, patches the app to use a slightly different Jaeger config (that is in line with the default config & manifests we provide users)
  • Modifies dashboards to use rate_interval everywhere [1]
  • Adds a grr.jsonnet file to the TNS mixin to allow easy deployment to hosted Grafana instances using Grizzly
  • Patches the mixin to use a slightly different query for the namespace template variable, as our default K8s integration config drops this metric

[1] This is the only change that affects the non-cloud deployment path

@hjet
Copy link
Contributor Author

hjet commented May 5, 2022

cc @eamonryan

@hjet hjet requested a review from 56quarters May 5, 2022 18:58
Copy link
Contributor

@56quarters 56quarters left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM with a few suggestions. Can you confirm that the $__rate_interval changes work with the scrape interval the agent uses in the non-cloud setup? I seem to remember having issues with that in the past.

install Outdated
@@ -12,7 +13,7 @@ function install_env {
tk apply environments/$ENV # Installs everything for your environment.
}

if [[ $(docker info --format "{{.MemTotal}}") -lt 2560000000 ]]; then
if [[ "$MODE" != "cloud" ]] && [[ $(docker info --format "{{.MemTotal}}") -lt 2560000000 ]]; then
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you add a note to the README (wherever it makes sense) that this is an option?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I realize this is for Grafana Cloud but there doesn't seem to be anything cloud-specific about this. Maybe a different name like "app-only" or "existing" or something like that? (please feel free to pick something better than my suggestions)

@hjet
Copy link
Contributor Author

hjet commented May 6, 2022

LGTM with a few suggestions. Can you confirm that the $__rate_interval changes work with the scrape interval the agent uses in the non-cloud setup? I seem to remember having issues with that in the past.

Screen Shot 2022-05-06 at 5 36 53 PM

Looks good!

@hjet hjet merged commit 49e87b9 into main May 6, 2022
@hjet hjet deleted the add_cloud branch May 6, 2022 22:02
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 this pull request may close these issues.

None yet

2 participants