-
Notifications
You must be signed in to change notification settings - Fork 12
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
[LS-59631] add opamp bridge to otel-cloud-stack chart #76
[LS-59631] add opamp bridge to otel-cloud-stack chart #76
Conversation
@@ -15,7 +15,7 @@ type: application | |||
# This is the chart version. This version number should be incremented each time you make changes | |||
# to the chart and its templates, including the app version. | |||
# Versions are expected to follow Semantic Versioning (https://semver.org/) | |||
version: "0.3.1" | |||
version: "0.4.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.
Given a version number MAJOR.MINOR.PATCH, increment the:
MAJOR version when you make incompatible API changes
MINOR version when you add functionality in a backward compatible manner
PATCH version when you make backward compatible bug fixes
this is adding functionality in a backward compatible manner so i increased the minor version
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.
This looks good to me! I think for testing
- it would be good to see the Helm chart rendered into full k8s config
- see if this chart can be used to standup (replace) the
dev-opamp
collectors and bridge
…ue was set in jacobs example just because he used it in a demo and this should match the other collectors
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.
(Assume the comments for KOS are the same for the OCS)
…e same, so i will finalize otel-cloud-stack with this PR an then just apply the same changes to kube-otel-stack in followup
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.
great stuff here. Thank you!
Description
This adds an opamp bridge to the
otel-cloud-stack
chart. The same chart will be duplicated into kube-otel-stack in a followup.The bridge is configured from a section in
values.yaml
calledopAMPBridge
.The bridge is enabled by setting
Values.opAMPBridge.enabled
totrue
, and isfalse
by default.addReportingLabel
is set on the bridge, all collectors will be tagged withopentelemetry.io/opamp-reporting: - true
which makes the bridge report on those collectors but does not allow it to modify them.addManagedLabel
is set on the bridge, all collectors will be tagged withopentelemetry.io/opamp-managed: true
which makes the bridge report on those collectors and allows it to modify them.opamp-reporting
tag to true on the collectors.For docs team
The opamp bridge monitors a customer's collectors and provides health updates to Lightstep. It will eventually allow them to remotely configure their collectors. This is related to the Monitor your collectors section in the kube quickstart doc.
Customers can optionally include the OpAMP Bridge by setting
opAMPBridge.enabled
totrue
when helm installing theotel-cloud-stack
chart. They need to create a project-scoped Lightstep API key with theOpAMP Agent
role for their bridge, and set it as a kubernetes secret calledotel-opamp-bridge-secret
with the keyLS_OPAMP_API_KEY
. This will automatically be set as an env variable in their OpAMP Bridge to be passed through to authentication.There are two relevant collector tags that can be modified with this chart:
opentelemetry.io/opamp-reporting
, when set totrue
on a collector, tells the OpAMP Bridge to report the health of this collector but disallows it from modifying the collector configopentelemetry.io/opamp-managed
, when set totrue
on a collector, tells the OpAMP Bridge to report the health of this collector and allows the OpAMP Bridge to modify the collector configBoth of these should not be true on a collector, but if they are
opentelemetry.io/opamp-reporting
takes precedence so the OpAMP Bridge cannot modify that collector. If neither is set, the OpAMP Bridge will not report on that collector.By setting
opAMPBridge.addReportingLabel
totrue
in this helm chart, all collectors installed by this chart will be tagged withopentelemetry.io/opamp-reporting: true
. This is set to true by default in this chart.Customers can set
opAMPBridge.addReportingLabel
tofalse
andopAMPBridge.addManagedLabel
totrue
to instead tag all collectors installed by this chart withopentelemetry.io/opamp-managed: true
.Unfortunately I don't think there are good OpAMP Bridge docs to direct customers to if they want more information
How Has This Been Tested?
to show this is backwards compatible, I ran a bridge-less install on both the old chart and updated chart. The diffs are below and you can see they are only version changes.
command:
diff:
diff between old helm install and new helm install with the bridge enabled: