-
Notifications
You must be signed in to change notification settings - Fork 348
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[jaeger-v2] Add support for Elasticsearch (#617)
* Jaeger allInOne allow different storage types (#603) Signed-off-by: Reddysekhar Gaduputi <[email protected]> upgrade jaeger-operator to latest 1.61.0 (#605) Signed-off-by: Blair Bowden <[email protected]> added all-in-one deployment and configmap for jaeger-v2 Signed-off-by: Mehul <[email protected]> lint fix Signed-off-by: Mehul <[email protected]> fixed Signed-off-by: Mehul <[email protected]> lint fix Signed-off-by: Mehul <[email protected]> lint fix Signed-off-by: Mehul <[email protected]> fixed using pre-hook Signed-off-by: Mehul <[email protected]> fixed --config flag is not been passed Signed-off-by: mehul <[email protected]> release ns for config-map.yaml Signed-off-by: mehul <[email protected]> testing ci Signed-off-by: mehul <[email protected]> testing ci Signed-off-by: mehul <[email protected]> fixed ns Signed-off-by: mehul <[email protected]> fixed ns Signed-off-by: mehul <[email protected]> fixed template Signed-off-by: mehul <[email protected]> removed sampling Signed-off-by: mehul <[email protected]> removed adaptive sampling from processors Signed-off-by: mehul <[email protected]> Revert "Jaeger v2 test2" Signed-off-by: mehul <[email protected]> attempt to create v2 chart in v1 Signed-off-by: mehul <[email protected]> enabled collector query and agent Signed-off-by: mehul <[email protected]> version bump Signed-off-by: mehul <[email protected]> testing-v2-ci Signed-off-by: mehul <[email protected]> testing-v2-ci Signed-off-by: mehul <[email protected]> added --helm-extra-set-args flag Signed-off-by: mehul <[email protected]> fixed healthcheck port-v2 Signed-off-by: mehul <[email protected]> Fix health check path Signed-off-by: Yuri Shkuro <[email protected]> minor changes Signed-off-by: mehul <[email protected]> * minor changes Signed-off-by: mehul <[email protected]> * added image changes Signed-off-by: mehul <[email protected]> * fix lint Signed-off-by: mehul <[email protected]> * removed v1 allInOne and added jaeger-v2 Signed-off-by: mehul <[email protected]> * removed v2 references Signed-off-by: mehul <[email protected]> * added allInOne again Signed-off-by: mehul <[email protected]> * minor fix Signed-off-by: mehul <[email protected]> * fixed how the config is being passed Signed-off-by: mehul <[email protected]> * fixed mirror template change Signed-off-by: mehul <[email protected]> * use --set-file for user config Signed-off-by: mehul <[email protected]> * removed config-test and updated configmap template Signed-off-by: mehul <[email protected]> * fixed Signed-off-by: mehul <[email protected]> * fixed minor naming Signed-off-by: mehul <[email protected]> * indentation Signed-off-by: Yuri Shkuro <[email protected]> * v2-elasticsearch Signed-off-by: mehul <[email protected]> * fix ci Signed-off-by: mehul <[email protected]> * fix ci Signed-off-by: mehul <[email protected]> * fixed Signed-off-by: mehul <[email protected]> * fixed and added docs Signed-off-by: mehul <[email protected]> * fixed Signed-off-by: mehul <[email protected]> * added port Signed-off-by: mehul <[email protected]> * fixed Signed-off-by: mehul <[email protected]> * fixed Signed-off-by: mehul <[email protected]> * fixed typo Signed-off-by: mehul <[email protected]> * fixed Signed-off-by: mehul <[email protected]> * removed test config Signed-off-by: mehul <[email protected]> * updated docs Signed-off-by: mehul <[email protected]> --------- Signed-off-by: mehul <[email protected]> Signed-off-by: mehul gautam <[email protected]> Signed-off-by: mehul <[email protected]> Signed-off-by: Yuri Shkuro <[email protected]> Co-authored-by: Reddysekhar Gaduputi <[email protected]> Co-authored-by: mehul <[email protected]> Co-authored-by: Yuri Shkuro <[email protected]>
- Loading branch information
1 parent
6b4a59c
commit e9655bc
Showing
12 changed files
with
267 additions
and
44 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,6 +4,8 @@ description: A Jaeger Helm chart for Kubernetes | |
name: jaeger | ||
type: application | ||
version: 4.0.0 | ||
annotations: | ||
Jaegerv1Version: "1.62.0" | ||
# CronJobs require v1.21 | ||
kubeVersion: ">= 1.21-0" | ||
keywords: | ||
|
@@ -16,8 +18,6 @@ icon: https://www.jaegertracing.io/img/jaeger-icon-reverse-color.svg | |
sources: | ||
- https://hub.docker.com/u/jaegertracing/ | ||
maintainers: | ||
- name: dvonthenen | ||
email: [email protected] | ||
- name: mehta-ankit | ||
email: [email protected] | ||
- name: mikelorant | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
|
||
--- | ||
|
||
# Jaeger Helm-chart Documentation | ||
|
||
## Overview | ||
This documentation provides step-by-step setup and configuration instructions for running Jaeger in various modes, with sections for both the `all-in-one` mode and the `Elasticsearch` configuration, followed by details on optional `--set` flags for custom configurations. | ||
|
||
--- | ||
|
||
### 1. Jaeger All-in-One Mode | ||
|
||
Jaeger’s all-in-one mode combines the Jaeger Agent, Collector, and Query into a single pod for simplicity. Use this mode for testing or lightweight deployments. | ||
|
||
#### **Command to Run All-in-One** | ||
|
||
```bash | ||
helm install <chart_name> charts/jaeger \ | ||
--set-file userconfig=path/to/configfile.yaml # Optional: user-specific config | ||
``` | ||
|
||
- **Flags Explained**: | ||
- `provisionDataStore.cassandra=false`: Disable Cassandra provision. | ||
- `storage.type=memory`: Use in-memory storage (non-persistent). | ||
- `allInOne.enabled=true`: Enable the all-in-one Jaeger setup. | ||
- `agent.enabled=false`, `collector.enabled=false`, `query.enabled=false`: Disable separate components since they’re embedded in all-in-one. | ||
- `userconfig`: Optional file for additional configuration. | ||
|
||
|
||
--- | ||
|
||
### 2. Elasticsearch Mode with Provisioned Data Store | ||
|
||
This mode configures Jaeger to store trace data in an Elasticsearch backend, suitable for production-level usage. | ||
|
||
#### **Command to Run with Elasticsearch** | ||
|
||
1. **Single Master Node Configuration** | ||
For a basic setup with only one Elasticsearch master node, use this command: | ||
|
||
```bash | ||
helm install <chart_name> charts/jaeger \ | ||
--set provisionDataStore.elasticsearch=true \ | ||
--set allInOne.enabled=false \ | ||
--set storage.type=elasticsearch \ | ||
--set elasticsearch.master.masterOnly=false \ | ||
--set elasticsearch.master.replicaCount=1 \ | ||
--set elasticsearch.data.replicaCount=0 \ | ||
--set elasticsearch.coordinating.replicaCount=0 \ | ||
--set elasticsearch.ingest.replicaCount=0 | ||
--set agent.enabled=true \ | ||
--set collector.enabled=true \ | ||
--set query.enabled=true | ||
--set-file userconfig=path/to/configfile.yaml # Optional: user-specific config | ||
``` | ||
|
||
2. **Default Configuration** | ||
For a more straightforward setup with default Elasticsearch configuration, use: | ||
|
||
```bash | ||
helm install <chart_name> charts/jaeger \ | ||
--set provisionDataStore.elasticsearch=true \ | ||
--set allInOne.enabled=false \ | ||
--set storage.type=elasticsearch \ | ||
--set agent.enabled=true \ | ||
--set collector.enabled=true \ | ||
--set query.enabled=true | ||
--set-file userconfig=path/to/configfile.yaml # Optional: user-specific config | ||
``` | ||
|
||
- **Flags Explained**: | ||
- `provisionDataStore.cassandra=false`: Disable Cassandra provision. | ||
- `provisionDataStore.elasticsearch=true`: Enable Elasticsearch as the storage. | ||
- `storage.type=elasticsearch`: Use Elasticsearch for storage. | ||
- **Single Master Node Settings** (optional for simplified configuration): | ||
- `elasticsearch.master.masterOnly=false` | ||
- `elasticsearch.master.replicaCount=1` | ||
- `elasticsearch.data.replicaCount=0` | ||
- `elasticsearch.coordinating.replicaCount=0` | ||
- `elasticsearch.ingest.replicaCount=0` | ||
- `userconfig`: Optional file for additional configuration. | ||
|
||
--- | ||
|
||
|
||
### 3. Additional `--set` Configuration Options | ||
|
||
For custom configurations, the following flags are commonly used. These cover primary Elasticsearch storage settings and additional archive configurations. | ||
|
||
#### **Primary Storage Settings** | ||
- `.Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.index_prefix`: Set the prefix for Elasticsearch indices. | ||
- `.Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.host`: Specify the Elasticsearch host. | ||
- `.Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.user`: Username for Elasticsearch authentication. | ||
- `.Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.password`: Password for Elasticsearch authentication. | ||
|
||
Here’s the updated documentation with the archive storage settings referenced and with similar flags specified for archive configurations. | ||
|
||
|
||
#### **Archive Storage Settings** | ||
- Similar flags for archive configurations can be used to manage archived trace data. | ||
|
||
The `values.yaml` file shows archive configurations under `jaeger_storage` with the `archive_store` section for Elasticsearch. You can configure these with the following flags: | ||
|
||
- `.Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.index_prefix` | ||
- `.Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.server_urls` | ||
- `.Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.username` | ||
- `.Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.password` | ||
|
||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
{{ if (and (not .Values.userconfig) .Values.provisionDataStore.elasticsearch) }} | ||
apiVersion: v1 | ||
kind: ConfigMap | ||
metadata: | ||
name: user-config | ||
namespace: {{ include "jaeger.namespace" . }} | ||
labels: | ||
{{- include "jaeger.labels" . | nindent 4 }} | ||
data: | ||
user-config.yaml: | | ||
service: | ||
extensions: [jaeger_storage, jaeger_query, healthcheckv2] | ||
pipelines: | ||
traces: | ||
receivers: [otlp] | ||
processors: [batch] | ||
exporters: [jaeger_storage_exporter] | ||
extensions: | ||
healthcheckv2: | ||
use_v2: true | ||
http: | ||
endpoint: 0.0.0.0:13133 | ||
jaeger_query: | ||
storage: | ||
traces: primary_store | ||
traces_archive: archive_store | ||
jaeger_storage: | ||
backends: | ||
primary_store: | ||
elasticsearch: | ||
index_prefix: {{- .Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.index_prefix | quote | indent 2 }} | ||
server_urls: ["{{ include "elasticsearch.client.url" . }}"] | ||
username: {{- .Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.username | quote | indent 2 }} | ||
{{- if .Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.password }} | ||
password: {{- .Values.config.extensions.jaeger_storage.backends.primary_store.elasticsearch.password | quote | indent 2 }} | ||
{{- end }} | ||
archive_store: | ||
elasticsearch: | ||
index_prefix: {{- .Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.index_prefix | quote | indent 2 }} | ||
server_urls: ["{{ include "elasticsearch.client.url" . }}"] | ||
username: {{- .Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.username | quote | indent 2 }} | ||
{{- if .Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.password }} | ||
password: {{- .Values.config.extensions.jaeger_storage.backends.archive_store.elasticsearch.password | quote | indent 2 }} | ||
{{- end }} | ||
receivers: | ||
otlp: | ||
protocols: | ||
grpc: | ||
endpoint:{{ .Values.config.receivers.otlp.protocols.grpc.endpoint | indent 1 }} | ||
http: | ||
endpoint:{{ .Values.config.receivers.otlp.protocols.http.endpoint | indent 1 }} | ||
processors: | ||
batch: | ||
exporters: | ||
jaeger_storage_exporter: | ||
trace_storage: primary_store | ||
{{- end }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.