-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
[helm] Add Loki Canary to Helm Chart #7173
Conversation
./tools/diff_coverage.sh ../loki-main/test_results.txt test_results.txt ingester,distributor,querier,querier/queryrange,iter,storage,chunkenc,logql,loki Change in test coverage per package. Green indicates 0 or positive change, red indicates that test coverage for a package fell. + ingester 0%
+ distributor 0%
+ querier 0%
+ querier/queryrange 0%
+ iter 0%
+ storage 0%
+ chunkenc 0%
+ logql 0%
+ loki 0% |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
few nits
cluster: {{ include "loki.fullname" . -}} | ||
cluster: {{ include "loki.fullname" . }} | ||
{{- if or .Values.loki.auth_enabled .Values.enterprise.enabled }} | ||
tenantId: {{ .Values.monitoring.selfMonitoring.tenant }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this identation right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is a tenant ID required for enterprise?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
probably not required for enterprise since with enterprise we're providing the username below.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
changed the logic a bit, and yes double checked indenation, following is with auth_enabled = true
but enterprise off:
spec:
clients:
- url: http://loki-gateway.default.svc.cluster.local/loki/api/v1/push
externalLabels:
cluster: release-name-loki
tenantId: self-monitoring
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I need to give it one more pass.
576c0cb
to
2fc7aa2
Compare
* Add the loki canary as a deamonset * In order to work with enterprise mode, the loki-canary had to be configured with a basic auth user and password. The addition of the provisioner job allows us to provision a tenant for both canary and self-monitoring usage.
Co-authored-by: Dylan Guedes <[email protected]>
Co-authored-by: Dylan Guedes <[email protected]>
Co-authored-by: Dylan Guedes <[email protected]>
Co-authored-by: Dylan Guedes <[email protected]>
Co-authored-by: Dylan Guedes <[email protected]>
2fc7aa2
to
b356620
Compare
./tools/diff_coverage.sh ../loki-main/test_results.txt test_results.txt ingester,distributor,querier,querier/queryrange,iter,storage,chunkenc,logql,loki Change in test coverage per package. Green indicates 0 or positive change, red indicates that test coverage for a package fell. + ingester 0%
+ distributor 0%
+ querier 0%
- querier/queryrange -0.1%
+ iter 0%
+ storage 0%
+ chunkenc 0%
+ logql 0%
+ loki 0% |
Hi @trevorwhitney, could you explain, why you added the loki-canary ServiceAccount as a Helm |
And another question @trevorwhitney, why do you default to |
@towolf the reason for the Also, we should definitely use |
**What this PR does / why we need it**: Bring the Loki Canary service account in line with the Loki service account, removing the post install hook, and sharing the top level properties for `automountServiceAccountToken` and `imagePullSecrets`. I'm open to creating canary specific values for these setting if needed, but want to start by sharing the top level values to reduce config if possible. Also default canary to Appversion to be in sync with default Loki version **Which issue(s) this PR fixes**: Fixes two issues raised in comments from @towolf (thanks!) on this [PR](#7173 (comment)). Fixes #7237
**What this PR does / why we need it**: This PR adds the Loki canary as well as the GEL provisioner to the Loki helm chart. The Loki canary expands the self-monitoring functionality of the Helm chart, giving operators insight beyond whether Loki is just running, but also if it's functioning properly. The GEL provisioner was necessary for the canary to work when the enterprise option (`enterprise.enabled = true`) is enabled. Since enabling enterprise in the helm chart also enables auth/multi-tenancy, the addition of the provisioner allows the helm chart to automatically create a tenant for the canary via the GEL admin API, and to create applicable access policies and tokens. Furthermore, additional tenants can also be specified, which will be provisioned, creating a read and write token for each that will be stored in k8s secrets. **Which issue(s) this PR fixes**: Fixes grafana#7019 Co-authored-by: Karsten Jeschkies <[email protected]> Co-authored-by: Dylan Guedes <[email protected]>
**What this PR does / why we need it**: Bring the Loki Canary service account in line with the Loki service account, removing the post install hook, and sharing the top level properties for `automountServiceAccountToken` and `imagePullSecrets`. I'm open to creating canary specific values for these setting if needed, but want to start by sharing the top level values to reduce config if possible. Also default canary to Appversion to be in sync with default Loki version **Which issue(s) this PR fixes**: Fixes two issues raised in comments from @towolf (thanks!) on this [PR](grafana#7173 (comment)). Fixes grafana#7237
**What this PR does / why we need it**: Bring the Loki Canary service account in line with the Loki service account, removing the post install hook, and sharing the top level properties for `automountServiceAccountToken` and `imagePullSecrets`. I'm open to creating canary specific values for these setting if needed, but want to start by sharing the top level values to reduce config if possible. Also default canary to Appversion to be in sync with default Loki version **Which issue(s) this PR fixes**: Fixes two issues raised in comments from @towolf (thanks!) on this [PR](grafana#7173 (comment)). Fixes grafana#7237
**What this PR does / why we need it**: Bring the Loki Canary service account in line with the Loki service account, removing the post install hook, and sharing the top level properties for `automountServiceAccountToken` and `imagePullSecrets`. I'm open to creating canary specific values for these setting if needed, but want to start by sharing the top level values to reduce config if possible. Also default canary to Appversion to be in sync with default Loki version **Which issue(s) this PR fixes**: Fixes two issues raised in comments from @towolf (thanks!) on this [PR](grafana#7173 (comment)). Fixes grafana#7237
**What this PR does / why we need it**: This PR adds the Loki canary as well as the GEL provisioner to the Loki helm chart. The Loki canary expands the self-monitoring functionality of the Helm chart, giving operators insight beyond whether Loki is just running, but also if it's functioning properly. The GEL provisioner was necessary for the canary to work when the enterprise option (`enterprise.enabled = true`) is enabled. Since enabling enterprise in the helm chart also enables auth/multi-tenancy, the addition of the provisioner allows the helm chart to automatically create a tenant for the canary via the GEL admin API, and to create applicable access policies and tokens. Furthermore, additional tenants can also be specified, which will be provisioned, creating a read and write token for each that will be stored in k8s secrets. **Which issue(s) this PR fixes**: Fixes grafana#7019 Co-authored-by: Karsten Jeschkies <[email protected]> Co-authored-by: Dylan Guedes <[email protected]>
**What this PR does / why we need it**: Bring the Loki Canary service account in line with the Loki service account, removing the post install hook, and sharing the top level properties for `automountServiceAccountToken` and `imagePullSecrets`. I'm open to creating canary specific values for these setting if needed, but want to start by sharing the top level values to reduce config if possible. Also default canary to Appversion to be in sync with default Loki version **Which issue(s) this PR fixes**: Fixes two issues raised in comments from @towolf (thanks!) on this [PR](grafana#7173 (comment)). Fixes grafana#7237
What this PR does / why we need it:
This PR adds the Loki canary as well as the GEL provisioner to the Loki helm chart. The Loki canary expands the self-monitoring functionality of the Helm chart, giving operators insight beyond whether Loki is just running, but also if it's functioning properly.
The GEL provisioner was necessary for the canary to work when the enterprise option (
enterprise.enabled = true
) is enabled. Since enabling enterprise in the helm chart also enables auth/multi-tenancy, the addition of the provisioner allows the helm chart to automatically create a tenant for the canary via the GEL admin API, and to create applicable access policies and tokens. Furthermore, additional tenants can also be specified, which will be provisioned, creating a read and write token for each that will be stored in k8s secrets.Which issue(s) this PR fixes:
Fixes #7019
Checklist
CHANGELOG.md
.docs/sources/upgrading/_index.md