8000 feat(tracing): Add proxy tracing configuration to control plane helm chart by sfleen · Pull Request #13994 · linkerd/linkerd2 · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

feat(tracing): Add proxy tracing configuration to control plane helm chart #13994

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

sfleen
Copy link
Contributor
@sfleen sfleen commented May 5, 2025

Previously, this would require the linkerd-jaeger extension to be installed. This comes with its own set of issues, namely managing yet another component of linkerd.

Since the tracing config is basically just environment variables and one volume mount, hoisting them up into the main control plane helm chart for the proxy injector to handle is likely the simplest and most maintainable path going forward.

The injector from the linkerd-jaeger extension will still work for the time being, and is interoprable to some degree as long as the injector in the extension is disabled. A follow-up to this PR should add documentation around this and how users can migrate from the extension to these configs.

@sfleen sfleen requested a review from a team as a code owner May 5, 2025 21:25
@sfleen sfleen requested review from alpeb and adleong May 5, 2025 21:26
@alpeb
Copy link
Member
alpeb commented May 6, 2025

The injector from the linkerd-jaeger extension will still work for the time being, and is interoprable to some degree as long as the injector in the extension is disabled. A follow-up to this PR should add documentation around this and how users can migrate from the extension to these configs.

IIUC, this should be followed up as well by parametrizing the deployment of the injector in linkerd-jaeger, disabling it by default?

@sfleen sfleen removed the request for review from adleong May 6, 2025 15:29
@sfleen sfleen self-assigned this May 6, 2025
…chart

Previously, this would require the `linkerd-jaeger` extension to be installed. This comes with its own set of issues, namely managing yet another component of linkerd.

Since the tracing config is basically just environment variables and one volume mount, hoisting them up into the main control plane helm chart for the proxy injector to handle is likely the simplest and most maintainable path going forward.

The injector from the `linkerd-jaeger` extension will still work for the time being, and is interoprable to some degree as long as the injector in the extension is disabled. A follow-up to this PR should add documentation around this and how users can migrate from the extension to these configs.

Signed-off-by: Scott Fleener <scott@buoyant.io>
@sfleen sfleen force-pushed the sfleen/proxy-tracing branch from 62c78bc to 812c616 Compare May 8, 2025 14:12
Comment on lines +291 to +293
# -- Protocol to export traces with. Currently supported are
# "opentelemetry" (default) and "opencensus" (deprecated)
protocol: opentelemetry
Copy link
Member
@olix0r olix0r May 12, 2025

Choose a reason for hiding this comment

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

Given that this is new configuration, why support the deprecated value here? I would omit the field from values.yaml for now and rely on defaulting in the template.

endpoint: ""
# -- The identity of the collector in the linkerd mesh. If the collector
# is unmeshed (recommended), this should remain unset.
meshIdentity: ""
Copy link
Member
@olix0r olix0r May 12, 2025

Choose a reason for hiding this comment

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

I think "identity" is ambiguous here. It's not actually an identity string. Is this the serviceAccountName?

Perhaps:

meshIdentity: 
  serviceAccountName: collector

# -- The collector endpoint to send traces to.
endpoint: ""
# -- The identity of the collector in the linkerd mesh. If the collector
# is unmeshed (recommended), this should remain unset.
Copy link
Member

Choose a reason for hiding this comment

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

I don't think we should recommend unmeshed configurations without clearly stipulating that this is not encrypted, etc...

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.

3 participants
0