...
1# linkerd-jaeger
2
3The Linkerd-Jaeger extension adds distributed tracing to Linkerd using
4OpenCensus and Jaeger.
5
6
7
8
9
10**Homepage:** <https://linkerd.io>
11
12## Quickstart and documentation
13
14You can run Linkerd on any Kubernetes cluster in a matter of seconds. See
15the [Linkerd Getting Started Guide][getting-started] for how.
16
17For more comprehensive documentation, start with the [Linkerd
18docs][linkerd-docs].
19
20## Prerequisite: Linkerd Core Control-Plane
21
22Before installing the Linkerd Jaeger extension, The core control-plane has to
23be installed first by following the [Linkerd Install
24Guide](https://linkerd.io/2/tasks/install/).
25
26## Adding Linkerd's Helm repository
27
28```bash
29# To add the repo for Linkerd edge releases:
30helm repo add linkerd https://helm.linkerd.io/edge
31```
32
33## Installing the Jaeger Extension Chart
34
35### Helm v3
36
37```bash
38helm install linkerd-jaeger -n linkerd-jaeger --create-namespace linkerd/linkerd-jaeger
39```
40
41## Get involved
42
43* Check out Linkerd's source code at [GitHub][linkerd2].
44* Join Linkerd's [user mailing list][linkerd-users], [developer mailing
45 list][linkerd-dev], and [announcements mailing list][linkerd-announce].
46* Follow [@linkerd][twitter] on Twitter.
47* Join the [Linkerd Slack][slack].
48
49[getting-started]: https://linkerd.io/2/getting-started/
50[linkerd2]: https://github.com/linkerd/linkerd2
51[linkerd-announce]: https://lists.cncf.io/g/cncf-linkerd-announce
52[linkerd-dev]: https://lists.cncf.io/g/cncf-linkerd-dev
53[linkerd-docs]: https://linkerd.io/2/overview/
54[linkerd-users]: https://lists.cncf.io/g/cncf-linkerd-users
55[slack]: http://slack.linkerd.io
56[twitter]: https://twitter.com/linkerd
57
58## Requirements
59
60Kubernetes: `>=1.22.0-0`
61
62| Repository | Name | Version |
63|------------|------|---------|
64| file://../../../charts/partials | partials | 0.1.0 |
65
66## Values
67
68| Key | Type | Default | Description |
69|-----|------|---------|-------------|
70| clusterDomain | string | `"cluster.local"` | Kubernetes DNS Domain name to use |
71| collector.GID | string | `nil` | GID for the collector resource |
72| collector.UID | string | `nil` | UID for the collector resource |
73| collector.command | string | `"/otelcol-contrib"` | |
74| collector.config | object | see `value.yaml` for actual configuration | OpenTelemetry Collector config, See the [Configuration docs](https://opentelemetry.io/docs/collector/configuration/) for more information |
75| collector.enabled | bool | `true` | Set to false to exclude collector installation |
76| collector.env | list | `[]` | Collector Deployment env |
77| collector.image.name | string | `"otel/opentelemetry-collector-contrib"` | |
78| collector.image.pullPolicy | string | `""` | |
79| collector.image.version | string | `"0.83.0"` | |
80| collector.nodeSelector | object | `{"kubernetes.io/os":"linux"}` | NodeSelector section, See the [K8S documentation](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector) for more information |
81| collector.replicas | int | `1` | Number of replicas of the collector component |
82| collector.resources.cpu.limit | string | `nil` | Maximum amount of CPU units that the collector container can use |
83| collector.resources.cpu.request | string | `nil` | Amount of CPU units that the collector container requests |
84| collector.resources.ephemeral-storage.limit | string | `""` | Maximum amount of ephemeral storage that the collector container can use |
85| collector.resources.ephemeral-storage.request | string | `""` | Amount of ephemeral storage that the collector container requests |
86| collector.resources.memory.limit | string | `nil` | Maximum amount of memory that collector container can use |
87| collector.resources.memory.request | string | `nil` | Amount of memory that the collector container requests |
88| collector.tolerations | string | `nil` | Tolerations section, See the [K8S documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for more information |
89| commonLabels | object | `{}` | Labels to apply to all resources |
90| createNamespaceMetadataJob | bool | `true` | Creates a Job that adds necessary metadata to the extension's namespace during install; disable if lack of privileges require doing this manually |
91| defaultGID | int | `2103` | Default GID for all the jaeger components |
92| defaultUID | int | `2103` | Default UID for all the jaeger components |
93| enablePSP | bool | `false` | Create Roles and RoleBindings to associate this extension's ServiceAccounts to the control plane PSP resource. This requires that `enabledPSP` is set to true on the control plane install. Note PSP has been deprecated since k8s v1.21 |
94| enablePodAntiAffinity | bool | `false` | Enables Pod Anti Affinity logic to balance the placement of replicas across hosts and zones for High Availability. Enable this only when you have multiple replicas of components. |
95| imagePullSecrets | list | `[]` | For Private docker registries, authentication is needed. Registry secrets are applied to the respective service accounts |
96| jaeger.GID | string | `nil` | GID for the jaeger resource |
97| jaeger.UID | string | `nil` | UID for the jaeger resource |
98| jaeger.args | list | `["--query.base-path=/jaeger"]` | CLI arguments for Jaeger, See [Jaeger AIO Memory CLI reference](https://www.jaegertracing.io/docs/1.24/cli/#jaeger-all-in-one-memory) |
99| jaeger.enabled | bool | `true` | Set to false to exclude all-in-one Jaeger installation |
100| jaeger.image.name | string | `"jaegertracing/all-in-one"` | |
101| jaeger.image.pullPolicy | string | `""` | |
102| jaeger.image.version | float | `1.31` | |
103| jaeger.nodeSelector | object | `{"kubernetes.io/os":"linux"}` | NodeSelector section, See the [K8S documentation](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector) for more information |
104| jaeger.resources.cpu.limit | string | `nil` | Maximum amount of CPU units that the jaeger container can use |
105| jaeger.resources.cpu.request | string | `nil` | Amount of CPU units that the jaeger container requests |
106| jaeger.resources.ephemeral-storage.limit | string | `""` | Maximum amount of ephemeral storage that the jaeger container can use |
107| jaeger.resources.ephemeral-storage.request | string | `""` | Amount of ephemeral storage that the jaeger container requests |
108| jaeger.resources.memory.limit | string | `nil` | Maximum amount of memory that jaeger container can use |
109| jaeger.resources.memory.request | string | `nil` | Amount of memory that the jaeger container requests |
110| jaeger.tolerations | string | `nil` | Tolerations section, See the [K8S documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for more information |
111| linkerdNamespace | string | `"linkerd"` | Namespace of the Linkerd core control-plane install |
112| linkerdVersion | string | `"linkerdVersionValue"` | |
113| namespaceMetadata.image.name | string | `"extension-init"` | Docker image name for the namespace-metadata instance |
114| namespaceMetadata.image.pullPolicy | string | imagePullPolicy | Pull policy for the namespace-metadata instance |
115| namespaceMetadata.image.registry | string | `"cr.l5d.io/linkerd"` | Docker registry for the namespace-metadata instance |
116| namespaceMetadata.image.tag | string | `"v0.1.0"` | Docker image tag for the namespace-metadata instance |
117| namespaceMetadata.nodeSelector | object | `{"kubernetes.io/os":"linux"}` | NodeSelector section, See the [K8S documentation](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector) for more information |
118| namespaceMetadata.tolerations | string | `nil` | Tolerations section, See the [K8S documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for more information |
119| nodeSelector | object | `{"kubernetes.io/os":"linux"}` | Default nodeSelector section, See the [K8S documentation](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector) for more information |
120| podLabels | object | `{}` | Additional labels to add to all pods |
121| revisionHistoryLimit | int | `10` | Specifies the number of old ReplicaSets to retain to allow rollback. |
122| tolerations | string | `nil` | Default tolerations section, See the [K8S documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for more information |
123| webhook.GID | string | `nil` | GID for the webhook resource |
124| webhook.UID | string | `nil` | UID for the webhook resource |
125| webhook.caBundle | string | `""` | Bundle of CA certificates for webhook. If not provided nor injected with cert-manager, then Helm will use the certificate generated for `webhook.crtPEM`. If `webhook.externalSecret` is set to true, this value, injectCaFrom, or injectCaFromSecret must be set, as no certificate will be generated. See the cert-manager [CA Injector Docs](https://cert-manager.io/docs/concepts/ca-injector) for more information. |
126| webhook.collectorSvcAccount | string | `"collector"` | service account associated with the collector instance |
127| webhook.collectorSvcAddr | string | `"collector.linkerd-jaeger:55678"` | collector service address for the proxies to send trace data. Points by default to the linkerd-jaeger collector |
128| webhook.crtPEM | string | `""` | Certificate for the webhook. If not provided and not using an external secret then Helm will generate one. |
129| webhook.externalSecret | bool | `false` | Do not create a secret resource for the webhook. If this is set to `true`, the value `webhook.caBundle` must be set or the ca bundle must injected with cert-manager ca injector using `webhook.injectCaFrom` or `webhook.injectCaFromSecret` (see below). |
130| webhook.failurePolicy | string | `"Ignore"` | |
131| webhook.image.name | string | `"cr.l5d.io/linkerd/jaeger-webhook"` | |
132| webhook.image.pullPolicy | string | `""` | |
133| webhook.image.version | string | `"linkerdVersionValue"` | |
134| webhook.injectCaFrom | string | `""` | Inject the CA bundle from a cert-manager Certificate. See the cert-manager [CA Injector Docs](https://cert-manager.io/docs/concepts/ca-injector/#injecting-ca-data-from-a-certificate-resource) for more information. |
135| webhook.injectCaFromSecret | string | `""` | Inject the CA bundle from a Secret. If set, the `cert-manager.io/inject-ca-from-secret` annotation will be added to the webhook. The Secret must have the CA Bundle stored in the `ca.crt` key and have the `cert-manager.io/allow-direct-injection` annotation set to `true`. See the cert-manager [CA Injector Docs](https://cert-manager.io/docs/concepts/ca-injector/#injecting-ca-data-from-a-secret-resource) for more information. |
136| webhook.keyPEM | string | `""` | Certificate key for the webhook. If not provided and not using an external secret then Helm will generate one. |
137| webhook.logLevel | string | `"info"` | |
138| webhook.namespaceSelector | object | `{"matchExpressions":[{"key":"kubernetes.io/metadata.name","operator":"NotIn","values":["kube-system"]}]}` | Namespace selector used by admission webhook. |
139| webhook.nodeSelector | object | `{"kubernetes.io/os":"linux"}` | NodeSelector section, See the [K8S documentation](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector) for more information |
140| webhook.objectSelector | string | `nil` | |
141| webhook.replicas | int | `1` | Number of replicas of the jaeger-injector component |
142| webhook.resources.cpu.limit | string | `nil` | Maximum amount of CPU units that the jaeger-injector container can use |
143| webhook.resources.cpu.request | string | `nil` | Amount of CPU units that the jaeger-injector container requests |
144| webhook.resources.memory.limit | string | `nil` | Maximum amount of memory that jaeger-injector container can use |
145| webhook.resources.memory.request | string | `nil` | Amount of memory that the jaeger-injector container requests |
146| webhook.tolerations | string | `nil` | Tolerations section, See the [K8S documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for more information |
147
148----------------------------------------------
149Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0)
View as plain text