From 028ef3f0817719853c1f647fff36c015ed7f5dba Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Wed, 7 Jun 2023 21:54:18 +0200
Subject: [PATCH 001/108] Add OTLP metrics docs
Signed-off-by: Pavol Loffay
---
.../distr-tracing-deploying-otel.adoc | 1 +
.../distr-tracing-config-otel-collector.adoc | 38 +++++++++++++++++-
...ig-otel-send-data-to-monitoring-stack.adoc | 39 +++++++++++++++++++
3 files changed, 77 insertions(+), 1 deletion(-)
create mode 100644 modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index e1e19f61dc1e..e5434ad6e5cb 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -9,3 +9,4 @@ toc::[]
The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
+include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
diff --git a/modules/distr-tracing-config-otel-collector.adoc b/modules/distr-tracing-config-otel-collector.adoc
index 3156c704d9e0..73b8e4d955fd 100644
--- a/modules/distr-tracing-config-otel-collector.adoc
+++ b/modules/distr-tracing-config-otel-collector.adoc
@@ -29,6 +29,10 @@ metadata:
namespace: tracing-system
spec:
mode: deployment
+ ports:
+ - name: promexporter
+ port: 8889
+ protocol: TCP
config: |
receivers:
otlp:
@@ -41,12 +45,20 @@ spec:
endpoint: jaeger-production-collector-headless.tracing-system.svc:14250
tls:
ca_file: "/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt"
+ prometheus:
+ endpoint: 0.0.0.0:8889
+ resource_to_telemetry_conversion:
+ enabled: true # by default resource attributes are dropped
service:
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [jaeger]
+ metrics:
+ receivers: [otlp]
+ processors: []
+ exporters: [prometheus]
----
[NOTE]
@@ -77,7 +89,7 @@ If a component is configured, but not defined within the `service` section then
|exporters:
|An exporter sends data to one or more backends/destinations. By default, no exporters are configured. There must be at least one enabled exporter for a configuration to be considered valid. Exporters are enabled by being added to a pipeline. Exporters may come with default settings, but many require configuration to specify at least the destination and security settings.
-|`logging`, `jaeger`
+|`logging`, `jaeger`, `prometheus`,
|None
|exporters:
@@ -125,4 +137,28 @@ If a component is configured, but not defined within the `service` section then
|You enable exporters for tracing by adding them under `service.pipelines.traces`.
|
|None
+
+|service:
+ pipelines:
+ metrics:
+ receivers:
+|You enable receivers for metrics by adding them under `service.pipelines.metrics`.
+|
+|None
+
+|service:
+ pipelines:
+ metrics:
+ processors:
+|You enable processors for metircs by adding them under `service.pipelines.metrics`.
+|
+|None
+
+|service:
+ pipelines:
+ metrics:
+ exporters:
+|You enable exporters for metrics by adding them under `service.pipelines.metrics`.
+|
+|None
|===
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
new file mode 100644
index 000000000000..4c8c914eb0b2
--- /dev/null
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -0,0 +1,39 @@
+////
+This module included in the following assemblies:
+-distr_tracing_install/distributed-tracing-deploying-otel.adoc
+////
+:_content-type: REFERENCE
+[id="distr-tracing-config-otel-collector_monitoring_{context}"]
+= Sending metrics to the monitoring stack
+
+The metrics from the {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
+xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+configure monitoring stack.
+
+.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector Prometheus exporter, internal metrics endpoint and removes duplicated labels.
+[source,yaml]
+----
+apiVersion: monitoring.coreos.com/v1
+kind: PodMonitor
+metadata:
+ name: otel-collector
+spec:
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: otel-collector
+ podMetricsEndpoints:
+ - port: metrics
+ - port: promexporter
+ relabelings:
+ - action: labeldrop
+ regex: pod
+ - action: labeldrop
+ regex: container
+ - action: labeldrop
+ regex: endpoint
+ metricRelabelings:
+ - action: labeldrop
+ regex: instance
+ - action: labeldrop
+ regex: job
+----
From f0bc89901d8f86a1e5acac80475d4ac2475bac90 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 11:55:13 +0200
Subject: [PATCH 002/108] Review fixes
Signed-off-by: Pavol Loffay
---
...tracing-config-otel-send-data-to-monitoring-stack.adoc | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
index 4c8c914eb0b2..a7e18bad92dc 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -6,7 +6,7 @@ This module included in the following assemblies:
[id="distr-tracing-config-otel-collector_monitoring_{context}"]
= Sending metrics to the monitoring stack
-The metrics from the {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
+The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
configure monitoring stack.
@@ -22,8 +22,8 @@ spec:
matchLabels:
app.kubernetes.io/name: otel-collector
podMetricsEndpoints:
- - port: metrics
- - port: promexporter
+ - port: metrics <1>
+ - port: promexporter <2>
relabelings:
- action: labeldrop
regex: pod
@@ -37,3 +37,5 @@ spec:
- action: labeldrop
regex: job
----
+<1> Collector's internal metrics port
+<2> Collector's Prometheus exporter port
From 3a08adc52a20c8c9c50841af0b5dd84d2a9fe0d8 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 11:57:17 +0200
Subject: [PATCH 003/108] Fixes callouts
Signed-off-by: Pavol Loffay
---
...distr-tracing-config-otel-send-data-to-monitoring-stack.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
index a7e18bad92dc..63c0155f5aea 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -10,7 +10,7 @@ The metrics from {OTELName} can be consumed by the in-cluster monitoring stack.
xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
configure monitoring stack.
-.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector Prometheus exporter, internal metrics endpoint and removes duplicated labels.
+.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector and removes duplicated labels.
[source,yaml]
----
apiVersion: monitoring.coreos.com/v1
From 96fde1af1973d79f7c1c3c16e36f3eaacd6b7391 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 12:09:24 +0200
Subject: [PATCH 004/108] Fixes link in modules
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 5 +++++
...tr-tracing-config-otel-send-data-to-monitoring-stack.adoc | 4 ----
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index e5434ad6e5cb..f53f07059bc2 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -9,4 +9,9 @@ toc::[]
The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
+
+The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
+xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+configure monitoring stack.
+
include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
index 63c0155f5aea..66bdfb867a72 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -6,10 +6,6 @@ This module included in the following assemblies:
[id="distr-tracing-config-otel-collector_monitoring_{context}"]
= Sending metrics to the monitoring stack
-The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
-xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
-configure monitoring stack.
-
.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector and removes duplicated labels.
[source,yaml]
----
From 0e3497cb92fdfd5c8875e2b1860910188b5a846a Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 12:42:29 +0200
Subject: [PATCH 005/108] Fixes link in modules
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index f53f07059bc2..59447e6df6fe 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -10,8 +10,6 @@ The {OTELName} Operator uses a custom resource definition (CRD) file that define
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
-The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
-xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
-configure monitoring stack.
-
include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
+Refer to xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+configure monitoring stack.
From eecef454c2a6bea81d2c6affa6ebe54095379031 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 29 Jun 2023 12:14:56 +0200
Subject: [PATCH 006/108] Fix review comments
Signed-off-by: Pavol Loffay
---
.../distr-tracing-deploying-otel.adoc | 6 +++++-
...ng-config-otel-send-metrics-monitoring-stack.adoc} | 11 +++++++----
2 files changed, 12 insertions(+), 5 deletions(-)
rename modules/{distr-tracing-config-otel-send-data-to-monitoring-stack.adoc => distr-tracing-config-otel-send-metrics-monitoring-stack.adoc} (54%)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index 59447e6df6fe..e24a026f92d0 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -11,5 +11,9 @@ The {OTELName} Operator uses a custom resource definition (CRD) file that define
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
-Refer to xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+
+[role="_additional-resources"]
+[id="additional-resources_deploy-otel"]
+== Additional resources
+* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
configure monitoring stack.
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
similarity index 54%
rename from modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
rename to modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
index 66bdfb867a72..8291c940c91e 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
@@ -3,10 +3,13 @@ This module included in the following assemblies:
-distr_tracing_install/distributed-tracing-deploying-otel.adoc
////
:_content-type: REFERENCE
-[id="distr-tracing-config-otel-collector_monitoring_{context}"]
+[id="distr-tracing-send-metrics-monitoring-stack_{context}"]
= Sending metrics to the monitoring stack
-.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector and removes duplicated labels.
+The following example shows how to configure the monitoring stack to scrape OpenTelemetry collector metrics endpoints and removes
+duplicated labels added by the monitoring stack during scraping.
+
+.Sample `+PodMonitor+` that configures the monitoring stack to scrape collector metrics.
[source,yaml]
----
apiVersion: monitoring.coreos.com/v1
@@ -33,5 +36,5 @@ spec:
- action: labeldrop
regex: job
----
-<1> Collector's internal metrics port
-<2> Collector's Prometheus exporter port
+<1> The OpenTelemetry collector internal metrics port name. The port name is always `+metrics+`.
+<2> The OpenTelemetry collector Prometheus exporter port name. The port name is defined in the `+.spec.ports+` section of the OpenTelemetry collector CR.
From 731abc5ffb08453184e0fee79d0ed84c36274342 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 29 Jun 2023 13:51:25 +0200
Subject: [PATCH 007/108] Fix review comments
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index e24a026f92d0..65a1d4b3ed2e 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -10,7 +10,7 @@ The {OTELName} Operator uses a custom resource definition (CRD) file that define
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
-include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
+include::modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc[leveloffset=+1]
[role="_additional-resources"]
[id="additional-resources_deploy-otel"]
From 23f41ff603a5e93c87463dc6d2340bca408507bd Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 29 Jun 2023 14:03:43 +0200
Subject: [PATCH 008/108] Fix review comments
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index 65a1d4b3ed2e..7aa8396c8e22 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -15,5 +15,4 @@ include::modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc[le
[role="_additional-resources"]
[id="additional-resources_deploy-otel"]
== Additional resources
-* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
-configure monitoring stack.
+* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[Enable monitoring stack for user defined projects.]
From 6116840a7d04becd26733a0605ecd1bfe00e41b7 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 14:01:11 +0200
Subject: [PATCH 009/108] Restructure distributed tracing
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 7 ++
.../distr_tracing_jaeger/_attributes | 1 +
.../distr-tracing-jaeger-configuring.adoc | 94 +++++++++++++++++++
.../distr-tracing-jaeger-installing.adoc | 7 ++
distr_tracing/distr_tracing_jaeger/modules | 1 +
5 files changed, 110 insertions(+)
create mode 120000 distr_tracing/distr_tracing_jaeger/_attributes
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
create mode 120000 distr_tracing/distr_tracing_jaeger/modules
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 68c959559fd3..3c5fa676511a 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3589,6 +3589,13 @@ Topics:
File: distr-tracing-updating
- Name: Removing distributed tracing
File: distr-tracing-removing
+- Name: Distributed tracing platform - Jaeger
+ Dir: distr_tracing_jaeger
+ Topics:
+ - Name: Installing
+ File: distr-tracing-jaeger-installing
+ - Name: Configuring
+ File: distr-tracing-jaeger-configuring
---
Name: Virtualization
Dir: virt
diff --git a/distr_tracing/distr_tracing_jaeger/_attributes b/distr_tracing/distr_tracing_jaeger/_attributes
new file mode 120000
index 000000000000..20cc1dcb77bf
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/_attributes
@@ -0,0 +1 @@
+../../_attributes/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
new file mode 100644
index 000000000000..bab8b79d7464
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
@@ -0,0 +1,94 @@
+:_content-type: ASSEMBLY
+[id="distr-tracing-jaeger-configuring"]
+= Configuring and deploying distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: deploying-distr-tracing-platform
+
+toc::[]
+
+The {JaegerName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {JaegerShortName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
+
+{JaegerName} has predefined deployment strategies. You specify a deployment strategy in the custom resource file. When you create a {JaegerShortName} instance the Operator uses this configuration file to create the objects necessary for the deployment.
+
+.Jaeger custom resource file showing deployment strategy
+[source,yaml]
+----
+apiVersion: jaegertracing.io/v1
+kind: Jaeger
+metadata:
+ name: MyConfigFile
+spec:
+ strategy: production <1>
+----
+
+<1> The {JaegerName} Operator currently supports the following deployment strategies:
+
+* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
++
+[NOTE]
+====
+In-memory storage is not persistent, which means that if the {JaegerShortName} instance shuts down, restarts, or is replaced, that your trace data will be lost. And in-memory storage cannot be scaled, since each pod has its own memory. For persistent storage, you must use the `production` or `streaming` strategies, which use Elasticsearch as the default storage.
+====
+
+* *production* - The production strategy is intended for production environments, where long term storage of trace data is important, as well as a more scalable and highly available architecture is required. Each of the backend components is therefore deployed separately. The Agent can be injected as a sidecar on the instrumented application. The Query and Collector services are configured with a supported storage type - currently Elasticsearch. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
+
+* *streaming* - The streaming strategy is designed to augment the production strategy by providing a streaming capability that effectively sits between the Collector and the Elasticsearch backend storage. This provides the benefit of reducing the pressure on the backend storage, under high load situations, and enables other trace post-processing capabilities to tap into the real time span data directly from the streaming platform (https://access.redhat.com/documentation/en-us/red_hat_amq/7.6/html/using_amq_streams_on_openshift/index[AMQ Streams]/ https://kafka.apache.org/documentation/[Kafka]).
++
+[NOTE]
+====
+The streaming strategy requires an additional Red Hat subscription for AMQ Streams.
+====
+
+[NOTE]
+====
+The streaming deployment strategy is currently unsupported on {ibmzProductName}.
+====
+
+[NOTE]
+====
+There are two ways to install and use {DTProductName}, as part of a service mesh or as a stand alone component. If you have installed {DTShortName} as part of {SMProductName}, you can perform basic configuration as part of the xref:../../service_mesh/v2x/installing-ossm.adoc#installing-ossm[ServiceMeshControlPlane] but for completely control you should configure a Jaeger CR and then xref:../../service_mesh/v2x/ossm-observability.html#ossm-config-external-jaeger_observability[reference your distributed tracing configuration file in the ServiceMeshControlPlane].
+
+====
+
+include::modules/distr-tracing-deploy-default.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-deploy-production-es.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-deploy-streaming.adoc[leveloffset=+1]
+
+[id="validating-your-jaeger-deployment"]
+== Validating your deployment
+
+include::modules/distr-tracing-accessing-jaeger-console.adoc[leveloffset=+2]
+
+[id="customizing-your-deployment"]
+== Customizing your deployment
+
+include::modules/distr-tracing-deployment-best-practices.adoc[leveloffset=+2]
+
+ifdef::openshift-enterprise,openshift-dedicated[]
+For information about configuring persistent storage, see xref:../../storage/understanding-persistent-storage.adoc[Understanding persistent storage] and the appropriate configuration topic for your chosen storage option.
+endif::[]
+
+include::modules/distr-tracing-config-default.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-jaeger-collector.adoc[leveloffset=+2]
+
+//include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-query.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-ingester.adoc[leveloffset=+2]
+
+[id="injecting-sidecars"]
+== Injecting sidecars
+
+{JaegerName} relies on a proxy sidecar within the application's pod to provide the agent. The {JaegerName} Operator can inject Agent sidecars into Deployment workloads. You can enable automatic sidecar injection or manage it manually.
+
+include::modules/distr-tracing-sidecar-automatic.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-sidecar-manual.adoc[leveloffset=+2]
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
new file mode 100644
index 000000000000..2ea021040649
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
@@ -0,0 +1,7 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-jaeger-installing"]
+= Installing distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: install-distributed-tracing
+
+toc::[]
diff --git a/distr_tracing/distr_tracing_jaeger/modules b/distr_tracing/distr_tracing_jaeger/modules
new file mode 120000
index 000000000000..43aab75b53c9
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/modules
@@ -0,0 +1 @@
+../modules/
\ No newline at end of file
From eb557d66f1aae4dae3f8826ed67d4de0f7d00f2d Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 14:45:35 +0200
Subject: [PATCH 010/108] fix
Signed-off-by: Pavol Loffay
---
distr_tracing/distr_tracing_jaeger/images | 1 +
distr_tracing/distr_tracing_jaeger/snippets | 1 +
2 files changed, 2 insertions(+)
create mode 120000 distr_tracing/distr_tracing_jaeger/images
create mode 120000 distr_tracing/distr_tracing_jaeger/snippets
diff --git a/distr_tracing/distr_tracing_jaeger/images b/distr_tracing/distr_tracing_jaeger/images
new file mode 120000
index 000000000000..e4c5bd02a10a
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/images
@@ -0,0 +1 @@
+../images/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_jaeger/snippets b/distr_tracing/distr_tracing_jaeger/snippets
new file mode 120000
index 000000000000..5a3f5add140e
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/snippets
@@ -0,0 +1 @@
+../../snippets/
\ No newline at end of file
From 5c8caa4dffdd0a8b3cc7806f0f6ec44241b47826 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:06:26 +0200
Subject: [PATCH 011/108] fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 2 -
.../distr-tracing-deploying-jaeger.adoc | 94 -------------------
2 files changed, 96 deletions(-)
delete mode 100644 distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 3c5fa676511a..b13d8660a932 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3581,8 +3581,6 @@ Topics:
Topics:
- Name: Installing distributed tracing
File: distr-tracing-installing
- - Name: Configuring the distributed tracing platform
- File: distr-tracing-deploying-jaeger
- Name: Configuring distributed tracing data collection
File: distr-tracing-deploying-otel
- Name: Upgrading distributed tracing
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
deleted file mode 100644
index dd2a9dfb445f..000000000000
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+++ /dev/null
@@ -1,94 +0,0 @@
-:_content-type: ASSEMBLY
-[id="distr-tracing-deploying"]
-= Configuring and deploying distributed tracing
-include::_attributes/common-attributes.adoc[]
-:context: deploying-distr-tracing-platform
-
-toc::[]
-
-The {JaegerName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {JaegerShortName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
-
-{JaegerName} has predefined deployment strategies. You specify a deployment strategy in the custom resource file. When you create a {JaegerShortName} instance the Operator uses this configuration file to create the objects necessary for the deployment.
-
-.Jaeger custom resource file showing deployment strategy
-[source,yaml]
-----
-apiVersion: jaegertracing.io/v1
-kind: Jaeger
-metadata:
- name: MyConfigFile
-spec:
- strategy: production <1>
-----
-
-<1> The {JaegerName} Operator currently supports the following deployment strategies:
-
-* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
-+
-[NOTE]
-====
-In-memory storage is not persistent, which means that if the {JaegerShortName} instance shuts down, restarts, or is replaced, that your trace data will be lost. And in-memory storage cannot be scaled, since each pod has its own memory. For persistent storage, you must use the `production` or `streaming` strategies, which use Elasticsearch as the default storage.
-====
-
-* *production* - The production strategy is intended for production environments, where long term storage of trace data is important, as well as a more scalable and highly available architecture is required. Each of the backend components is therefore deployed separately. The Agent can be injected as a sidecar on the instrumented application. The Query and Collector services are configured with a supported storage type - currently Elasticsearch. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
-
-* *streaming* - The streaming strategy is designed to augment the production strategy by providing a streaming capability that effectively sits between the Collector and the Elasticsearch backend storage. This provides the benefit of reducing the pressure on the backend storage, under high load situations, and enables other trace post-processing capabilities to tap into the real time span data directly from the streaming platform (https://access.redhat.com/documentation/en-us/red_hat_amq/7.6/html/using_amq_streams_on_openshift/index[AMQ Streams]/ https://kafka.apache.org/documentation/[Kafka]).
-+
-[NOTE]
-====
-The streaming strategy requires an additional Red Hat subscription for AMQ Streams.
-====
-
-[NOTE]
-====
-The streaming deployment strategy is currently unsupported on {ibmzProductName}.
-====
-
-[NOTE]
-====
-There are two ways to install and use {DTProductName}, as part of a service mesh or as a stand alone component. If you have installed {DTShortName} as part of {SMProductName}, you can perform basic configuration as part of the xref:../../service_mesh/v2x/installing-ossm.adoc#installing-ossm[ServiceMeshControlPlane] but for completely control you should configure a Jaeger CR and then xref:../../service_mesh/v2x/ossm-observability.html#ossm-config-external-jaeger_observability[reference your distributed tracing configuration file in the ServiceMeshControlPlane].
-
-====
-
-include::modules/distr-tracing-deploy-default.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-deploy-production-es.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-deploy-streaming.adoc[leveloffset=+1]
-
-[id="validating-your-jaeger-deployment"]
-== Validating your deployment
-
-include::modules/distr-tracing-accessing-jaeger-console.adoc[leveloffset=+2]
-
-[id="customizing-your-deployment"]
-== Customizing your deployment
-
-include::modules/distr-tracing-deployment-best-practices.adoc[leveloffset=+2]
-
-ifdef::openshift-enterprise,openshift-dedicated[]
-For information about configuring persistent storage, see xref:../../storage/understanding-persistent-storage.adoc[Understanding persistent storage] and the appropriate configuration topic for your chosen storage option.
-endif::[]
-
-include::modules/distr-tracing-config-default.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-jaeger-collector.adoc[leveloffset=+2]
-
-//include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-query.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-ingester.adoc[leveloffset=+2]
-
-[id="injecting-sidecars"]
-== Injecting sidecars
-
-{JaegerName} relies on a proxy sidecar within the application's pod to provide the agent. The {JaegerName} Operator can inject Agent sidecars into Deployment workloads. You can enable automatic sidecar injection or manage it manually.
-
-include::modules/distr-tracing-sidecar-automatic.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-sidecar-manual.adoc[leveloffset=+2]
From ead2f844c9766895e8c47c828c5e148e79cf00da Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:19:38 +0200
Subject: [PATCH 012/108] fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-accessing-jaeger-console.adoc | 2 +-
modules/distr-tracing-config-default.adoc | 2 +-
modules/distr-tracing-config-ingester.adoc | 2 +-
modules/distr-tracing-config-jaeger-collector.adoc | 2 +-
modules/distr-tracing-config-query.adoc | 2 +-
modules/distr-tracing-config-sampling.adoc | 2 +-
modules/distr-tracing-config-storage.adoc | 2 +-
modules/distr-tracing-deploy-default.adoc | 2 +-
modules/distr-tracing-deploy-production-es.adoc | 2 +-
modules/distr-tracing-deploy-streaming.adoc | 2 +-
modules/distr-tracing-deployment-best-practices.adoc | 2 +-
modules/distr-tracing-sidecar-automatic.adoc | 2 +-
modules/distr-tracing-sidecar-manual.adoc | 2 +-
13 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/modules/distr-tracing-accessing-jaeger-console.adoc b/modules/distr-tracing-accessing-jaeger-console.adoc
index 69ada6de56b7..8b3568427a7f 100644
--- a/modules/distr-tracing-accessing-jaeger-console.adoc
+++ b/modules/distr-tracing-accessing-jaeger-console.adoc
@@ -1,7 +1,7 @@
////
Module included in the following assemblies:
-* distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
* distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+* distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
[id="distr-tracing-accessing-jaeger-console_{context}"]
diff --git a/modules/distr-tracing-config-default.adoc b/modules/distr-tracing-config-default.adoc
index 3c4488dd88a2..15d3778b8b89 100644
--- a/modules/distr-tracing-config-default.adoc
+++ b/modules/distr-tracing-config-default.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-default_{context}"]
diff --git a/modules/distr-tracing-config-ingester.adoc b/modules/distr-tracing-config-ingester.adoc
index a6b4930dbbb8..d48b3c12d99a 100644
--- a/modules/distr-tracing-config-ingester.adoc
+++ b/modules/distr-tracing-config-ingester.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-ingester_{context}"]
diff --git a/modules/distr-tracing-config-jaeger-collector.adoc b/modules/distr-tracing-config-jaeger-collector.adoc
index 6a32b00d4b15..b6d631d7b8c1 100644
--- a/modules/distr-tracing-config-jaeger-collector.adoc
+++ b/modules/distr-tracing-config-jaeger-collector.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-jaeger-collector_{context}"]
diff --git a/modules/distr-tracing-config-query.adoc b/modules/distr-tracing-config-query.adoc
index 1aa8ba06d64e..8a45af248b0a 100644
--- a/modules/distr-tracing-config-query.adoc
+++ b/modules/distr-tracing-config-query.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-query_{context}"]
diff --git a/modules/distr-tracing-config-sampling.adoc b/modules/distr-tracing-config-sampling.adoc
index 9e743c4072d9..6d8fc643ed57 100644
--- a/modules/distr-tracing-config-sampling.adoc
+++ b/modules/distr-tracing-config-sampling.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-sampling_{context}"]
diff --git a/modules/distr-tracing-config-storage.adoc b/modules/distr-tracing-config-storage.adoc
index 8947448d3432..51efcb69e47b 100644
--- a/modules/distr-tracing-config-storage.adoc
+++ b/modules/distr-tracing-config-storage.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-storage_{context}"]
diff --git a/modules/distr-tracing-deploy-default.adoc b/modules/distr-tracing-deploy-default.adoc
index 627adb8bc6f7..091c9dfd689a 100644
--- a/modules/distr-tracing-deploy-default.adoc
+++ b/modules/distr-tracing-deploy-default.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-deploy-production-es.adoc b/modules/distr-tracing-deploy-production-es.adoc
index 7420097adead..a211689abcfa 100644
--- a/modules/distr-tracing-deploy-production-es.adoc
+++ b/modules/distr-tracing-deploy-production-es.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-deploy-streaming.adoc b/modules/distr-tracing-deploy-streaming.adoc
index 473e522f7d12..e343a784b88d 100644
--- a/modules/distr-tracing-deploy-streaming.adoc
+++ b/modules/distr-tracing-deploy-streaming.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-deployment-best-practices.adoc b/modules/distr-tracing-deployment-best-practices.adoc
index 8e6098bc6140..753d04cf7bba 100644
--- a/modules/distr-tracing-deployment-best-practices.adoc
+++ b/modules/distr-tracing-deployment-best-practices.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: CONCEPT
[id="distr-tracing-deployment-best-practices_{context}"]
diff --git a/modules/distr-tracing-sidecar-automatic.adoc b/modules/distr-tracing-sidecar-automatic.adoc
index 9c425dc12c7a..67713554a81e 100644
--- a/modules/distr-tracing-sidecar-automatic.adoc
+++ b/modules/distr-tracing-sidecar-automatic.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="dist-tracing-sidecar-automatic_{context}"]
diff --git a/modules/distr-tracing-sidecar-manual.adoc b/modules/distr-tracing-sidecar-manual.adoc
index 1f914ed319cb..be79e87505dc 100644
--- a/modules/distr-tracing-sidecar-manual.adoc
+++ b/modules/distr-tracing-sidecar-manual.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-sidecar-manual_{context}"]
From 9b61377025a61cd497893a0b06d59d9f394f6494 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:31:57 +0200
Subject: [PATCH 013/108] fix
Signed-off-by: Pavol Loffay
---
service_mesh/v2x/ossm-observability.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/service_mesh/v2x/ossm-observability.adoc b/service_mesh/v2x/ossm-observability.adoc
index 785e4dcd9f1f..438b425d9580 100644
--- a/service_mesh/v2x/ossm-observability.adoc
+++ b/service_mesh/v2x/ossm-observability.adoc
@@ -27,7 +27,7 @@ include::modules/ossm-config-sampling.adoc[leveloffset=+2]
include::modules/ossm-jaeger-accessing-console.adoc[leveloffset=+1]
ifdef::openshift-enterprise[]
-For more information about configuring Jaeger, see the xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#distr-tracing-deploy-default_deploying-distributed-tracing-platform[distributed tracing documentation].
+For more information about configuring Jaeger, see the xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc#distr-tracing-deploy-default_deploying-distributed-tracing-platform[distributed tracing documentation].
endif::[]
include::modules/ossm-access-grafana.adoc[leveloffset=+1]
From 35ff70d6d9cc25081519adc814157c2e6d38211e Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:45:32 +0200
Subject: [PATCH 014/108] fix
Signed-off-by: Pavol Loffay
---
modules/ossm-config-sampling.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/ossm-config-sampling.adoc b/modules/ossm-config-sampling.adoc
index 1b4dbb7bced8..2eae3b01796a 100644
--- a/modules/ossm-config-sampling.adoc
+++ b/modules/ossm-config-sampling.adoc
@@ -23,7 +23,7 @@ The Envoy proxy sampling rate applies for applications that are available to a S
The Jaeger remote sampling rate applies to applications that are external to the Service Mesh, and do not use the Envoy proxy, such as a database. This sampling rate determines how much data the distributed tracing system collects and stores.
ifdef::openshift-enterprise[]
-For more information, see xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#distr-tracing-config-sampling_deploying-distributed-tracing-platform[Distributed tracing configuration options].
+For more information, see xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc#distr-tracing-config-sampling_deploying-distributed-tracing-platform[Distributed tracing configuration options].
endif::[]
====
From bacb25b139f3137890b7e7b3b245b0e7d710fd68 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 16:00:52 +0200
Subject: [PATCH 015/108] fix
Signed-off-by: Pavol Loffay
---
service_mesh/v2x/ossm-reference-jaeger.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/service_mesh/v2x/ossm-reference-jaeger.adoc b/service_mesh/v2x/ossm-reference-jaeger.adoc
index d49aefa046d7..0544d4d4d20b 100644
--- a/service_mesh/v2x/ossm-reference-jaeger.adoc
+++ b/service_mesh/v2x/ossm-reference-jaeger.adoc
@@ -37,7 +37,7 @@ include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
ifdef::openshift-enterprise,openshift-dedicated[]
-For more information about configuring Elasticsearch with {product-title}, see xref:../../logging/config/cluster-logging-log-store.adoc[Configuring the log store] or xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc[Configuring and deploying distributed tracing].
+For more information about configuring Elasticsearch with {product-title}, see xref:../../logging/config/cluster-logging-log-store.adoc[Configuring the log store] or xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc[Configuring and deploying distributed tracing].
//TO DO For information about connecting to an external Elasticsearch instance, see xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#jaeger-config-external-es_jaeger-deploying[Connecting to an existing Elasticsearch instance].
endif::[]
From e417db7a82f9d8cb4ad973db240d19401630acbf Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 16:25:22 +0200
Subject: [PATCH 016/108] fix
Signed-off-by: Pavol Loffay
---
service_mesh/v2x/ossm-reference-jaeger.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/service_mesh/v2x/ossm-reference-jaeger.adoc b/service_mesh/v2x/ossm-reference-jaeger.adoc
index 0544d4d4d20b..829579e0132c 100644
--- a/service_mesh/v2x/ossm-reference-jaeger.adoc
+++ b/service_mesh/v2x/ossm-reference-jaeger.adoc
@@ -39,7 +39,7 @@ include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
ifdef::openshift-enterprise,openshift-dedicated[]
For more information about configuring Elasticsearch with {product-title}, see xref:../../logging/config/cluster-logging-log-store.adoc[Configuring the log store] or xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc[Configuring and deploying distributed tracing].
-//TO DO For information about connecting to an external Elasticsearch instance, see xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#jaeger-config-external-es_jaeger-deploying[Connecting to an existing Elasticsearch instance].
+//TO DO For information about connecting to an external Elasticsearch instance, see xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc#jaeger-config-external-es_jaeger-deploying[Connecting to an existing Elasticsearch instance].
endif::[]
include::modules/distr-tracing-config-query.adoc[leveloffset=+2]
From 3b385220ae49bd48e516b44948b110c279f801a8 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 17:27:18 +0200
Subject: [PATCH 017/108] fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 15 ++++++----
.../distr-tracing-jaeger-installing.adoc | 29 +++++++++++++++++++
distr_tracing/distr_tracing_otel/_attributes | 1 +
.../distr-tracing-otel-configuring.adoc} | 8 ++---
.../distr-tracing-otel-installing.adoc} | 17 ++---------
distr_tracing/distr_tracing_otel/images | 1 +
distr_tracing/distr_tracing_otel/modules | 1 +
distr_tracing/distr_tracing_otel/snippets | 1 +
.../distr-tracing-config-otel-collector.adoc | 2 +-
.../distr-tracing-install-elasticsearch.adoc | 2 +-
...distr-tracing-install-jaeger-operator.adoc | 2 +-
.../distr-tracing-install-otel-operator.adoc | 2 +-
modules/distr-tracing-install-overview.adoc | 2 +-
13 files changed, 54 insertions(+), 29 deletions(-)
create mode 120000 distr_tracing/distr_tracing_otel/_attributes
rename distr_tracing/{distr_tracing_install/distr-tracing-deploying-otel.adoc => distr_tracing_otel/distr-tracing-otel-configuring.adoc} (67%)
rename distr_tracing/{distr_tracing_install/distr-tracing-installing.adoc => distr_tracing_otel/distr-tracing-otel-installing.adoc} (82%)
create mode 120000 distr_tracing/distr_tracing_otel/images
create mode 120000 distr_tracing/distr_tracing_otel/modules
create mode 120000 distr_tracing/distr_tracing_otel/snippets
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index b13d8660a932..1498ba110a50 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3579,10 +3579,6 @@ Topics:
- Name: Distributed tracing installation
Dir: distr_tracing_install
Topics:
- - Name: Installing distributed tracing
- File: distr-tracing-installing
- - Name: Configuring distributed tracing data collection
- File: distr-tracing-deploying-otel
- Name: Upgrading distributed tracing
File: distr-tracing-updating
- Name: Removing distributed tracing
@@ -3590,10 +3586,17 @@ Topics:
- Name: Distributed tracing platform - Jaeger
Dir: distr_tracing_jaeger
Topics:
- - Name: Installing
+ - Name: Installing Jaeger
File: distr-tracing-jaeger-installing
- - Name: Configuring
+ - Name: Configuring Jaeger
File: distr-tracing-jaeger-configuring
+- Name: Distributed tracing data collection - OpenTelemetry
+ Dir: distr_tracing_otel
+ Topics:
+ - Name: Installing OpenTelemetry
+ File: distr-tracing-otel-installing
+ - Name: Configuring OpenTelemetry
+ File: distr-tracing-otel-configuring
---
Name: Virtualization
Dir: virt
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
index 2ea021040649..dde599c90e22 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
@@ -5,3 +5,32 @@ include::_attributes/common-attributes.adoc[]
:context: install-distributed-tracing
toc::[]
+
+You can install {DTProductName} on {product-title} in either of two ways:
+
+* You can install {DTProductName} as part of {SMProductName}. Distributed tracing is included by default in the Service Mesh installation. To install {DTProductName} as part of a service mesh, follow the xref:../../service_mesh/v2x/preparing-ossm-installation.adoc#preparing-ossm-installation[Red Hat Service Mesh Installation] instructions. You must install {DTProductName} in the same namespace as your service mesh, that is, the `ServiceMeshControlPlane` and the {DTProductName} resources must be in the same namespace.
+
+* If you do not want to install a service mesh, you can use the {DTProductName} Operators to install {DTShortName} by itself. To install {DTProductName} without a service mesh, use the following instructions.
+
+== Prerequisites
+
+Before you can install {DTProductName}, review the installation activities, and ensure that you meet the prerequisites:
+
+* Possess an active {product-title} subscription on your Red Hat account. If you do not have a subscription, contact your sales representative for more information.
+
+* Review the xref:../../architecture/architecture-installation.adoc#installation-overview_architecture-installation[{product-title} {product-version} overview].
+* Install {product-title} {product-version}.
+
+** xref:../../installing/installing_aws/installing-aws-account.adoc#installing-aws-account[Install {product-title} {product-version} on AWS]
+** xref:../../installing/installing_aws/installing-aws-user-infra.adoc#installing-aws-user-infra[Install {product-title} {product-version} on user-provisioned AWS]
+** xref:../../installing/installing_bare_metal/installing-bare-metal.adoc#installing-bare-metal[Install {product-title} {product-version} on bare metal]
+** xref:../../installing/installing_vsphere/installing-vsphere.adoc#installing-vsphere[Install {product-title} {product-version} on vSphere]
+* Install the version of the OpenShift CLI (`oc`) that matches your {product-title} version and add it to your path.
+
+* An account with the `cluster-admin` role.
+
+include::modules/distr-tracing-install-overview.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-install-elasticsearch.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-install-jaeger-operator.adoc[leveloffset=+1]
diff --git a/distr_tracing/distr_tracing_otel/_attributes b/distr_tracing/distr_tracing_otel/_attributes
new file mode 120000
index 000000000000..20cc1dcb77bf
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/_attributes
@@ -0,0 +1 @@
+../../_attributes/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
similarity index 67%
rename from distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
rename to distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
index e1e19f61dc1e..3fd0d843a62a 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
@@ -1,11 +1,11 @@
:_content-type: ASSEMBLY
-[id="distr-tracing-deploying-otel"]
-= Configuring and deploying distributed tracing data collection
+[id="distr-tracing-otel-configuring"]
+= Configuring and deploying distributed tracing data collection OpenTelemetry
include::_attributes/common-attributes.adoc[]
-:context: deploying-distr-tracing-data-collection
+:context: deploying-distr-tracing-otel
toc::[]
-The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
+The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-installing.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
similarity index 82%
rename from distr_tracing/distr_tracing_install/distr-tracing-installing.adoc
rename to distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
index 9a64b8c418e9..7beacbe4cd16 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-installing.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
@@ -1,8 +1,8 @@
:_content-type: ASSEMBLY
-[id="installing-distributed-tracing"]
-= Installing distributed tracing
+[id="dist-tracing-otel-installing"]
+= Installing distributed tracing data collection OpenTelemetry
include::_attributes/common-attributes.adoc[]
-:context: install-distributed-tracing
+:context: install-distributed-tracing-otel
toc::[]
@@ -29,15 +29,4 @@ Before you can install {DTProductName}, review the installation activities, and
* An account with the `cluster-admin` role.
-include::modules/distr-tracing-install-overview.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-install-elasticsearch.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-install-jaeger-operator.adoc[leveloffset=+1]
-
include::modules/distr-tracing-install-otel-operator.adoc[leveloffset=+1]
-
-////
-== Next steps
-* xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying.adoc#deploying-distributed-tracing[Deploy {DTProductName}].
-////
diff --git a/distr_tracing/distr_tracing_otel/images b/distr_tracing/distr_tracing_otel/images
new file mode 120000
index 000000000000..e4c5bd02a10a
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/images
@@ -0,0 +1 @@
+../images/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_otel/modules b/distr_tracing/distr_tracing_otel/modules
new file mode 120000
index 000000000000..43aab75b53c9
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/modules
@@ -0,0 +1 @@
+../modules/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_otel/snippets b/distr_tracing/distr_tracing_otel/snippets
new file mode 120000
index 000000000000..5a3f5add140e
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/snippets
@@ -0,0 +1 @@
+../../snippets/
\ No newline at end of file
diff --git a/modules/distr-tracing-config-otel-collector.adoc b/modules/distr-tracing-config-otel-collector.adoc
index 3156c704d9e0..6ca1493cafb3 100644
--- a/modules/distr-tracing-config-otel-collector.adoc
+++ b/modules/distr-tracing-config-otel-collector.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
--distr_tracing_install/distributed-tracing-deploying-otel.adoc
+-distr_tracing_otel/distr-tracing-otel-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-otel-collector_{context}"]
diff --git a/modules/distr-tracing-install-elasticsearch.adoc b/modules/distr-tracing-install-elasticsearch.adoc
index 822df38406e2..fa3b87fda264 100644
--- a/modules/distr-tracing-install-elasticsearch.adoc
+++ b/modules/distr-tracing-install-elasticsearch.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-install-jaeger-operator.adoc b/modules/distr-tracing-install-jaeger-operator.adoc
index 37bcc6ba7cd7..67480dae5e69 100644
--- a/modules/distr-tracing-install-jaeger-operator.adoc
+++ b/modules/distr-tracing-install-jaeger-operator.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-install-otel-operator.adoc b/modules/distr-tracing-install-otel-operator.adoc
index d85255daa30c..b84ad238ee41 100644
--- a/modules/distr-tracing-install-otel-operator.adoc
+++ b/modules/distr-tracing-install-otel-operator.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_otel/distr-tracing-otel-installing.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-install-overview.adoc b/modules/distr-tracing-install-overview.adoc
index d082c4e98944..7492aefd2139 100644
--- a/modules/distr-tracing-install-overview.adoc
+++ b/modules/distr-tracing-install-overview.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
////
:_content-type: CONCEPT
From 9eb27bba8ce688f666037d54e0b8fd4f2e3aa12b Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 18:40:14 +0200
Subject: [PATCH 018/108] fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 11 +++----
.../distr-tracing-jaeger-removing.adoc | 31 +++++++++++++++++++
.../distr-tracing-jaeger-updating.adoc | 24 ++++++++++++++
3 files changed, 59 insertions(+), 7 deletions(-)
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 1498ba110a50..f4ffdb8abc9e 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3576,13 +3576,6 @@ Topics:
Topics:
- Name: Distributed tracing architecture
File: distr-tracing-architecture
-- Name: Distributed tracing installation
- Dir: distr_tracing_install
- Topics:
- - Name: Upgrading distributed tracing
- File: distr-tracing-updating
- - Name: Removing distributed tracing
- File: distr-tracing-removing
- Name: Distributed tracing platform - Jaeger
Dir: distr_tracing_jaeger
Topics:
@@ -3590,6 +3583,10 @@ Topics:
File: distr-tracing-jaeger-installing
- Name: Configuring Jaeger
File: distr-tracing-jaeger-configuring
+ - Name: Updating Jaeger
+ File: distr-tracing-jaeger-updating
+ - Name: Removing Jaeger
+ File: distr-tracing-jaeger-removing
- Name: Distributed tracing data collection - OpenTelemetry
Dir: distr_tracing_otel
Topics:
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
new file mode 100644
index 000000000000..13b41b03163f
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
@@ -0,0 +1,31 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-jaeger-removing"]
+= Removing distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: remove-distributed-tracing
+
+toc::[]
+
+The steps for removing {DTProductName} from an {product-title} cluster are as follows:
+
+. Shut down any {DTProductName} pods.
+. Remove any {DTProductName} instances.
+. Remove the {JaegerName} Operator.
+. Remove the {OTELName} Operator.
+
+include::modules/distr-tracing-removing-instance.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-removing-instance-cli.adoc[leveloffset=+1]
+
+
+== Removing the {DTProductName} Operators
+
+.Procedure
+
+. Follow the instructions for xref:../../operators/admin/olm-deleting-operators-from-cluster.adoc#olm-deleting-operators-from-a-cluster[Deleting Operators from a cluster].
+
+* Remove the {JaegerName} Operator.
+
+//* Remove the {OTELName} Operator.
+
+* After the {JaegerName} Operator has been removed, if appropriate, remove the OpenShift Elasticsearch Operator.
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
new file mode 100644
index 000000000000..8a471a93a03b
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
@@ -0,0 +1,24 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-jaeger-updating"]
+= Updating distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: update-distributed-tracing
+
+toc::[]
+
+Operator Lifecycle Manager (OLM) controls the installation, upgrade, and role-based access control (RBAC) of Operators in a cluster. The OLM runs by default in {product-title}.
+OLM queries for available Operators as well as upgrades for installed Operators.
+For more information about how {product-title} handles upgrades, see the xref:../../operators/understanding/olm/olm-understanding-olm.adoc#olm-understanding-olm[Operator Lifecycle Manager] documentation.
+
+During an update, the {DTProductName} Operators upgrade the managed {DTShortName} instances to the version associated with the Operator. Whenever a new version of the {JaegerName} Operator is installed, all the {JaegerShortName} application instances managed by the Operator are upgraded to the Operator's version. For example, after upgrading the Operator from 1.10 installed to 1.11, the Operator scans for running {JaegerShortName} instances and upgrades them to 1.11 as well.
+
+For specific instructions on how to update the OpenShift Elasticsearch Operator, see xref:../../logging/cluster-logging-upgrading.adoc#cluster-logging-upgrading_cluster-logging-upgrading[Updating OpenShift Logging].
+
+include::modules/distr-tracing-change-operator-20.adoc[leveloffset=+1]
+
+[IMPORTANT]
+====
+If you have not already updated your OpenShift Elasticsearch Operator as described in xref:../../logging/cluster-logging-upgrading.adoc[Updating OpenShift Logging] complete that update before updating your {JaegerName} Operator.
+====
+
+For instructions on how to update the Operator channel, see xref:../../operators/admin/olm-upgrading-operators.adoc[Updating installed Operators].
From 7044bb34ad844dc03b5bc72c98ab390b578d83cd Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 22:12:43 +0200
Subject: [PATCH 019/108] fix
Signed-off-by: Pavol Loffay
---
.../distr_tracing_otel/distr-tracing-otel-installing.adoc | 6 ------
1 file changed, 6 deletions(-)
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
index 7beacbe4cd16..736c83b14f76 100644
--- a/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
@@ -6,12 +6,6 @@ include::_attributes/common-attributes.adoc[]
toc::[]
-You can install {DTProductName} on {product-title} in either of two ways:
-
-* You can install {DTProductName} as part of {SMProductName}. Distributed tracing is included by default in the Service Mesh installation. To install {DTProductName} as part of a service mesh, follow the xref:../../service_mesh/v2x/preparing-ossm-installation.adoc#preparing-ossm-installation[Red Hat Service Mesh Installation] instructions. You must install {DTProductName} in the same namespace as your service mesh, that is, the `ServiceMeshControlPlane` and the {DTProductName} resources must be in the same namespace.
-
-* If you do not want to install a service mesh, you can use the {DTProductName} Operators to install {DTShortName} by itself. To install {DTProductName} without a service mesh, use the following instructions.
-
== Prerequisites
Before you can install {DTProductName}, review the installation activities, and ensure that you meet the prerequisites:
From 39ec99b654603c013d8e06e5218b4b90bcb042db Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 4 Jul 2023 19:08:27 +0200
Subject: [PATCH 020/108] Fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 4 ++--
modules/distr-tracing-accessing-jaeger-console.adoc | 1 -
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index f4ffdb8abc9e..0fb3b21f606a 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3576,7 +3576,7 @@ Topics:
Topics:
- Name: Distributed tracing architecture
File: distr-tracing-architecture
-- Name: Distributed tracing platform - Jaeger
+- Name: Distributed tracing platform (Jaeger)
Dir: distr_tracing_jaeger
Topics:
- Name: Installing Jaeger
@@ -3587,7 +3587,7 @@ Topics:
File: distr-tracing-jaeger-updating
- Name: Removing Jaeger
File: distr-tracing-jaeger-removing
-- Name: Distributed tracing data collection - OpenTelemetry
+- Name: Distributed tracing data collection (OpenTelemetry)
Dir: distr_tracing_otel
Topics:
- Name: Installing OpenTelemetry
diff --git a/modules/distr-tracing-accessing-jaeger-console.adoc b/modules/distr-tracing-accessing-jaeger-console.adoc
index 8b3568427a7f..d098f475127a 100644
--- a/modules/distr-tracing-accessing-jaeger-console.adoc
+++ b/modules/distr-tracing-accessing-jaeger-console.adoc
@@ -1,6 +1,5 @@
////
Module included in the following assemblies:
-* distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
* distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
From 4b42b8401463642afed6dfbe15f8e1df07183ae7 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 4 Jul 2023 19:10:27 +0200
Subject: [PATCH 021/108] Fix
Signed-off-by: Pavol Loffay
---
.../distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc | 2 --
1 file changed, 2 deletions(-)
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
index bab8b79d7464..1198b62b589e 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
@@ -74,8 +74,6 @@ include::modules/distr-tracing-config-default.adoc[leveloffset=+2]
include::modules/distr-tracing-config-jaeger-collector.adoc[leveloffset=+2]
-//include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+2]
-
include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
From 52abb8a0f04274254c9c9d04affee32a05e41c4a Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Sat, 8 Jul 2023 21:33:46 +0200
Subject: [PATCH 022/108] Fix
Signed-off-by: Pavol Loffay
---
.../distr-tracing-deploying-otel.adoc | 2 +-
...-config-otel-send-metrics-monitoring-stack.adoc | 14 +++++++-------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index 7aa8396c8e22..0ddc864dc77e 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -15,4 +15,4 @@ include::modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc[le
[role="_additional-resources"]
[id="additional-resources_deploy-otel"]
== Additional resources
-* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[Enable monitoring stack for user defined projects.]
+* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[Enabling monitoring for user-defined projects.]
diff --git a/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
index 8291c940c91e..a1242628e295 100644
--- a/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
@@ -1,15 +1,15 @@
////
-This module included in the following assemblies:
--distr_tracing_install/distributed-tracing-deploying-otel.adoc
+This module is included in the following assemblies:
+- distr_tracing_install/distributed-tracing-deploying-otel.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-send-metrics-monitoring-stack_{context}"]
= Sending metrics to the monitoring stack
-The following example shows how to configure the monitoring stack to scrape OpenTelemetry collector metrics endpoints and removes
-duplicated labels added by the monitoring stack during scraping.
+You can configure the monitoring stack to scrape OpenTelemetry collector metrics endpoints and to remove
+duplicated labels that the monitoring stack has added during scraping.
-.Sample `+PodMonitor+` that configures the monitoring stack to scrape collector metrics.
+.Sample `+PodMonitor+` that configures the monitoring stack to scrape collector metrics
[source,yaml]
----
apiVersion: monitoring.coreos.com/v1
@@ -36,5 +36,5 @@ spec:
- action: labeldrop
regex: job
----
-<1> The OpenTelemetry collector internal metrics port name. The port name is always `+metrics+`.
-<2> The OpenTelemetry collector Prometheus exporter port name. The port name is defined in the `+.spec.ports+` section of the OpenTelemetry collector CR.
+<1> The name of the internal metrics port for the OpenTelemetry collector. This port name is always `+metrics+`.
+<2> The name of the Prometheus exporter port for the OpenTelemetry collector. This port name is defined in the `+.spec.ports+` section of the OpenTelemetry collector CR.
From 254dfa6d9e3c36db4e1c7081aa7d6c0147bb0739 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 14 Jul 2023 16:57:52 +0200
Subject: [PATCH 023/108] initial changes to update the product versions for
the distributed tracing component v2.9
---
_attributes/common-attributes.adoc | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index a8382eb3b469..af56a8128e51 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -126,16 +126,16 @@ endif::[]
//distributed tracing
:DTProductName: Red Hat OpenShift distributed tracing
:DTShortName: distributed tracing
-:DTProductVersion: 2.8
+:DTProductVersion: 2.9
:JaegerName: Red Hat OpenShift distributed tracing platform
:JaegerShortName: distributed tracing platform
-:JaegerVersion: 1.42.0
+:JaegerVersion: 1.??.0
:OTELName: Red Hat OpenShift distributed tracing data collection
:OTELShortName: distributed tracing data collection
-:OTELVersion: 0.74.0
+:OTELVersion: 0.??.0
:TempoName: Tempo Operator
:TempoShortName: Tempo
-:TempoVersion: 0.1.0
+:TempoVersion: 0.?.0
//logging
:logging-title: logging subsystem for Red Hat OpenShift
:logging-title-uc: Logging subsystem for Red Hat OpenShift
From 32200e289ab2070a950aa3939f928fc8ef55022e Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 18 Jul 2023 16:57:49 +0200
Subject: [PATCH 024/108] add initial content (to be rewrriten) about removing
Tempo, https://issues.redhat.com/browse/TRACING-3294
---
distr_tracing/distr_tracing_tempo/_attributes | 1 +
.../distr-tracing-tempo-removing.adoc | 31 +++++++
distr_tracing/distr_tracing_tempo/images | 1 +
distr_tracing/distr_tracing_tempo/modules | 1 +
distr_tracing/distr_tracing_tempo/snippets | 1 +
...r-tracing-removing-tempo-instance-cli.adoc | 89 +++++++++++++++++++
...distr-tracing-removing-tempo-instance.adoc | 28 ++++++
7 files changed, 152 insertions(+)
create mode 120000 distr_tracing/distr_tracing_tempo/_attributes
create mode 100644 distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
create mode 120000 distr_tracing/distr_tracing_tempo/images
create mode 120000 distr_tracing/distr_tracing_tempo/modules
create mode 120000 distr_tracing/distr_tracing_tempo/snippets
create mode 100644 modules/distr-tracing-removing-tempo-instance-cli.adoc
create mode 100644 modules/distr-tracing-removing-tempo-instance.adoc
diff --git a/distr_tracing/distr_tracing_tempo/_attributes b/distr_tracing/distr_tracing_tempo/_attributes
new file mode 120000
index 000000000000..20cc1dcb77bf
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/_attributes
@@ -0,0 +1 @@
+../../_attributes/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
new file mode 100644
index 000000000000..449352153a38
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
@@ -0,0 +1,31 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-tempo-removing"]
+= Removing distributed tracing platform Tempo
+include::_attributes/common-attributes.adoc[]
+:context: remove-distributed-tracing
+
+toc::[]
+
+The steps for removing {DTProductName} from an {product-title} cluster are as follows:
+
+. Shut down any {DTProductName} pods.
+. Remove any {DTProductName} instances.
+. Remove the {TempoName} Operator.
+. Remove the {OTELName} Operator.
+
+include::modules/distr-tracing-removing-tempo-instance.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-removing-tempo-instance-cli.adoc[leveloffset=+1]
+
+
+== Removing the {DTProductName} Operators
+
+.Procedure
+
+. Follow the instructions for xref:../../operators/admin/olm-deleting-operators-from-cluster.adoc#olm-deleting-operators-from-a-cluster[Deleting Operators from a cluster].
+
+* Remove the {TempoName} Operator.
+
+//* Remove the {OTELName} Operator.
+
+* After the {TempoName} Operator has been removed, if appropriate, remove the OpenShift Elasticsearch Operator.
diff --git a/distr_tracing/distr_tracing_tempo/images b/distr_tracing/distr_tracing_tempo/images
new file mode 120000
index 000000000000..e4c5bd02a10a
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/images
@@ -0,0 +1 @@
+../images/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_tempo/modules b/distr_tracing/distr_tracing_tempo/modules
new file mode 120000
index 000000000000..43aab75b53c9
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/modules
@@ -0,0 +1 @@
+../modules/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_tempo/snippets b/distr_tracing/distr_tracing_tempo/snippets
new file mode 120000
index 000000000000..5a3f5add140e
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/snippets
@@ -0,0 +1 @@
+../../snippets/
\ No newline at end of file
diff --git a/modules/distr-tracing-removing-tempo-instance-cli.adoc b/modules/distr-tracing-removing-tempo-instance-cli.adoc
new file mode 100644
index 000000000000..8ae2f8aee864
--- /dev/null
+++ b/modules/distr-tracing-removing-tempo-instance-cli.adoc
@@ -0,0 +1,89 @@
+//Module included in the following assemblies:
+//
+//* distr_tracing_install/dist-tracing-tempo-removing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-removing-tempo-instance-cli_{context}"]
+= Removing a {TempoName} instance from the CLI
+
+. Log in to the {product-title} CLI.
++
+[source,terminal]
+----
+$ oc login --username=
+----
++
+. To display the {TempoShortName} instances run the command:
++
+[source,terminal]
+----
+$ oc get deployments -n
+----
++
+For example,
++
+[source,terminal]
+----
+$ oc get deployments -n openshift-operators
+----
++
+The names of Operators have the suffix `-operator`. The following example shows two {TempoName} Operators and four {TempoShortName} instances:
++
+[source,terminal]
+----
+$ oc get deployments -n openshift-operators
+----
++
+You should see output similar to the following:
++
+[source,terminal]
+----
+NAME READY UP-TO-DATE AVAILABLE AGE
+elasticsearch-operator 1/1 1 1 93m
+tempo-operator 1/1 1 1 49m
+tempo-test 1/1 1 1 7m23s
+tempo-test2 1/1 1 1 6m48s
+tracing1 1/1 1 1 7m8s
+tracing2 1/1 1 1 35m
+----
++
+. To remove an instance of {TempoShortName}, run the following command:
++
+[source,terminal]
+----
+$ oc delete tempo -n
+----
++
+For example:
++
+[source,terminal]
+----
+$ oc delete tempo tracing2 -n openshift-operators
+----
++
+
+. To verify the deletion, run the `oc get deployments` command again:
++
+[source,terminal]
+----
+$ oc get deployments -n
+----
+
++
+For example:
++
+[source,terminal]
+----
+$ oc get deployments -n openshift-operators
+----
++
+You should see generated output that is similar to the following example:
++
+[source,terminal]
+----
+NAME READY UP-TO-DATE AVAILABLE AGE
+tempo-operator 1/1 1 1 50m
+tempo-test 1/1 1 1 8m14s
+tempo-test2 1/1 1 1 7m39s
+tracing1 1/1 1 1 7m59s
+----
diff --git a/modules/distr-tracing-removing-tempo-instance.adoc b/modules/distr-tracing-removing-tempo-instance.adoc
new file mode 100644
index 000000000000..5c1ff099cab9
--- /dev/null
+++ b/modules/distr-tracing-removing-tempo-instance.adoc
@@ -0,0 +1,28 @@
+//Module included in the following assemblies:
+//
+//* distr_tracing_install/dist-tracing-tempo-removing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-removing-tempo-instance_{context}"]
+= Removing a {TempoName} instance using the web console
+
+[NOTE]
+====
+When deleting an instance that uses the in-memory storage, all data is permanently lost. Data stored in a persistent storage such as Elasticsearch is not be deleted when a {TempoName} instance is removed.
+====
+
+.Procedure
+
+. Log in to the {product-title} web console.
+
+. Navigate to *Operators* -> *Installed Operators*.
+
+. Select the name of the project where the Operators are installed from the *Project* menu, for example, `openshift-operators`.
+
+. Click the {TempoName} Operator.
+
+. Click the *Tempo* tab.
+
+. Click the Options menu {kebab} next to the instance you want to delete and select *Delete Tempo*.
+
+. In the confirmation message, click *Delete*.
From 05e8b4532ff3fc8c9a7fc58179810fdb5afd3083 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 18 Jul 2023 17:55:42 +0200
Subject: [PATCH 025/108] add initial content (to be rewrriten) about updating
Tempo, https://issues.redhat.com/browse/TRACING-3295 (plus a context fix for
https://issues.redhat.com/browse/TRACING-3294)
---
.../distr-tracing-tempo-removing.adoc | 2 +-
.../distr-tracing-tempo-updating.adoc | 24 +++++++++++++++++++
...istr-tracing-tempo-change-operator-20.adoc | 22 +++++++++++++++++
3 files changed, 47 insertions(+), 1 deletion(-)
create mode 100644 distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc
create mode 100644 modules/distr-tracing-tempo-change-operator-20.adoc
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
index 449352153a38..c903281836a0 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
@@ -2,7 +2,7 @@
[id="dist-tracing-tempo-removing"]
= Removing distributed tracing platform Tempo
include::_attributes/common-attributes.adoc[]
-:context: remove-distributed-tracing
+:context: dist-tracing-tempo-removing
toc::[]
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc
new file mode 100644
index 000000000000..d38b16551cc1
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc
@@ -0,0 +1,24 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-tempo-updating"]
+= Updating distributed tracing platform Tempo
+include::_attributes/common-attributes.adoc[]
+:context: dist-tracing-tempo-updating
+
+toc::[]
+
+Operator Lifecycle Manager (OLM) controls the installation, upgrade, and role-based access control (RBAC) of Operators in a cluster. The OLM runs by default in {product-title}.
+OLM queries for available Operators as well as upgrades for installed Operators.
+For more information about how {product-title} handles upgrades, see the xref:../../operators/understanding/olm/olm-understanding-olm.adoc#olm-understanding-olm[Operator Lifecycle Manager] documentation.
+
+During an update, the {DTProductName} Operators upgrade the managed {DTShortName} instances to the version associated with the Operator. Whenever a new version of the {TempoName} Operator is installed, all the {TempoShortName} application instances managed by the Operator are upgraded to the Operator's version. For example, after upgrading the Operator from 1.10 installed to 1.11, the Operator scans for running {TempoShortName} instances and upgrades them to 1.11 as well.
+
+For specific instructions on how to update the OpenShift Elasticsearch Operator, see xref:../../logging/cluster-logging-upgrading.adoc#cluster-logging-upgrading_cluster-logging-upgrading[Updating OpenShift Logging].
+
+include::modules/distr-tracing-tempo-change-operator-20.adoc[leveloffset=+1]
+
+[IMPORTANT]
+====
+If you have not already updated your OpenShift Elasticsearch Operator as described in xref:../../logging/cluster-logging-upgrading.adoc[Updating OpenShift Logging] complete that update before updating your {TempoName} Operator.
+====
+
+For instructions on how to update the Operator channel, see xref:../../operators/admin/olm-upgrading-operators.adoc[Updating installed Operators].
diff --git a/modules/distr-tracing-tempo-change-operator-20.adoc b/modules/distr-tracing-tempo-change-operator-20.adoc
new file mode 100644
index 000000000000..3c5757e5f00f
--- /dev/null
+++ b/modules/distr-tracing-tempo-change-operator-20.adoc
@@ -0,0 +1,22 @@
+// Module included in the following assemblies:
+//
+// * dist_tracing/dist_tracing_install/dist-tracing-tempo-updating.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-changing-operator-channel_{context}"]
+= Changing the Operator channel for 2.0
+
+{DTProductName} 2.0.0 made the following changes:
+
+* Renamed the Red Hat OpenShift Jaeger Operator to the {JaegerName} Operator.
+
+* Stopped support for individual release channels. Going forward, the {JaegerName} Operator will only support the *stable* Operator channel. Maintenance channels, for example *1.24-stable*, will no longer be supported by future Operators.
+
+As part of the update to version 2.0, you must update your OpenShift Elasticsearch and {JaegerName} Operator subscriptions.
+
+.Prerequisites
+
+* The {product-title} version is 4.6 or later.
+* You have updated the OpenShift Elasticsearch Operator.
+* You have backed up the Jaeger custom resource file.
+* An account with the `cluster-admin` role. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
From b60cb173b6acd0bb0f4aface8745d7b747a3049c Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Wed, 7 Jun 2023 21:54:18 +0200
Subject: [PATCH 026/108] Add OTLP metrics docs
Signed-off-by: Pavol Loffay
---
.../distr-tracing-deploying-otel.adoc | 1 +
.../distr-tracing-config-otel-collector.adoc | 38 +++++++++++++++++-
...ig-otel-send-data-to-monitoring-stack.adoc | 39 +++++++++++++++++++
3 files changed, 77 insertions(+), 1 deletion(-)
create mode 100644 modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index e1e19f61dc1e..e5434ad6e5cb 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -9,3 +9,4 @@ toc::[]
The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
+include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
diff --git a/modules/distr-tracing-config-otel-collector.adoc b/modules/distr-tracing-config-otel-collector.adoc
index 3156c704d9e0..73b8e4d955fd 100644
--- a/modules/distr-tracing-config-otel-collector.adoc
+++ b/modules/distr-tracing-config-otel-collector.adoc
@@ -29,6 +29,10 @@ metadata:
namespace: tracing-system
spec:
mode: deployment
+ ports:
+ - name: promexporter
+ port: 8889
+ protocol: TCP
config: |
receivers:
otlp:
@@ -41,12 +45,20 @@ spec:
endpoint: jaeger-production-collector-headless.tracing-system.svc:14250
tls:
ca_file: "/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt"
+ prometheus:
+ endpoint: 0.0.0.0:8889
+ resource_to_telemetry_conversion:
+ enabled: true # by default resource attributes are dropped
service:
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [jaeger]
+ metrics:
+ receivers: [otlp]
+ processors: []
+ exporters: [prometheus]
----
[NOTE]
@@ -77,7 +89,7 @@ If a component is configured, but not defined within the `service` section then
|exporters:
|An exporter sends data to one or more backends/destinations. By default, no exporters are configured. There must be at least one enabled exporter for a configuration to be considered valid. Exporters are enabled by being added to a pipeline. Exporters may come with default settings, but many require configuration to specify at least the destination and security settings.
-|`logging`, `jaeger`
+|`logging`, `jaeger`, `prometheus`,
|None
|exporters:
@@ -125,4 +137,28 @@ If a component is configured, but not defined within the `service` section then
|You enable exporters for tracing by adding them under `service.pipelines.traces`.
|
|None
+
+|service:
+ pipelines:
+ metrics:
+ receivers:
+|You enable receivers for metrics by adding them under `service.pipelines.metrics`.
+|
+|None
+
+|service:
+ pipelines:
+ metrics:
+ processors:
+|You enable processors for metircs by adding them under `service.pipelines.metrics`.
+|
+|None
+
+|service:
+ pipelines:
+ metrics:
+ exporters:
+|You enable exporters for metrics by adding them under `service.pipelines.metrics`.
+|
+|None
|===
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
new file mode 100644
index 000000000000..4c8c914eb0b2
--- /dev/null
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -0,0 +1,39 @@
+////
+This module included in the following assemblies:
+-distr_tracing_install/distributed-tracing-deploying-otel.adoc
+////
+:_content-type: REFERENCE
+[id="distr-tracing-config-otel-collector_monitoring_{context}"]
+= Sending metrics to the monitoring stack
+
+The metrics from the {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
+xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+configure monitoring stack.
+
+.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector Prometheus exporter, internal metrics endpoint and removes duplicated labels.
+[source,yaml]
+----
+apiVersion: monitoring.coreos.com/v1
+kind: PodMonitor
+metadata:
+ name: otel-collector
+spec:
+ selector:
+ matchLabels:
+ app.kubernetes.io/name: otel-collector
+ podMetricsEndpoints:
+ - port: metrics
+ - port: promexporter
+ relabelings:
+ - action: labeldrop
+ regex: pod
+ - action: labeldrop
+ regex: container
+ - action: labeldrop
+ regex: endpoint
+ metricRelabelings:
+ - action: labeldrop
+ regex: instance
+ - action: labeldrop
+ regex: job
+----
From d764c389079031a8d210efac4496aca4e1d6525f Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 11:55:13 +0200
Subject: [PATCH 027/108] Review fixes
Signed-off-by: Pavol Loffay
---
...tracing-config-otel-send-data-to-monitoring-stack.adoc | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
index 4c8c914eb0b2..a7e18bad92dc 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -6,7 +6,7 @@ This module included in the following assemblies:
[id="distr-tracing-config-otel-collector_monitoring_{context}"]
= Sending metrics to the monitoring stack
-The metrics from the {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
+The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
configure monitoring stack.
@@ -22,8 +22,8 @@ spec:
matchLabels:
app.kubernetes.io/name: otel-collector
podMetricsEndpoints:
- - port: metrics
- - port: promexporter
+ - port: metrics <1>
+ - port: promexporter <2>
relabelings:
- action: labeldrop
regex: pod
@@ -37,3 +37,5 @@ spec:
- action: labeldrop
regex: job
----
+<1> Collector's internal metrics port
+<2> Collector's Prometheus exporter port
From b4e5b336198d1336c991c11512f4f55f41cdf4f5 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 11:57:17 +0200
Subject: [PATCH 028/108] Fixes callouts
Signed-off-by: Pavol Loffay
---
...distr-tracing-config-otel-send-data-to-monitoring-stack.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
index a7e18bad92dc..63c0155f5aea 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -10,7 +10,7 @@ The metrics from {OTELName} can be consumed by the in-cluster monitoring stack.
xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
configure monitoring stack.
-.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector Prometheus exporter, internal metrics endpoint and removes duplicated labels.
+.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector and removes duplicated labels.
[source,yaml]
----
apiVersion: monitoring.coreos.com/v1
From 2949e5d6425a761f85b4c887d84090f3170ac427 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 12:09:24 +0200
Subject: [PATCH 029/108] Fixes link in modules
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 5 +++++
...tr-tracing-config-otel-send-data-to-monitoring-stack.adoc | 4 ----
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index e5434ad6e5cb..f53f07059bc2 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -9,4 +9,9 @@ toc::[]
The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
+
+The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
+xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+configure monitoring stack.
+
include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
index 63c0155f5aea..66bdfb867a72 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
@@ -6,10 +6,6 @@ This module included in the following assemblies:
[id="distr-tracing-config-otel-collector_monitoring_{context}"]
= Sending metrics to the monitoring stack
-The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
-xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
-configure monitoring stack.
-
.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector and removes duplicated labels.
[source,yaml]
----
From c162f55c58459f8d2d97d82be42b477c465a989e Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 26 Jun 2023 12:42:29 +0200
Subject: [PATCH 030/108] Fixes link in modules
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index f53f07059bc2..59447e6df6fe 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -10,8 +10,6 @@ The {OTELName} Operator uses a custom resource definition (CRD) file that define
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
-The metrics from {OTELName} can be consumed by the in-cluster monitoring stack. Refer to
-xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
-configure monitoring stack.
-
include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
+Refer to xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+configure monitoring stack.
From 4369a8887fe73e6dedc8cc1289fdb275fa4ce39e Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 29 Jun 2023 12:14:56 +0200
Subject: [PATCH 031/108] Fix review comments
Signed-off-by: Pavol Loffay
---
.../distr-tracing-deploying-otel.adoc | 6 +++++-
...ng-config-otel-send-metrics-monitoring-stack.adoc} | 11 +++++++----
2 files changed, 12 insertions(+), 5 deletions(-)
rename modules/{distr-tracing-config-otel-send-data-to-monitoring-stack.adoc => distr-tracing-config-otel-send-metrics-monitoring-stack.adoc} (54%)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index 59447e6df6fe..e24a026f92d0 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -11,5 +11,9 @@ The {OTELName} Operator uses a custom resource definition (CRD) file that define
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
-Refer to xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
+
+[role="_additional-resources"]
+[id="additional-resources_deploy-otel"]
+== Additional resources
+* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
configure monitoring stack.
diff --git a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
similarity index 54%
rename from modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
rename to modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
index 66bdfb867a72..8291c940c91e 100644
--- a/modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
@@ -3,10 +3,13 @@ This module included in the following assemblies:
-distr_tracing_install/distributed-tracing-deploying-otel.adoc
////
:_content-type: REFERENCE
-[id="distr-tracing-config-otel-collector_monitoring_{context}"]
+[id="distr-tracing-send-metrics-monitoring-stack_{context}"]
= Sending metrics to the monitoring stack
-.Sample `+PodMonitor+` that configures monitoring stack to scrape OpenTelemetry collector and removes duplicated labels.
+The following example shows how to configure the monitoring stack to scrape OpenTelemetry collector metrics endpoints and removes
+duplicated labels added by the monitoring stack during scraping.
+
+.Sample `+PodMonitor+` that configures the monitoring stack to scrape collector metrics.
[source,yaml]
----
apiVersion: monitoring.coreos.com/v1
@@ -33,5 +36,5 @@ spec:
- action: labeldrop
regex: job
----
-<1> Collector's internal metrics port
-<2> Collector's Prometheus exporter port
+<1> The OpenTelemetry collector internal metrics port name. The port name is always `+metrics+`.
+<2> The OpenTelemetry collector Prometheus exporter port name. The port name is defined in the `+.spec.ports+` section of the OpenTelemetry collector CR.
From 8965b5d0f27810964c16ade0ff0fa23ce8d46bbc Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 29 Jun 2023 13:51:25 +0200
Subject: [PATCH 032/108] Fix review comments
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index e24a026f92d0..65a1d4b3ed2e 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -10,7 +10,7 @@ The {OTELName} Operator uses a custom resource definition (CRD) file that define
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
-include::modules/distr-tracing-config-otel-send-data-to-monitoring-stack.adoc[leveloffset=+1]
+include::modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc[leveloffset=+1]
[role="_additional-resources"]
[id="additional-resources_deploy-otel"]
From fa7b30ef39f3d8d9ae21791d818f9915f9a72863 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 29 Jun 2023 14:03:43 +0200
Subject: [PATCH 033/108] Fix review comments
Signed-off-by: Pavol Loffay
---
.../distr_tracing_install/distr-tracing-deploying-otel.adoc | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index 65a1d4b3ed2e..7aa8396c8e22 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -15,5 +15,4 @@ include::modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc[le
[role="_additional-resources"]
[id="additional-resources_deploy-otel"]
== Additional resources
-* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[enable monitoring for user defined projects] how to
-configure monitoring stack.
+* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[Enable monitoring stack for user defined projects.]
From ab1a037580ee6f9d046233e82df3031df1003f7d Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Sat, 8 Jul 2023 21:33:46 +0200
Subject: [PATCH 034/108] Fix
Signed-off-by: Pavol Loffay
---
.../distr-tracing-deploying-otel.adoc | 2 +-
...-config-otel-send-metrics-monitoring-stack.adoc | 14 +++++++-------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
index 7aa8396c8e22..0ddc864dc77e 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
@@ -15,4 +15,4 @@ include::modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc[le
[role="_additional-resources"]
[id="additional-resources_deploy-otel"]
== Additional resources
-* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[Enable monitoring stack for user defined projects.]
+* xref:../../monitoring/enabling-monitoring-for-user-defined-projects.adoc[Enabling monitoring for user-defined projects.]
diff --git a/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
index 8291c940c91e..a1242628e295 100644
--- a/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
+++ b/modules/distr-tracing-config-otel-send-metrics-monitoring-stack.adoc
@@ -1,15 +1,15 @@
////
-This module included in the following assemblies:
--distr_tracing_install/distributed-tracing-deploying-otel.adoc
+This module is included in the following assemblies:
+- distr_tracing_install/distributed-tracing-deploying-otel.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-send-metrics-monitoring-stack_{context}"]
= Sending metrics to the monitoring stack
-The following example shows how to configure the monitoring stack to scrape OpenTelemetry collector metrics endpoints and removes
-duplicated labels added by the monitoring stack during scraping.
+You can configure the monitoring stack to scrape OpenTelemetry collector metrics endpoints and to remove
+duplicated labels that the monitoring stack has added during scraping.
-.Sample `+PodMonitor+` that configures the monitoring stack to scrape collector metrics.
+.Sample `+PodMonitor+` that configures the monitoring stack to scrape collector metrics
[source,yaml]
----
apiVersion: monitoring.coreos.com/v1
@@ -36,5 +36,5 @@ spec:
- action: labeldrop
regex: job
----
-<1> The OpenTelemetry collector internal metrics port name. The port name is always `+metrics+`.
-<2> The OpenTelemetry collector Prometheus exporter port name. The port name is defined in the `+.spec.ports+` section of the OpenTelemetry collector CR.
+<1> The name of the internal metrics port for the OpenTelemetry collector. This port name is always `+metrics+`.
+<2> The name of the Prometheus exporter port for the OpenTelemetry collector. This port name is defined in the `+.spec.ports+` section of the OpenTelemetry collector CR.
From 8fca644e4663100131f4361f26fa32ad3a836ad5 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 14:01:11 +0200
Subject: [PATCH 035/108] Restructure distributed tracing
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 7 ++
.../distr_tracing_jaeger/_attributes | 1 +
.../distr-tracing-jaeger-configuring.adoc | 94 +++++++++++++++++++
.../distr-tracing-jaeger-installing.adoc | 7 ++
distr_tracing/distr_tracing_jaeger/modules | 1 +
5 files changed, 110 insertions(+)
create mode 120000 distr_tracing/distr_tracing_jaeger/_attributes
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
create mode 120000 distr_tracing/distr_tracing_jaeger/modules
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 7b32d7bb18bf..05a19fca164f 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3544,6 +3544,13 @@ Topics:
File: distr-tracing-updating
- Name: Removing distributed tracing
File: distr-tracing-removing
+- Name: Distributed tracing platform - Jaeger
+ Dir: distr_tracing_jaeger
+ Topics:
+ - Name: Installing
+ File: distr-tracing-jaeger-installing
+ - Name: Configuring
+ File: distr-tracing-jaeger-configuring
---
Name: Virtualization
Dir: virt
diff --git a/distr_tracing/distr_tracing_jaeger/_attributes b/distr_tracing/distr_tracing_jaeger/_attributes
new file mode 120000
index 000000000000..20cc1dcb77bf
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/_attributes
@@ -0,0 +1 @@
+../../_attributes/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
new file mode 100644
index 000000000000..bab8b79d7464
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
@@ -0,0 +1,94 @@
+:_content-type: ASSEMBLY
+[id="distr-tracing-jaeger-configuring"]
+= Configuring and deploying distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: deploying-distr-tracing-platform
+
+toc::[]
+
+The {JaegerName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {JaegerShortName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
+
+{JaegerName} has predefined deployment strategies. You specify a deployment strategy in the custom resource file. When you create a {JaegerShortName} instance the Operator uses this configuration file to create the objects necessary for the deployment.
+
+.Jaeger custom resource file showing deployment strategy
+[source,yaml]
+----
+apiVersion: jaegertracing.io/v1
+kind: Jaeger
+metadata:
+ name: MyConfigFile
+spec:
+ strategy: production <1>
+----
+
+<1> The {JaegerName} Operator currently supports the following deployment strategies:
+
+* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
++
+[NOTE]
+====
+In-memory storage is not persistent, which means that if the {JaegerShortName} instance shuts down, restarts, or is replaced, that your trace data will be lost. And in-memory storage cannot be scaled, since each pod has its own memory. For persistent storage, you must use the `production` or `streaming` strategies, which use Elasticsearch as the default storage.
+====
+
+* *production* - The production strategy is intended for production environments, where long term storage of trace data is important, as well as a more scalable and highly available architecture is required. Each of the backend components is therefore deployed separately. The Agent can be injected as a sidecar on the instrumented application. The Query and Collector services are configured with a supported storage type - currently Elasticsearch. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
+
+* *streaming* - The streaming strategy is designed to augment the production strategy by providing a streaming capability that effectively sits between the Collector and the Elasticsearch backend storage. This provides the benefit of reducing the pressure on the backend storage, under high load situations, and enables other trace post-processing capabilities to tap into the real time span data directly from the streaming platform (https://access.redhat.com/documentation/en-us/red_hat_amq/7.6/html/using_amq_streams_on_openshift/index[AMQ Streams]/ https://kafka.apache.org/documentation/[Kafka]).
++
+[NOTE]
+====
+The streaming strategy requires an additional Red Hat subscription for AMQ Streams.
+====
+
+[NOTE]
+====
+The streaming deployment strategy is currently unsupported on {ibmzProductName}.
+====
+
+[NOTE]
+====
+There are two ways to install and use {DTProductName}, as part of a service mesh or as a stand alone component. If you have installed {DTShortName} as part of {SMProductName}, you can perform basic configuration as part of the xref:../../service_mesh/v2x/installing-ossm.adoc#installing-ossm[ServiceMeshControlPlane] but for completely control you should configure a Jaeger CR and then xref:../../service_mesh/v2x/ossm-observability.html#ossm-config-external-jaeger_observability[reference your distributed tracing configuration file in the ServiceMeshControlPlane].
+
+====
+
+include::modules/distr-tracing-deploy-default.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-deploy-production-es.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-deploy-streaming.adoc[leveloffset=+1]
+
+[id="validating-your-jaeger-deployment"]
+== Validating your deployment
+
+include::modules/distr-tracing-accessing-jaeger-console.adoc[leveloffset=+2]
+
+[id="customizing-your-deployment"]
+== Customizing your deployment
+
+include::modules/distr-tracing-deployment-best-practices.adoc[leveloffset=+2]
+
+ifdef::openshift-enterprise,openshift-dedicated[]
+For information about configuring persistent storage, see xref:../../storage/understanding-persistent-storage.adoc[Understanding persistent storage] and the appropriate configuration topic for your chosen storage option.
+endif::[]
+
+include::modules/distr-tracing-config-default.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-jaeger-collector.adoc[leveloffset=+2]
+
+//include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-query.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-config-ingester.adoc[leveloffset=+2]
+
+[id="injecting-sidecars"]
+== Injecting sidecars
+
+{JaegerName} relies on a proxy sidecar within the application's pod to provide the agent. The {JaegerName} Operator can inject Agent sidecars into Deployment workloads. You can enable automatic sidecar injection or manage it manually.
+
+include::modules/distr-tracing-sidecar-automatic.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-sidecar-manual.adoc[leveloffset=+2]
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
new file mode 100644
index 000000000000..2ea021040649
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
@@ -0,0 +1,7 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-jaeger-installing"]
+= Installing distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: install-distributed-tracing
+
+toc::[]
diff --git a/distr_tracing/distr_tracing_jaeger/modules b/distr_tracing/distr_tracing_jaeger/modules
new file mode 120000
index 000000000000..43aab75b53c9
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/modules
@@ -0,0 +1 @@
+../modules/
\ No newline at end of file
From 774c1564f97727373a2cdb073296159c5097fbdb Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 14:45:35 +0200
Subject: [PATCH 036/108] fix
Signed-off-by: Pavol Loffay
---
distr_tracing/distr_tracing_jaeger/images | 1 +
distr_tracing/distr_tracing_jaeger/snippets | 1 +
2 files changed, 2 insertions(+)
create mode 120000 distr_tracing/distr_tracing_jaeger/images
create mode 120000 distr_tracing/distr_tracing_jaeger/snippets
diff --git a/distr_tracing/distr_tracing_jaeger/images b/distr_tracing/distr_tracing_jaeger/images
new file mode 120000
index 000000000000..e4c5bd02a10a
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/images
@@ -0,0 +1 @@
+../images/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_jaeger/snippets b/distr_tracing/distr_tracing_jaeger/snippets
new file mode 120000
index 000000000000..5a3f5add140e
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/snippets
@@ -0,0 +1 @@
+../../snippets/
\ No newline at end of file
From 304ada96e8ccd23befd040e2cfa5bbca6c8e0ee2 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:06:26 +0200
Subject: [PATCH 037/108] fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 2 -
.../distr-tracing-deploying-jaeger.adoc | 94 -------------------
2 files changed, 96 deletions(-)
delete mode 100644 distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 05a19fca164f..e847316fedf5 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3536,8 +3536,6 @@ Topics:
Topics:
- Name: Installing distributed tracing
File: distr-tracing-installing
- - Name: Configuring the distributed tracing platform
- File: distr-tracing-deploying-jaeger
- Name: Configuring distributed tracing data collection
File: distr-tracing-deploying-otel
- Name: Upgrading distributed tracing
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc b/distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
deleted file mode 100644
index dd2a9dfb445f..000000000000
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+++ /dev/null
@@ -1,94 +0,0 @@
-:_content-type: ASSEMBLY
-[id="distr-tracing-deploying"]
-= Configuring and deploying distributed tracing
-include::_attributes/common-attributes.adoc[]
-:context: deploying-distr-tracing-platform
-
-toc::[]
-
-The {JaegerName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {JaegerShortName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
-
-{JaegerName} has predefined deployment strategies. You specify a deployment strategy in the custom resource file. When you create a {JaegerShortName} instance the Operator uses this configuration file to create the objects necessary for the deployment.
-
-.Jaeger custom resource file showing deployment strategy
-[source,yaml]
-----
-apiVersion: jaegertracing.io/v1
-kind: Jaeger
-metadata:
- name: MyConfigFile
-spec:
- strategy: production <1>
-----
-
-<1> The {JaegerName} Operator currently supports the following deployment strategies:
-
-* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
-+
-[NOTE]
-====
-In-memory storage is not persistent, which means that if the {JaegerShortName} instance shuts down, restarts, or is replaced, that your trace data will be lost. And in-memory storage cannot be scaled, since each pod has its own memory. For persistent storage, you must use the `production` or `streaming` strategies, which use Elasticsearch as the default storage.
-====
-
-* *production* - The production strategy is intended for production environments, where long term storage of trace data is important, as well as a more scalable and highly available architecture is required. Each of the backend components is therefore deployed separately. The Agent can be injected as a sidecar on the instrumented application. The Query and Collector services are configured with a supported storage type - currently Elasticsearch. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
-
-* *streaming* - The streaming strategy is designed to augment the production strategy by providing a streaming capability that effectively sits between the Collector and the Elasticsearch backend storage. This provides the benefit of reducing the pressure on the backend storage, under high load situations, and enables other trace post-processing capabilities to tap into the real time span data directly from the streaming platform (https://access.redhat.com/documentation/en-us/red_hat_amq/7.6/html/using_amq_streams_on_openshift/index[AMQ Streams]/ https://kafka.apache.org/documentation/[Kafka]).
-+
-[NOTE]
-====
-The streaming strategy requires an additional Red Hat subscription for AMQ Streams.
-====
-
-[NOTE]
-====
-The streaming deployment strategy is currently unsupported on {ibmzProductName}.
-====
-
-[NOTE]
-====
-There are two ways to install and use {DTProductName}, as part of a service mesh or as a stand alone component. If you have installed {DTShortName} as part of {SMProductName}, you can perform basic configuration as part of the xref:../../service_mesh/v2x/installing-ossm.adoc#installing-ossm[ServiceMeshControlPlane] but for completely control you should configure a Jaeger CR and then xref:../../service_mesh/v2x/ossm-observability.html#ossm-config-external-jaeger_observability[reference your distributed tracing configuration file in the ServiceMeshControlPlane].
-
-====
-
-include::modules/distr-tracing-deploy-default.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-deploy-production-es.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-deploy-streaming.adoc[leveloffset=+1]
-
-[id="validating-your-jaeger-deployment"]
-== Validating your deployment
-
-include::modules/distr-tracing-accessing-jaeger-console.adoc[leveloffset=+2]
-
-[id="customizing-your-deployment"]
-== Customizing your deployment
-
-include::modules/distr-tracing-deployment-best-practices.adoc[leveloffset=+2]
-
-ifdef::openshift-enterprise,openshift-dedicated[]
-For information about configuring persistent storage, see xref:../../storage/understanding-persistent-storage.adoc[Understanding persistent storage] and the appropriate configuration topic for your chosen storage option.
-endif::[]
-
-include::modules/distr-tracing-config-default.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-jaeger-collector.adoc[leveloffset=+2]
-
-//include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-query.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-config-ingester.adoc[leveloffset=+2]
-
-[id="injecting-sidecars"]
-== Injecting sidecars
-
-{JaegerName} relies on a proxy sidecar within the application's pod to provide the agent. The {JaegerName} Operator can inject Agent sidecars into Deployment workloads. You can enable automatic sidecar injection or manage it manually.
-
-include::modules/distr-tracing-sidecar-automatic.adoc[leveloffset=+2]
-
-include::modules/distr-tracing-sidecar-manual.adoc[leveloffset=+2]
From 385dd98b80764593d36d3380490b4b6429669bf4 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:19:38 +0200
Subject: [PATCH 038/108] fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-accessing-jaeger-console.adoc | 2 +-
modules/distr-tracing-config-default.adoc | 2 +-
modules/distr-tracing-config-ingester.adoc | 2 +-
modules/distr-tracing-config-jaeger-collector.adoc | 2 +-
modules/distr-tracing-config-query.adoc | 2 +-
modules/distr-tracing-config-sampling.adoc | 2 +-
modules/distr-tracing-config-storage.adoc | 2 +-
modules/distr-tracing-deploy-default.adoc | 2 +-
modules/distr-tracing-deploy-production-es.adoc | 2 +-
modules/distr-tracing-deploy-streaming.adoc | 2 +-
modules/distr-tracing-deployment-best-practices.adoc | 2 +-
modules/distr-tracing-sidecar-automatic.adoc | 2 +-
modules/distr-tracing-sidecar-manual.adoc | 2 +-
13 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/modules/distr-tracing-accessing-jaeger-console.adoc b/modules/distr-tracing-accessing-jaeger-console.adoc
index 69ada6de56b7..8b3568427a7f 100644
--- a/modules/distr-tracing-accessing-jaeger-console.adoc
+++ b/modules/distr-tracing-accessing-jaeger-console.adoc
@@ -1,7 +1,7 @@
////
Module included in the following assemblies:
-* distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc
* distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+* distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
[id="distr-tracing-accessing-jaeger-console_{context}"]
diff --git a/modules/distr-tracing-config-default.adoc b/modules/distr-tracing-config-default.adoc
index 3c4488dd88a2..15d3778b8b89 100644
--- a/modules/distr-tracing-config-default.adoc
+++ b/modules/distr-tracing-config-default.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-default_{context}"]
diff --git a/modules/distr-tracing-config-ingester.adoc b/modules/distr-tracing-config-ingester.adoc
index a6b4930dbbb8..d48b3c12d99a 100644
--- a/modules/distr-tracing-config-ingester.adoc
+++ b/modules/distr-tracing-config-ingester.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-ingester_{context}"]
diff --git a/modules/distr-tracing-config-jaeger-collector.adoc b/modules/distr-tracing-config-jaeger-collector.adoc
index 6a32b00d4b15..b6d631d7b8c1 100644
--- a/modules/distr-tracing-config-jaeger-collector.adoc
+++ b/modules/distr-tracing-config-jaeger-collector.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-jaeger-collector_{context}"]
diff --git a/modules/distr-tracing-config-query.adoc b/modules/distr-tracing-config-query.adoc
index 1aa8ba06d64e..8a45af248b0a 100644
--- a/modules/distr-tracing-config-query.adoc
+++ b/modules/distr-tracing-config-query.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-query_{context}"]
diff --git a/modules/distr-tracing-config-sampling.adoc b/modules/distr-tracing-config-sampling.adoc
index 9e743c4072d9..6d8fc643ed57 100644
--- a/modules/distr-tracing-config-sampling.adoc
+++ b/modules/distr-tracing-config-sampling.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-sampling_{context}"]
diff --git a/modules/distr-tracing-config-storage.adoc b/modules/distr-tracing-config-storage.adoc
index 8947448d3432..51efcb69e47b 100644
--- a/modules/distr-tracing-config-storage.adoc
+++ b/modules/distr-tracing-config-storage.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-storage_{context}"]
diff --git a/modules/distr-tracing-deploy-default.adoc b/modules/distr-tracing-deploy-default.adoc
index 627adb8bc6f7..091c9dfd689a 100644
--- a/modules/distr-tracing-deploy-default.adoc
+++ b/modules/distr-tracing-deploy-default.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-deploy-production-es.adoc b/modules/distr-tracing-deploy-production-es.adoc
index 7420097adead..a211689abcfa 100644
--- a/modules/distr-tracing-deploy-production-es.adoc
+++ b/modules/distr-tracing-deploy-production-es.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-deploy-streaming.adoc b/modules/distr-tracing-deploy-streaming.adoc
index 473e522f7d12..e343a784b88d 100644
--- a/modules/distr-tracing-deploy-streaming.adoc
+++ b/modules/distr-tracing-deploy-streaming.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-deployment-best-practices.adoc b/modules/distr-tracing-deployment-best-practices.adoc
index 8e6098bc6140..753d04cf7bba 100644
--- a/modules/distr-tracing-deployment-best-practices.adoc
+++ b/modules/distr-tracing-deployment-best-practices.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: CONCEPT
[id="distr-tracing-deployment-best-practices_{context}"]
diff --git a/modules/distr-tracing-sidecar-automatic.adoc b/modules/distr-tracing-sidecar-automatic.adoc
index 9c425dc12c7a..67713554a81e 100644
--- a/modules/distr-tracing-sidecar-automatic.adoc
+++ b/modules/distr-tracing-sidecar-automatic.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="dist-tracing-sidecar-automatic_{context}"]
diff --git a/modules/distr-tracing-sidecar-manual.adoc b/modules/distr-tracing-sidecar-manual.adoc
index 1f914ed319cb..be79e87505dc 100644
--- a/modules/distr-tracing-sidecar-manual.adoc
+++ b/modules/distr-tracing-sidecar-manual.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-deploying-jaeger.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-sidecar-manual_{context}"]
From 59b3ffa0ed52080159171dc55ffbe2b5413a056c Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:31:57 +0200
Subject: [PATCH 039/108] fix
Signed-off-by: Pavol Loffay
---
service_mesh/v2x/ossm-observability.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/service_mesh/v2x/ossm-observability.adoc b/service_mesh/v2x/ossm-observability.adoc
index 785e4dcd9f1f..438b425d9580 100644
--- a/service_mesh/v2x/ossm-observability.adoc
+++ b/service_mesh/v2x/ossm-observability.adoc
@@ -27,7 +27,7 @@ include::modules/ossm-config-sampling.adoc[leveloffset=+2]
include::modules/ossm-jaeger-accessing-console.adoc[leveloffset=+1]
ifdef::openshift-enterprise[]
-For more information about configuring Jaeger, see the xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#distr-tracing-deploy-default_deploying-distributed-tracing-platform[distributed tracing documentation].
+For more information about configuring Jaeger, see the xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc#distr-tracing-deploy-default_deploying-distributed-tracing-platform[distributed tracing documentation].
endif::[]
include::modules/ossm-access-grafana.adoc[leveloffset=+1]
From 1a1287717a2c581757574c5f2f34f513d6841885 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 15:45:32 +0200
Subject: [PATCH 040/108] fix
Signed-off-by: Pavol Loffay
---
modules/ossm-config-sampling.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/ossm-config-sampling.adoc b/modules/ossm-config-sampling.adoc
index 1b4dbb7bced8..2eae3b01796a 100644
--- a/modules/ossm-config-sampling.adoc
+++ b/modules/ossm-config-sampling.adoc
@@ -23,7 +23,7 @@ The Envoy proxy sampling rate applies for applications that are available to a S
The Jaeger remote sampling rate applies to applications that are external to the Service Mesh, and do not use the Envoy proxy, such as a database. This sampling rate determines how much data the distributed tracing system collects and stores.
ifdef::openshift-enterprise[]
-For more information, see xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#distr-tracing-config-sampling_deploying-distributed-tracing-platform[Distributed tracing configuration options].
+For more information, see xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc#distr-tracing-config-sampling_deploying-distributed-tracing-platform[Distributed tracing configuration options].
endif::[]
====
From 8a0c68cc80ab139199ecca9bbe7a999e20a717c6 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 16:00:52 +0200
Subject: [PATCH 041/108] fix
Signed-off-by: Pavol Loffay
---
service_mesh/v2x/ossm-reference-jaeger.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/service_mesh/v2x/ossm-reference-jaeger.adoc b/service_mesh/v2x/ossm-reference-jaeger.adoc
index d49aefa046d7..0544d4d4d20b 100644
--- a/service_mesh/v2x/ossm-reference-jaeger.adoc
+++ b/service_mesh/v2x/ossm-reference-jaeger.adoc
@@ -37,7 +37,7 @@ include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
ifdef::openshift-enterprise,openshift-dedicated[]
-For more information about configuring Elasticsearch with {product-title}, see xref:../../logging/config/cluster-logging-log-store.adoc[Configuring the log store] or xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc[Configuring and deploying distributed tracing].
+For more information about configuring Elasticsearch with {product-title}, see xref:../../logging/config/cluster-logging-log-store.adoc[Configuring the log store] or xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc[Configuring and deploying distributed tracing].
//TO DO For information about connecting to an external Elasticsearch instance, see xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#jaeger-config-external-es_jaeger-deploying[Connecting to an existing Elasticsearch instance].
endif::[]
From 6d15f4405ab599b1d690f601cc15d5b4a4da21cd Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 16:25:22 +0200
Subject: [PATCH 042/108] fix
Signed-off-by: Pavol Loffay
---
service_mesh/v2x/ossm-reference-jaeger.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/service_mesh/v2x/ossm-reference-jaeger.adoc b/service_mesh/v2x/ossm-reference-jaeger.adoc
index 0544d4d4d20b..829579e0132c 100644
--- a/service_mesh/v2x/ossm-reference-jaeger.adoc
+++ b/service_mesh/v2x/ossm-reference-jaeger.adoc
@@ -39,7 +39,7 @@ include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
ifdef::openshift-enterprise,openshift-dedicated[]
For more information about configuring Elasticsearch with {product-title}, see xref:../../logging/config/cluster-logging-log-store.adoc[Configuring the log store] or xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc[Configuring and deploying distributed tracing].
-//TO DO For information about connecting to an external Elasticsearch instance, see xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying-jaeger.adoc#jaeger-config-external-es_jaeger-deploying[Connecting to an existing Elasticsearch instance].
+//TO DO For information about connecting to an external Elasticsearch instance, see xref:../../distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc#jaeger-config-external-es_jaeger-deploying[Connecting to an existing Elasticsearch instance].
endif::[]
include::modules/distr-tracing-config-query.adoc[leveloffset=+2]
From 2ca3d42df1fecd9d11bb6c25c08f949e295946dc Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 17:27:18 +0200
Subject: [PATCH 043/108] fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 15 ++++++----
.../distr-tracing-jaeger-installing.adoc | 29 +++++++++++++++++++
distr_tracing/distr_tracing_otel/_attributes | 1 +
.../distr-tracing-otel-configuring.adoc} | 8 ++---
.../distr-tracing-otel-installing.adoc} | 17 ++---------
distr_tracing/distr_tracing_otel/images | 1 +
distr_tracing/distr_tracing_otel/modules | 1 +
distr_tracing/distr_tracing_otel/snippets | 1 +
.../distr-tracing-config-otel-collector.adoc | 2 +-
.../distr-tracing-install-elasticsearch.adoc | 2 +-
...distr-tracing-install-jaeger-operator.adoc | 2 +-
.../distr-tracing-install-otel-operator.adoc | 2 +-
modules/distr-tracing-install-overview.adoc | 2 +-
13 files changed, 54 insertions(+), 29 deletions(-)
create mode 120000 distr_tracing/distr_tracing_otel/_attributes
rename distr_tracing/{distr_tracing_install/distr-tracing-deploying-otel.adoc => distr_tracing_otel/distr-tracing-otel-configuring.adoc} (78%)
rename distr_tracing/{distr_tracing_install/distr-tracing-installing.adoc => distr_tracing_otel/distr-tracing-otel-installing.adoc} (82%)
create mode 120000 distr_tracing/distr_tracing_otel/images
create mode 120000 distr_tracing/distr_tracing_otel/modules
create mode 120000 distr_tracing/distr_tracing_otel/snippets
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index e847316fedf5..a0576e3627b3 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3534,10 +3534,6 @@ Topics:
- Name: Distributed tracing installation
Dir: distr_tracing_install
Topics:
- - Name: Installing distributed tracing
- File: distr-tracing-installing
- - Name: Configuring distributed tracing data collection
- File: distr-tracing-deploying-otel
- Name: Upgrading distributed tracing
File: distr-tracing-updating
- Name: Removing distributed tracing
@@ -3545,10 +3541,17 @@ Topics:
- Name: Distributed tracing platform - Jaeger
Dir: distr_tracing_jaeger
Topics:
- - Name: Installing
+ - Name: Installing Jaeger
File: distr-tracing-jaeger-installing
- - Name: Configuring
+ - Name: Configuring Jaeger
File: distr-tracing-jaeger-configuring
+- Name: Distributed tracing data collection - OpenTelemetry
+ Dir: distr_tracing_otel
+ Topics:
+ - Name: Installing OpenTelemetry
+ File: distr-tracing-otel-installing
+ - Name: Configuring OpenTelemetry
+ File: distr-tracing-otel-configuring
---
Name: Virtualization
Dir: virt
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
index 2ea021040649..dde599c90e22 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
@@ -5,3 +5,32 @@ include::_attributes/common-attributes.adoc[]
:context: install-distributed-tracing
toc::[]
+
+You can install {DTProductName} on {product-title} in either of two ways:
+
+* You can install {DTProductName} as part of {SMProductName}. Distributed tracing is included by default in the Service Mesh installation. To install {DTProductName} as part of a service mesh, follow the xref:../../service_mesh/v2x/preparing-ossm-installation.adoc#preparing-ossm-installation[Red Hat Service Mesh Installation] instructions. You must install {DTProductName} in the same namespace as your service mesh, that is, the `ServiceMeshControlPlane` and the {DTProductName} resources must be in the same namespace.
+
+* If you do not want to install a service mesh, you can use the {DTProductName} Operators to install {DTShortName} by itself. To install {DTProductName} without a service mesh, use the following instructions.
+
+== Prerequisites
+
+Before you can install {DTProductName}, review the installation activities, and ensure that you meet the prerequisites:
+
+* Possess an active {product-title} subscription on your Red Hat account. If you do not have a subscription, contact your sales representative for more information.
+
+* Review the xref:../../architecture/architecture-installation.adoc#installation-overview_architecture-installation[{product-title} {product-version} overview].
+* Install {product-title} {product-version}.
+
+** xref:../../installing/installing_aws/installing-aws-account.adoc#installing-aws-account[Install {product-title} {product-version} on AWS]
+** xref:../../installing/installing_aws/installing-aws-user-infra.adoc#installing-aws-user-infra[Install {product-title} {product-version} on user-provisioned AWS]
+** xref:../../installing/installing_bare_metal/installing-bare-metal.adoc#installing-bare-metal[Install {product-title} {product-version} on bare metal]
+** xref:../../installing/installing_vsphere/installing-vsphere.adoc#installing-vsphere[Install {product-title} {product-version} on vSphere]
+* Install the version of the OpenShift CLI (`oc`) that matches your {product-title} version and add it to your path.
+
+* An account with the `cluster-admin` role.
+
+include::modules/distr-tracing-install-overview.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-install-elasticsearch.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-install-jaeger-operator.adoc[leveloffset=+1]
diff --git a/distr_tracing/distr_tracing_otel/_attributes b/distr_tracing/distr_tracing_otel/_attributes
new file mode 120000
index 000000000000..20cc1dcb77bf
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/_attributes
@@ -0,0 +1 @@
+../../_attributes/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
similarity index 78%
rename from distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
rename to distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
index 0ddc864dc77e..29f5ec98180c 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
@@ -1,12 +1,12 @@
:_content-type: ASSEMBLY
-[id="distr-tracing-deploying-otel"]
-= Configuring and deploying distributed tracing data collection
+[id="distr-tracing-otel-configuring"]
+= Configuring and deploying distributed tracing data collection OpenTelemetry
include::_attributes/common-attributes.adoc[]
-:context: deploying-distr-tracing-data-collection
+:context: deploying-distr-tracing-otel
toc::[]
-The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
+The {OTELName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {OTELName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+1]
diff --git a/distr_tracing/distr_tracing_install/distr-tracing-installing.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
similarity index 82%
rename from distr_tracing/distr_tracing_install/distr-tracing-installing.adoc
rename to distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
index 9a64b8c418e9..7beacbe4cd16 100644
--- a/distr_tracing/distr_tracing_install/distr-tracing-installing.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
@@ -1,8 +1,8 @@
:_content-type: ASSEMBLY
-[id="installing-distributed-tracing"]
-= Installing distributed tracing
+[id="dist-tracing-otel-installing"]
+= Installing distributed tracing data collection OpenTelemetry
include::_attributes/common-attributes.adoc[]
-:context: install-distributed-tracing
+:context: install-distributed-tracing-otel
toc::[]
@@ -29,15 +29,4 @@ Before you can install {DTProductName}, review the installation activities, and
* An account with the `cluster-admin` role.
-include::modules/distr-tracing-install-overview.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-install-elasticsearch.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-install-jaeger-operator.adoc[leveloffset=+1]
-
include::modules/distr-tracing-install-otel-operator.adoc[leveloffset=+1]
-
-////
-== Next steps
-* xref:../../distr_tracing/distr_tracing_install/distr-tracing-deploying.adoc#deploying-distributed-tracing[Deploy {DTProductName}].
-////
diff --git a/distr_tracing/distr_tracing_otel/images b/distr_tracing/distr_tracing_otel/images
new file mode 120000
index 000000000000..e4c5bd02a10a
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/images
@@ -0,0 +1 @@
+../images/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_otel/modules b/distr_tracing/distr_tracing_otel/modules
new file mode 120000
index 000000000000..43aab75b53c9
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/modules
@@ -0,0 +1 @@
+../modules/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_otel/snippets b/distr_tracing/distr_tracing_otel/snippets
new file mode 120000
index 000000000000..5a3f5add140e
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/snippets
@@ -0,0 +1 @@
+../../snippets/
\ No newline at end of file
diff --git a/modules/distr-tracing-config-otel-collector.adoc b/modules/distr-tracing-config-otel-collector.adoc
index 73b8e4d955fd..4c55470ebf5b 100644
--- a/modules/distr-tracing-config-otel-collector.adoc
+++ b/modules/distr-tracing-config-otel-collector.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
--distr_tracing_install/distributed-tracing-deploying-otel.adoc
+-distr_tracing_otel/distr-tracing-otel-configuring.adoc
////
:_content-type: REFERENCE
[id="distr-tracing-config-otel-collector_{context}"]
diff --git a/modules/distr-tracing-install-elasticsearch.adoc b/modules/distr-tracing-install-elasticsearch.adoc
index 822df38406e2..fa3b87fda264 100644
--- a/modules/distr-tracing-install-elasticsearch.adoc
+++ b/modules/distr-tracing-install-elasticsearch.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-install-jaeger-operator.adoc b/modules/distr-tracing-install-jaeger-operator.adoc
index 37bcc6ba7cd7..67480dae5e69 100644
--- a/modules/distr-tracing-install-jaeger-operator.adoc
+++ b/modules/distr-tracing-install-jaeger-operator.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-install-otel-operator.adoc b/modules/distr-tracing-install-otel-operator.adoc
index d85255daa30c..b84ad238ee41 100644
--- a/modules/distr-tracing-install-otel-operator.adoc
+++ b/modules/distr-tracing-install-otel-operator.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_otel/distr-tracing-otel-installing.adoc
////
:_content-type: PROCEDURE
diff --git a/modules/distr-tracing-install-overview.adoc b/modules/distr-tracing-install-overview.adoc
index d082c4e98944..7492aefd2139 100644
--- a/modules/distr-tracing-install-overview.adoc
+++ b/modules/distr-tracing-install-overview.adoc
@@ -1,6 +1,6 @@
////
This module included in the following assemblies:
-- distr_tracing_install/distr-tracing-installing.adoc
+- distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
////
:_content-type: CONCEPT
From fac84c3813c1662079512c5aa883cc321a1cb44b Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 18:40:14 +0200
Subject: [PATCH 044/108] fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 11 +++----
.../distr-tracing-jaeger-removing.adoc | 31 +++++++++++++++++++
.../distr-tracing-jaeger-updating.adoc | 24 ++++++++++++++
3 files changed, 59 insertions(+), 7 deletions(-)
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
create mode 100644 distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index a0576e3627b3..f830331b5066 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3531,13 +3531,6 @@ Topics:
Topics:
- Name: Distributed tracing architecture
File: distr-tracing-architecture
-- Name: Distributed tracing installation
- Dir: distr_tracing_install
- Topics:
- - Name: Upgrading distributed tracing
- File: distr-tracing-updating
- - Name: Removing distributed tracing
- File: distr-tracing-removing
- Name: Distributed tracing platform - Jaeger
Dir: distr_tracing_jaeger
Topics:
@@ -3545,6 +3538,10 @@ Topics:
File: distr-tracing-jaeger-installing
- Name: Configuring Jaeger
File: distr-tracing-jaeger-configuring
+ - Name: Updating Jaeger
+ File: distr-tracing-jaeger-updating
+ - Name: Removing Jaeger
+ File: distr-tracing-jaeger-removing
- Name: Distributed tracing data collection - OpenTelemetry
Dir: distr_tracing_otel
Topics:
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
new file mode 100644
index 000000000000..13b41b03163f
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
@@ -0,0 +1,31 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-jaeger-removing"]
+= Removing distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: remove-distributed-tracing
+
+toc::[]
+
+The steps for removing {DTProductName} from an {product-title} cluster are as follows:
+
+. Shut down any {DTProductName} pods.
+. Remove any {DTProductName} instances.
+. Remove the {JaegerName} Operator.
+. Remove the {OTELName} Operator.
+
+include::modules/distr-tracing-removing-instance.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-removing-instance-cli.adoc[leveloffset=+1]
+
+
+== Removing the {DTProductName} Operators
+
+.Procedure
+
+. Follow the instructions for xref:../../operators/admin/olm-deleting-operators-from-cluster.adoc#olm-deleting-operators-from-a-cluster[Deleting Operators from a cluster].
+
+* Remove the {JaegerName} Operator.
+
+//* Remove the {OTELName} Operator.
+
+* After the {JaegerName} Operator has been removed, if appropriate, remove the OpenShift Elasticsearch Operator.
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
new file mode 100644
index 000000000000..8a471a93a03b
--- /dev/null
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
@@ -0,0 +1,24 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-jaeger-updating"]
+= Updating distributed tracing platform Jaeger
+include::_attributes/common-attributes.adoc[]
+:context: update-distributed-tracing
+
+toc::[]
+
+Operator Lifecycle Manager (OLM) controls the installation, upgrade, and role-based access control (RBAC) of Operators in a cluster. The OLM runs by default in {product-title}.
+OLM queries for available Operators as well as upgrades for installed Operators.
+For more information about how {product-title} handles upgrades, see the xref:../../operators/understanding/olm/olm-understanding-olm.adoc#olm-understanding-olm[Operator Lifecycle Manager] documentation.
+
+During an update, the {DTProductName} Operators upgrade the managed {DTShortName} instances to the version associated with the Operator. Whenever a new version of the {JaegerName} Operator is installed, all the {JaegerShortName} application instances managed by the Operator are upgraded to the Operator's version. For example, after upgrading the Operator from 1.10 installed to 1.11, the Operator scans for running {JaegerShortName} instances and upgrades them to 1.11 as well.
+
+For specific instructions on how to update the OpenShift Elasticsearch Operator, see xref:../../logging/cluster-logging-upgrading.adoc#cluster-logging-upgrading_cluster-logging-upgrading[Updating OpenShift Logging].
+
+include::modules/distr-tracing-change-operator-20.adoc[leveloffset=+1]
+
+[IMPORTANT]
+====
+If you have not already updated your OpenShift Elasticsearch Operator as described in xref:../../logging/cluster-logging-upgrading.adoc[Updating OpenShift Logging] complete that update before updating your {JaegerName} Operator.
+====
+
+For instructions on how to update the Operator channel, see xref:../../operators/admin/olm-upgrading-operators.adoc[Updating installed Operators].
From febb60f8ce460dab88a04bb54a3eb1c2ad0ccc46 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Fri, 30 Jun 2023 22:12:43 +0200
Subject: [PATCH 045/108] fix
Signed-off-by: Pavol Loffay
---
.../distr_tracing_otel/distr-tracing-otel-installing.adoc | 6 ------
1 file changed, 6 deletions(-)
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
index 7beacbe4cd16..736c83b14f76 100644
--- a/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-installing.adoc
@@ -6,12 +6,6 @@ include::_attributes/common-attributes.adoc[]
toc::[]
-You can install {DTProductName} on {product-title} in either of two ways:
-
-* You can install {DTProductName} as part of {SMProductName}. Distributed tracing is included by default in the Service Mesh installation. To install {DTProductName} as part of a service mesh, follow the xref:../../service_mesh/v2x/preparing-ossm-installation.adoc#preparing-ossm-installation[Red Hat Service Mesh Installation] instructions. You must install {DTProductName} in the same namespace as your service mesh, that is, the `ServiceMeshControlPlane` and the {DTProductName} resources must be in the same namespace.
-
-* If you do not want to install a service mesh, you can use the {DTProductName} Operators to install {DTShortName} by itself. To install {DTProductName} without a service mesh, use the following instructions.
-
== Prerequisites
Before you can install {DTProductName}, review the installation activities, and ensure that you meet the prerequisites:
From a116e622ed6dd45d6586906106f54a9b770ca9c8 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 4 Jul 2023 19:08:27 +0200
Subject: [PATCH 046/108] Fix
Signed-off-by: Pavol Loffay
---
_topic_maps/_topic_map.yml | 4 ++--
modules/distr-tracing-accessing-jaeger-console.adoc | 1 -
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index f830331b5066..1e181716d6bc 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3531,7 +3531,7 @@ Topics:
Topics:
- Name: Distributed tracing architecture
File: distr-tracing-architecture
-- Name: Distributed tracing platform - Jaeger
+- Name: Distributed tracing platform (Jaeger)
Dir: distr_tracing_jaeger
Topics:
- Name: Installing Jaeger
@@ -3542,7 +3542,7 @@ Topics:
File: distr-tracing-jaeger-updating
- Name: Removing Jaeger
File: distr-tracing-jaeger-removing
-- Name: Distributed tracing data collection - OpenTelemetry
+- Name: Distributed tracing data collection (OpenTelemetry)
Dir: distr_tracing_otel
Topics:
- Name: Installing OpenTelemetry
diff --git a/modules/distr-tracing-accessing-jaeger-console.adoc b/modules/distr-tracing-accessing-jaeger-console.adoc
index 8b3568427a7f..d098f475127a 100644
--- a/modules/distr-tracing-accessing-jaeger-console.adoc
+++ b/modules/distr-tracing-accessing-jaeger-console.adoc
@@ -1,6 +1,5 @@
////
Module included in the following assemblies:
-* distr_tracing/distr_tracing_install/distr-tracing-deploying-otel.adoc
* distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
////
:_content-type: PROCEDURE
From bb0fdf038ad15e60f9e5cd2f0e3b2584ebced7fd Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 4 Jul 2023 19:10:27 +0200
Subject: [PATCH 047/108] Fix
Signed-off-by: Pavol Loffay
---
.../distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc | 2 --
1 file changed, 2 deletions(-)
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
index bab8b79d7464..1198b62b589e 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
@@ -74,8 +74,6 @@ include::modules/distr-tracing-config-default.adoc[leveloffset=+2]
include::modules/distr-tracing-config-jaeger-collector.adoc[leveloffset=+2]
-//include::modules/distr-tracing-config-otel-collector.adoc[leveloffset=+2]
-
include::modules/distr-tracing-config-sampling.adoc[leveloffset=+2]
include::modules/distr-tracing-config-storage.adoc[leveloffset=+2]
From 9204dbf888ba27b5c41701921df918993a088308 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 14 Jul 2023 16:57:52 +0200
Subject: [PATCH 048/108] initial changes to update the product versions for
the distributed tracing component v2.9
---
_attributes/common-attributes.adoc | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index a8382eb3b469..af56a8128e51 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -126,16 +126,16 @@ endif::[]
//distributed tracing
:DTProductName: Red Hat OpenShift distributed tracing
:DTShortName: distributed tracing
-:DTProductVersion: 2.8
+:DTProductVersion: 2.9
:JaegerName: Red Hat OpenShift distributed tracing platform
:JaegerShortName: distributed tracing platform
-:JaegerVersion: 1.42.0
+:JaegerVersion: 1.??.0
:OTELName: Red Hat OpenShift distributed tracing data collection
:OTELShortName: distributed tracing data collection
-:OTELVersion: 0.74.0
+:OTELVersion: 0.??.0
:TempoName: Tempo Operator
:TempoShortName: Tempo
-:TempoVersion: 0.1.0
+:TempoVersion: 0.?.0
//logging
:logging-title: logging subsystem for Red Hat OpenShift
:logging-title-uc: Logging subsystem for Red Hat OpenShift
From 1e75fe855011376acb598c8e70ccf4b1ec95a97b Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 18 Jul 2023 16:57:49 +0200
Subject: [PATCH 049/108] add initial content (to be rewrriten) about removing
Tempo, https://issues.redhat.com/browse/TRACING-3294
---
distr_tracing/distr_tracing_tempo/_attributes | 1 +
.../distr-tracing-tempo-removing.adoc | 31 +++++++
distr_tracing/distr_tracing_tempo/images | 1 +
distr_tracing/distr_tracing_tempo/modules | 1 +
distr_tracing/distr_tracing_tempo/snippets | 1 +
...r-tracing-removing-tempo-instance-cli.adoc | 89 +++++++++++++++++++
...distr-tracing-removing-tempo-instance.adoc | 28 ++++++
7 files changed, 152 insertions(+)
create mode 120000 distr_tracing/distr_tracing_tempo/_attributes
create mode 100644 distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
create mode 120000 distr_tracing/distr_tracing_tempo/images
create mode 120000 distr_tracing/distr_tracing_tempo/modules
create mode 120000 distr_tracing/distr_tracing_tempo/snippets
create mode 100644 modules/distr-tracing-removing-tempo-instance-cli.adoc
create mode 100644 modules/distr-tracing-removing-tempo-instance.adoc
diff --git a/distr_tracing/distr_tracing_tempo/_attributes b/distr_tracing/distr_tracing_tempo/_attributes
new file mode 120000
index 000000000000..20cc1dcb77bf
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/_attributes
@@ -0,0 +1 @@
+../../_attributes/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
new file mode 100644
index 000000000000..449352153a38
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
@@ -0,0 +1,31 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-tempo-removing"]
+= Removing distributed tracing platform Tempo
+include::_attributes/common-attributes.adoc[]
+:context: remove-distributed-tracing
+
+toc::[]
+
+The steps for removing {DTProductName} from an {product-title} cluster are as follows:
+
+. Shut down any {DTProductName} pods.
+. Remove any {DTProductName} instances.
+. Remove the {TempoName} Operator.
+. Remove the {OTELName} Operator.
+
+include::modules/distr-tracing-removing-tempo-instance.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-removing-tempo-instance-cli.adoc[leveloffset=+1]
+
+
+== Removing the {DTProductName} Operators
+
+.Procedure
+
+. Follow the instructions for xref:../../operators/admin/olm-deleting-operators-from-cluster.adoc#olm-deleting-operators-from-a-cluster[Deleting Operators from a cluster].
+
+* Remove the {TempoName} Operator.
+
+//* Remove the {OTELName} Operator.
+
+* After the {TempoName} Operator has been removed, if appropriate, remove the OpenShift Elasticsearch Operator.
diff --git a/distr_tracing/distr_tracing_tempo/images b/distr_tracing/distr_tracing_tempo/images
new file mode 120000
index 000000000000..e4c5bd02a10a
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/images
@@ -0,0 +1 @@
+../images/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_tempo/modules b/distr_tracing/distr_tracing_tempo/modules
new file mode 120000
index 000000000000..43aab75b53c9
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/modules
@@ -0,0 +1 @@
+../modules/
\ No newline at end of file
diff --git a/distr_tracing/distr_tracing_tempo/snippets b/distr_tracing/distr_tracing_tempo/snippets
new file mode 120000
index 000000000000..5a3f5add140e
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/snippets
@@ -0,0 +1 @@
+../../snippets/
\ No newline at end of file
diff --git a/modules/distr-tracing-removing-tempo-instance-cli.adoc b/modules/distr-tracing-removing-tempo-instance-cli.adoc
new file mode 100644
index 000000000000..8ae2f8aee864
--- /dev/null
+++ b/modules/distr-tracing-removing-tempo-instance-cli.adoc
@@ -0,0 +1,89 @@
+//Module included in the following assemblies:
+//
+//* distr_tracing_install/dist-tracing-tempo-removing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-removing-tempo-instance-cli_{context}"]
+= Removing a {TempoName} instance from the CLI
+
+. Log in to the {product-title} CLI.
++
+[source,terminal]
+----
+$ oc login --username=
+----
++
+. To display the {TempoShortName} instances run the command:
++
+[source,terminal]
+----
+$ oc get deployments -n
+----
++
+For example,
++
+[source,terminal]
+----
+$ oc get deployments -n openshift-operators
+----
++
+The names of Operators have the suffix `-operator`. The following example shows two {TempoName} Operators and four {TempoShortName} instances:
++
+[source,terminal]
+----
+$ oc get deployments -n openshift-operators
+----
++
+You should see output similar to the following:
++
+[source,terminal]
+----
+NAME READY UP-TO-DATE AVAILABLE AGE
+elasticsearch-operator 1/1 1 1 93m
+tempo-operator 1/1 1 1 49m
+tempo-test 1/1 1 1 7m23s
+tempo-test2 1/1 1 1 6m48s
+tracing1 1/1 1 1 7m8s
+tracing2 1/1 1 1 35m
+----
++
+. To remove an instance of {TempoShortName}, run the following command:
++
+[source,terminal]
+----
+$ oc delete tempo -n
+----
++
+For example:
++
+[source,terminal]
+----
+$ oc delete tempo tracing2 -n openshift-operators
+----
++
+
+. To verify the deletion, run the `oc get deployments` command again:
++
+[source,terminal]
+----
+$ oc get deployments -n
+----
+
++
+For example:
++
+[source,terminal]
+----
+$ oc get deployments -n openshift-operators
+----
++
+You should see generated output that is similar to the following example:
++
+[source,terminal]
+----
+NAME READY UP-TO-DATE AVAILABLE AGE
+tempo-operator 1/1 1 1 50m
+tempo-test 1/1 1 1 8m14s
+tempo-test2 1/1 1 1 7m39s
+tracing1 1/1 1 1 7m59s
+----
diff --git a/modules/distr-tracing-removing-tempo-instance.adoc b/modules/distr-tracing-removing-tempo-instance.adoc
new file mode 100644
index 000000000000..5c1ff099cab9
--- /dev/null
+++ b/modules/distr-tracing-removing-tempo-instance.adoc
@@ -0,0 +1,28 @@
+//Module included in the following assemblies:
+//
+//* distr_tracing_install/dist-tracing-tempo-removing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-removing-tempo-instance_{context}"]
+= Removing a {TempoName} instance using the web console
+
+[NOTE]
+====
+When deleting an instance that uses the in-memory storage, all data is permanently lost. Data stored in a persistent storage such as Elasticsearch is not be deleted when a {TempoName} instance is removed.
+====
+
+.Procedure
+
+. Log in to the {product-title} web console.
+
+. Navigate to *Operators* -> *Installed Operators*.
+
+. Select the name of the project where the Operators are installed from the *Project* menu, for example, `openshift-operators`.
+
+. Click the {TempoName} Operator.
+
+. Click the *Tempo* tab.
+
+. Click the Options menu {kebab} next to the instance you want to delete and select *Delete Tempo*.
+
+. In the confirmation message, click *Delete*.
From 643a0858ac592f9d5edd14149945029ecbb612be Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 18 Jul 2023 17:55:42 +0200
Subject: [PATCH 050/108] add initial content (to be rewrriten) about updating
Tempo, https://issues.redhat.com/browse/TRACING-3295 (plus a context fix for
https://issues.redhat.com/browse/TRACING-3294)
---
.../distr-tracing-tempo-removing.adoc | 2 +-
.../distr-tracing-tempo-updating.adoc | 24 +++++++++++++++++++
...istr-tracing-tempo-change-operator-20.adoc | 22 +++++++++++++++++
3 files changed, 47 insertions(+), 1 deletion(-)
create mode 100644 distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc
create mode 100644 modules/distr-tracing-tempo-change-operator-20.adoc
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
index 449352153a38..c903281836a0 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-removing.adoc
@@ -2,7 +2,7 @@
[id="dist-tracing-tempo-removing"]
= Removing distributed tracing platform Tempo
include::_attributes/common-attributes.adoc[]
-:context: remove-distributed-tracing
+:context: dist-tracing-tempo-removing
toc::[]
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc
new file mode 100644
index 000000000000..d38b16551cc1
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-updating.adoc
@@ -0,0 +1,24 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-tempo-updating"]
+= Updating distributed tracing platform Tempo
+include::_attributes/common-attributes.adoc[]
+:context: dist-tracing-tempo-updating
+
+toc::[]
+
+Operator Lifecycle Manager (OLM) controls the installation, upgrade, and role-based access control (RBAC) of Operators in a cluster. The OLM runs by default in {product-title}.
+OLM queries for available Operators as well as upgrades for installed Operators.
+For more information about how {product-title} handles upgrades, see the xref:../../operators/understanding/olm/olm-understanding-olm.adoc#olm-understanding-olm[Operator Lifecycle Manager] documentation.
+
+During an update, the {DTProductName} Operators upgrade the managed {DTShortName} instances to the version associated with the Operator. Whenever a new version of the {TempoName} Operator is installed, all the {TempoShortName} application instances managed by the Operator are upgraded to the Operator's version. For example, after upgrading the Operator from 1.10 installed to 1.11, the Operator scans for running {TempoShortName} instances and upgrades them to 1.11 as well.
+
+For specific instructions on how to update the OpenShift Elasticsearch Operator, see xref:../../logging/cluster-logging-upgrading.adoc#cluster-logging-upgrading_cluster-logging-upgrading[Updating OpenShift Logging].
+
+include::modules/distr-tracing-tempo-change-operator-20.adoc[leveloffset=+1]
+
+[IMPORTANT]
+====
+If you have not already updated your OpenShift Elasticsearch Operator as described in xref:../../logging/cluster-logging-upgrading.adoc[Updating OpenShift Logging] complete that update before updating your {TempoName} Operator.
+====
+
+For instructions on how to update the Operator channel, see xref:../../operators/admin/olm-upgrading-operators.adoc[Updating installed Operators].
diff --git a/modules/distr-tracing-tempo-change-operator-20.adoc b/modules/distr-tracing-tempo-change-operator-20.adoc
new file mode 100644
index 000000000000..3c5757e5f00f
--- /dev/null
+++ b/modules/distr-tracing-tempo-change-operator-20.adoc
@@ -0,0 +1,22 @@
+// Module included in the following assemblies:
+//
+// * dist_tracing/dist_tracing_install/dist-tracing-tempo-updating.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-changing-operator-channel_{context}"]
+= Changing the Operator channel for 2.0
+
+{DTProductName} 2.0.0 made the following changes:
+
+* Renamed the Red Hat OpenShift Jaeger Operator to the {JaegerName} Operator.
+
+* Stopped support for individual release channels. Going forward, the {JaegerName} Operator will only support the *stable* Operator channel. Maintenance channels, for example *1.24-stable*, will no longer be supported by future Operators.
+
+As part of the update to version 2.0, you must update your OpenShift Elasticsearch and {JaegerName} Operator subscriptions.
+
+.Prerequisites
+
+* The {product-title} version is 4.6 or later.
+* You have updated the OpenShift Elasticsearch Operator.
+* You have backed up the Jaeger custom resource file.
+* An account with the `cluster-admin` role. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
From 5fc1969fc16fd08e1060dae36d8c20c5b54cd1d9 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 19 Jul 2023 16:32:27 +0200
Subject: [PATCH 051/108] add initial content (to be rewrriten) about
configuring Tempo, https://issues.redhat.com/browse/TRACING-3304
---
.../distr-tracing-tempo-configuring.adoc | 83 ++
modules/distr-tracing-sidecar-automatic.adoc | 39 -
modules/distr-tracing-sidecar-manual.adoc | 58 --
...distr-tracing-tempo-accessing-console.adoc | 60 ++
.../distr-tracing-tempo-config-collector.adoc | 66 ++
.../distr-tracing-tempo-config-default.adoc | 123 +++
.../distr-tracing-tempo-config-ingester.adoc | 76 ++
modules/distr-tracing-tempo-config-query.adoc | 67 ++
.../distr-tracing-tempo-config-sampling.adoc | 99 +++
.../distr-tracing-tempo-config-storage.adoc | 728 ++++++++++++++++++
.../distr-tracing-tempo-deploy-default.adoc | 115 +++
...tr-tracing-tempo-deploy-production-es.adoc | 136 ++++
.../distr-tracing-tempo-deploy-streaming.adoc | 155 ++++
...acing-tempo-deployment-best-practices.adoc | 15 +
14 files changed, 1723 insertions(+), 97 deletions(-)
create mode 100644 distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
delete mode 100644 modules/distr-tracing-sidecar-automatic.adoc
delete mode 100644 modules/distr-tracing-sidecar-manual.adoc
create mode 100644 modules/distr-tracing-tempo-accessing-console.adoc
create mode 100644 modules/distr-tracing-tempo-config-collector.adoc
create mode 100644 modules/distr-tracing-tempo-config-default.adoc
create mode 100644 modules/distr-tracing-tempo-config-ingester.adoc
create mode 100644 modules/distr-tracing-tempo-config-query.adoc
create mode 100644 modules/distr-tracing-tempo-config-sampling.adoc
create mode 100644 modules/distr-tracing-tempo-config-storage.adoc
create mode 100644 modules/distr-tracing-tempo-deploy-default.adoc
create mode 100644 modules/distr-tracing-tempo-deploy-production-es.adoc
create mode 100644 modules/distr-tracing-tempo-deploy-streaming.adoc
create mode 100644 modules/distr-tracing-tempo-deployment-best-practices.adoc
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
new file mode 100644
index 000000000000..a8312586e757
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
@@ -0,0 +1,83 @@
+:_content-type: ASSEMBLY
+[id="distr-tracing-tempo-configuring"]
+= Configuring and deploying distributed tracing platform Tempo
+include::_attributes/common-attributes.adoc[]
+:context: distr-tracing-tempo-configuring
+
+toc::[]
+
+The {TempoName} Operator uses a custom resource definition (CRD) file that defines the architecture and configuration settings to be used when creating and deploying the {TempoShortName} resources. You can either install the default configuration or modify the file to better suit your business requirements.
+
+{TempoName} has predefined deployment strategies. You specify a deployment strategy in the custom resource file. When you create a {TempoShortName} instance the Operator uses this configuration file to create the objects necessary for the deployment.
+
+.Tempo custom resource file showing deployment strategy
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: MyConfigFile
+spec:
+ strategy: production <1>
+----
+
+<1> The {TempoName} Operator currently supports the following deployment strategies:
+
+* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
++
+[NOTE]
+====
+In-memory storage is not persistent, which means that if the {TempoShortName} instance shuts down, restarts, or is replaced, that your trace data will be lost. And in-memory storage cannot be scaled, since each pod has its own memory. For persistent storage, you must use the `production` or `streaming` strategies, which use Elasticsearch as the default storage.
+====
+
+* *production* - The production strategy is intended for production environments, where long term storage of trace data is important, as well as a more scalable and highly available architecture is required. Each of the backend components is therefore deployed separately. The Agent can be injected as a sidecar on the instrumented application. The Query and Collector services are configured with a supported storage type - currently Elasticsearch. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
+
+* *streaming* - The streaming strategy is designed to augment the production strategy by providing a streaming capability that effectively sits between the Collector and the Elasticsearch backend storage. This provides the benefit of reducing the pressure on the backend storage, under high load situations, and enables other trace post-processing capabilities to tap into the real time span data directly from the streaming platform (https://access.redhat.com/documentation/en-us/red_hat_amq/7.6/html/using_amq_streams_on_openshift/index[AMQ Streams]/ https://kafka.apache.org/documentation/[Kafka]).
++
+[NOTE]
+====
+The streaming strategy requires an additional Red Hat subscription for AMQ Streams.
+====
+
+[NOTE]
+====
+The streaming deployment strategy is currently unsupported on {ibmzProductName}.
+====
+
+[NOTE]
+====
+There are two ways to install and use {DTProductName}, as part of a service mesh or as a stand alone component. If you have installed {DTShortName} as part of {SMProductName}, you can perform basic configuration as part of the xref:../../service_mesh/v2x/installing-ossm.adoc#installing-ossm[ServiceMeshControlPlane] but for completely control you should configure a Tempo CR and then xref:../../service_mesh/v2x/ossm-observability.html#ossm-config-external-tempo_observability[reference your distributed tracing configuration file in the ServiceMeshControlPlane].
+
+====
+
+include::modules/distr-tracing-tempo-deploy-default.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-tempo-deploy-production-es.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-tempo-deploy-streaming.adoc[leveloffset=+1]
+
+[id="validating-your-tempo-deployment"]
+== Validating your deployment
+
+include::modules/distr-tracing-tempo-accessing-console.adoc[leveloffset=+2]
+
+[id="customizing-your-deployment"]
+== Customizing your deployment
+
+include::modules/distr-tracing-tempo-deployment-best-practices.adoc[leveloffset=+2]
+
+ifdef::openshift-enterprise,openshift-dedicated[]
+For information about configuring persistent storage, see xref:../../storage/understanding-persistent-storage.adoc[Understanding persistent storage] and the appropriate configuration topic for your chosen storage option.
+endif::[]
+
+include::modules/distr-tracing-tempo-config-default.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-tempo-config-collector.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-tempo-config-sampling.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-tempo-config-storage.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-tempo-config-query.adoc[leveloffset=+2]
+
+include::modules/distr-tracing-tempo-config-ingester.adoc[leveloffset=+2]
diff --git a/modules/distr-tracing-sidecar-automatic.adoc b/modules/distr-tracing-sidecar-automatic.adoc
deleted file mode 100644
index 67713554a81e..000000000000
--- a/modules/distr-tracing-sidecar-automatic.adoc
+++ /dev/null
@@ -1,39 +0,0 @@
-////
-This module included in the following assemblies:
-- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
-////
-:_content-type: REFERENCE
-[id="dist-tracing-sidecar-automatic_{context}"]
-= Automatically injecting sidecars
-
-The {JaegerName} Operator can inject Jaeger Agent sidecars into Deployment workloads. To enable automatic injection of sidecars, add the `sidecar.jaegertracing.io/inject` annotation set to either the string `true` or to the {JaegerShortName} instance name that is returned by running `$ oc get jaegers`.
-When you specify `true`, there should be only a single {JaegerShortName} instance for the same namespace as the deployment, otherwise, the Operator cannot determine which {JaegerShortName} instance to use. A specific {JaegerShortName} instance name on a deployment has a higher precedence than `true` applied on its namespace.
-
-The following snippet shows a simple application that will inject a sidecar, with the agent pointing to the single {JaegerShortName} instance available in the same namespace:
-
-.Automatic sidecar injection example
-[source,yaml]
-----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: myapp
- annotations:
- "sidecar.jaegertracing.io/inject": "true" # <1>
-spec:
- selector:
- matchLabels:
- app: myapp
- template:
- metadata:
- labels:
- app: myapp
- spec:
- containers:
- - name: myapp
- image: acme/myapp:myversion
-----
-
-<1> Set to either the string `true` or to the Jaeger instance name.
-
-When the sidecar is injected, the agent can then be accessed at its default location on `localhost`.
diff --git a/modules/distr-tracing-sidecar-manual.adoc b/modules/distr-tracing-sidecar-manual.adoc
deleted file mode 100644
index be79e87505dc..000000000000
--- a/modules/distr-tracing-sidecar-manual.adoc
+++ /dev/null
@@ -1,58 +0,0 @@
-////
-This module included in the following assemblies:
-- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
-////
-:_content-type: REFERENCE
-[id="distr-tracing-sidecar-manual_{context}"]
-= Manually injecting sidecars
-
-
-The {JaegerName} Operator can only automatically inject Jaeger Agent sidecars into Deployment workloads. For controller types other than `Deployments`, such as `StatefulSets`and `DaemonSets`, you can manually define the Jaeger agent sidecar in your specification.
-
-The following snippet shows the manual definition you can include in your containers section for a Jaeger agent sidecar:
-
-.Sidecar definition example for a `StatefulSet`
-[source,yaml]
-----
-apiVersion: apps/v1
-kind: StatefulSet
-metadata:
- name: example-statefulset
- namespace: example-ns
- labels:
- app: example-app
-spec:
-
- spec:
- containers:
- - name: example-app
- image: acme/myapp:myversion
- ports:
- - containerPort: 8080
- protocol: TCP
- - name: jaeger-agent
- image: registry.redhat.io/distributed-tracing/jaeger-agent-rhel7:
- # The agent version must match the Operator version
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 5775
- name: zk-compact-trft
- protocol: UDP
- - containerPort: 5778
- name: config-rest
- protocol: TCP
- - containerPort: 6831
- name: jg-compact-trft
- protocol: UDP
- - containerPort: 6832
- name: jg-binary-trft
- protocol: UDP
- - containerPort: 14271
- name: admin-http
- protocol: TCP
- args:
- - --reporter.grpc.host-port=dns:///jaeger-collector-headless.example-ns:14250
- - --reporter.type=grpc
-----
-
-The agent can then be accessed at its default location on localhost.
diff --git a/modules/distr-tracing-tempo-accessing-console.adoc b/modules/distr-tracing-tempo-accessing-console.adoc
new file mode 100644
index 000000000000..8cbafbb737a2
--- /dev/null
+++ b/modules/distr-tracing-tempo-accessing-console.adoc
@@ -0,0 +1,60 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-accessing-console_{context}"]
+= Accessing the Tempo console
+
+To access the Tempo console you must have either {SMProductName} or {DTProductName} installed, and {TempoName} installed, configured, and deployed.
+
+The installation process creates a route to access the Tempo console.
+
+If you know the URL for the Tempo console, you can access it directly. If you do not know the URL, use the following directions.
+
+.Procedure from OpenShift console
+. Log in to the {product-title} web console as a user with cluster-admin rights. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
+
+. Navigate to *Networking* -> *Routes*.
+
+. On the *Routes* page, select the control plane project, for example `tracing-system`, from the *Namespace* menu.
++
+The *Location* column displays the linked address for each route.
++
+. If necessary, use the filter to find the `tempo` route. Click the route *Location* to launch the console.
+
+. Click *Log In With OpenShift*.
+
+////
+.Procedure from Kiali console
+
+. Launch the Kiali console.
+
+. Click *Distributed Tracing* in the left navigation pane.
+
+. Click *Log In With OpenShift*.
+////
+
+.Procedure from the CLI
+
+. Log in to the {product-title} CLI as a user with the `cluster-admin` role. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
++
+[source,terminal]
+----
+$ oc login --username= https://:6443
+----
++
+. To query for details of the route using the command line, enter the following command. In this example, `tracing-system` is the control plane namespace.
++
+[source,terminal]
+----
+$ export TEMPO_URL=$(oc get route -n tracing-system tempo -o jsonpath='{.spec.host}')
+----
++
+. Launch a browser and navigate to ``\https://``, where `` is the route that you discovered in the previous step.
+
+. Log in using the same user name and password that you use to access the {Product-title} console.
+
+. If you have added services to the service mesh and have generated traces, you can use the filters and *Find Traces* button to search your trace data.
++
+If you are validating the console installation, there is no trace data to display.
diff --git a/modules/distr-tracing-tempo-config-collector.adoc b/modules/distr-tracing-tempo-config-collector.adoc
new file mode 100644
index 000000000000..c9b08c5e2a15
--- /dev/null
+++ b/modules/distr-tracing-tempo-config-collector.adoc
@@ -0,0 +1,66 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: REFERENCE
+[id="distr-tracing-tempo-config-collector_{context}"]
+= Tempo Collector configuration options
+
+The Tempo Collector is the component responsible for receiving the spans that were captured by the tracer and writing them to persistent Elasticsearch storage when using the `production` strategy, or to AMQ Streams when using the `streaming` strategy.
+
+The Collectors are stateless and thus many instances of Tempo Collector can be run in parallel. Collectors require almost no configuration, except for the location of the Elasticsearch cluster.
+
+.Parameters used by the Operator to define the Tempo Collector
+[options="header"]
+[cols="l, a, a"]
+|===
+|Parameter |Description |Values
+|collector:
+ replicas:
+|Specifies the number of Collector replicas to create.
+|Integer, for example, `5`
+|===
+
+
+.Configuration parameters passed to the Collector
+[options="header"]
+[cols="l, a, a"]
+|===
+|Parameter |Description |Values
+|spec:
+ collector:
+ options: {}
+|Configuration options that define the Tempo Collector.
+|
+
+|options:
+ collector:
+ num-workers:
+|The number of workers pulling from the queue.
+|Integer, for example, `50`
+
+|options:
+ collector:
+ queue-size:
+|The size of the Collector queue.
+|Integer, for example, `2000`
+
+|options:
+ kafka:
+ producer:
+ topic: tempo-spans
+|The `topic` parameter identifies the Kafka configuration used by the Collector to produce the messages, and the Ingester to consume the messages.
+|Label for the producer.
+
+|options:
+ kafka:
+ producer:
+ brokers: my-cluster-kafka-brokers.kafka:9092
+|Identifies the Kafka configuration used by the Collector to produce the messages. If brokers are not specified, and you have AMQ Streams 1.4.0+ installed, the {TempoName} Operator will self-provision Kafka.
+|
+
+|options:
+ log-level:
+|Logging level for the Collector.
+|Possible values: `debug`, `info`, `warn`, `error`, `fatal`, `panic`.
+|===
diff --git a/modules/distr-tracing-tempo-config-default.adoc b/modules/distr-tracing-tempo-config-default.adoc
new file mode 100644
index 000000000000..65f03066bf34
--- /dev/null
+++ b/modules/distr-tracing-tempo-config-default.adoc
@@ -0,0 +1,123 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: REFERENCE
+[id="distr-tracing-tempo-config-default_{context}"]
+= Distributed tracing default configuration options
+
+The Tempo custom resource (CR) defines the architecture and settings to be used when creating the {TempoShortName} resources. You can modify these parameters to customize your {TempoShortName} implementation to your business needs.
+
+.Tempo generic YAML example
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: name
+spec:
+ strategy:
+ allInOne:
+ options: {}
+ resources: {}
+ agent:
+ options: {}
+ resources: {}
+ collector:
+ options: {}
+ resources: {}
+ sampling:
+ options: {}
+ storage:
+ type:
+ options: {}
+ query:
+ options: {}
+ resources: {}
+ ingester:
+ options: {}
+ resources: {}
+ options: {}
+----
+
+.Tempo parameters
+[options="header"]
+|===
+|Parameter |Description |Values |Default value
+
+|`apiVersion:`
+||API version to use when creating the object.
+|`tempotracing.io/v1`
+|`tempotracing.io/v1`
+
+|`kind:`
+|Defines the kind of Kubernetes object to create.
+|`tempo`
+|
+
+|`metadata:`
+|Data that helps uniquely identify the object, including a `name` string, `UID`, and optional `namespace`.
+|
+|{product-title} automatically generates the `UID` and completes the `namespace` with the name of the project where the object is created.
+
+|`name:`
+|Name for the object.
+|The name of your {TempoShortName} instance.
+|`tempo-all-in-one-inmemory`
+
+|`spec:`
+|Specification for the object to be created.
+|Contains all of the configuration parameters for your {TempoShortName} instance. When a common definition for all Tempo components is required, it is defined under the `spec` node. When the definition relates to an individual component, it is placed under the `spec/` node.
+|N/A
+
+|`strategy:`
+|Tempo deployment strategy
+|`allInOne`, `production`, or `streaming`
+|`allInOne`
+
+|`allInOne:`
+|Because the `allInOne` image deploys the Agent, Collector, Query, Ingester, and Tempo UI in a single pod, configuration for this deployment must nest component configuration under the `allInOne` parameter.
+|
+|
+
+|`agent:`
+|Configuration options that define the Agent.
+|
+|
+
+|`collector:`
+|Configuration options that define the Tempo Collector.
+|
+|
+
+|`sampling:`
+|Configuration options that define the sampling strategies for tracing.
+|
+|
+
+|`storage:`
+|Configuration options that define the storage. All storage-related options must be placed under `storage`, rather than under the `allInOne` or other component options.
+|
+|
+
+|`query:`
+|Configuration options that define the Query service.
+|
+|
+
+|`ingester:`
+|Configuration options that define the Ingester service.
+|
+|
+|===
+
+The following example YAML is the minimum required to create a {TempoName} deployment using the default settings.
+
+.Example minimum required dist-tracing-all-in-one.yaml
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: tempo-all-in-one-inmemory
+----
diff --git a/modules/distr-tracing-tempo-config-ingester.adoc b/modules/distr-tracing-tempo-config-ingester.adoc
new file mode 100644
index 000000000000..4d56ba6e3de8
--- /dev/null
+++ b/modules/distr-tracing-tempo-config-ingester.adoc
@@ -0,0 +1,76 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: REFERENCE
+[id="distr-tracing-tempo-config-ingester_{context}"]
+= Ingester configuration options
+
+Ingester is a service that reads from a Kafka topic and writes to the Elasticsearch storage backend. If you are using the `allInOne` or `production` deployment strategies, you do not need to configure the Ingester service.
+
+.Tempo parameters passed to the Ingester
+[options="header"]
+[cols="l, a, a"]
+|===
+|Parameter |Description |Values
+|spec:
+ ingester:
+ options: {}
+|Configuration options that define the Ingester service.
+|
+
+|options:
+ deadlockInterval:
+|Specifies the interval, in seconds or minutes, that the Ingester must wait for a message before terminating.
+The deadlock interval is disabled by default (set to `0`), to avoid terminating the Ingester when no messages arrive during system initialization.
+|Minutes and seconds, for example, `1m0s`. Default value is `0`.
+
+|options:
+ kafka:
+ consumer:
+ topic:
+|The `topic` parameter identifies the Kafka configuration used by the collector to produce the messages, and the Ingester to consume the messages.
+|Label for the consumer. For example, `tempo-spans`.
+
+|options:
+ kafka:
+ consumer:
+ brokers:
+|Identifies the Kafka configuration used by the Ingester to consume the messages.
+|Label for the broker, for example, `my-cluster-kafka-brokers.kafka:9092`.
+
+|options:
+ log-level:
+|Logging level for the Ingester.
+|Possible values: `debug`, `info`, `warn`, `error`, `fatal`, `dpanic`, `panic`.
+|===
+
+.Streaming Collector and Ingester example
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: simple-streaming
+spec:
+ strategy: streaming
+ collector:
+ options:
+ kafka:
+ producer:
+ topic: tempo-spans
+ brokers: my-cluster-kafka-brokers.kafka:9092
+ ingester:
+ options:
+ kafka:
+ consumer:
+ topic: tempo-spans
+ brokers: my-cluster-kafka-brokers.kafka:9092
+ ingester:
+ deadlockInterval: 5
+ storage:
+ type: elasticsearch
+ options:
+ es:
+ server-urls: http://elasticsearch:9200
+----
diff --git a/modules/distr-tracing-tempo-config-query.adoc b/modules/distr-tracing-tempo-config-query.adoc
new file mode 100644
index 000000000000..2daf364b041f
--- /dev/null
+++ b/modules/distr-tracing-tempo-config-query.adoc
@@ -0,0 +1,67 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: REFERENCE
+[id="distr-tracing-tempo-config-query_{context}"]
+= Query configuration options
+
+Query is a service that retrieves traces from storage and hosts the user interface to display them.
+
+.Parameters used by the {TempoName} Operator to define Query
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+
+|spec:
+ query:
+ replicas:
+|Specifies the number of Query replicas to create.
+|Integer, for example, `2`
+|
+|===
+
+
+.Configuration parameters passed to Query
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+
+|spec:
+ query:
+ options: {}
+|Configuration options that define the Query service.
+|
+|
+
+|options:
+ log-level:
+|Logging level for Query.
+|Possible values: `debug`, `info`, `warn`, `error`, `fatal`, `panic`.
+|
+
+|options:
+ query:
+ base-path:
+|The base path for all tempo-query HTTP routes can be set to a non-root value, for example, `/tempo` would cause all UI URLs to start with `/tempo`. This can be useful when running tempo-query behind a reverse proxy.
+|/
+|
+|===
+
+.Sample Query configuration
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: "Tempo"
+metadata:
+ name: "my-tempo"
+spec:
+ strategy: allInOne
+ allInOne:
+ options:
+ log-level: debug
+ query:
+ base-path: /tempo
+----
diff --git a/modules/distr-tracing-tempo-config-sampling.adoc b/modules/distr-tracing-tempo-config-sampling.adoc
new file mode 100644
index 000000000000..df6e598c3ad8
--- /dev/null
+++ b/modules/distr-tracing-tempo-config-sampling.adoc
@@ -0,0 +1,99 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: REFERENCE
+[id="distr-tracing-tempo-config-sampling_{context}"]
+= Distributed tracing sampling configuration options
+
+The {TempoName} Operator can be used to define sampling strategies that will be supplied to tracers that have been configured to use a remote sampler.
+
+While all traces are generated, only a few are sampled. Sampling a trace marks the trace for further processing and storage.
+
+[NOTE]
+====
+This is not relevant if a trace was started by the Envoy proxy, as the sampling decision is made there. The Tempo sampling decision is only relevant when the trace is started by an application using the client.
+====
+
+When a service receives a request that contains no trace context, the client starts a new trace, assigns it a random trace ID, and makes a sampling decision based on the currently installed sampling strategy. The sampling decision propagates to all subsequent requests in the trace so that other services are not making the sampling decision again.
+
+{TempoShortName} libraries support the following samplers:
+
+* *Probabilistic* - The sampler makes a random sampling decision with the probability of sampling equal to the value of the `sampling.param` property. For example, using `sampling.param=0.1` samples approximately 1 in 10 traces.
+
+* *Rate Limiting* - The sampler uses a leaky bucket rate limiter to ensure that traces are sampled with a certain constant rate. For example, using `sampling.param=2.0` samples requests with the rate of 2 traces per second.
+
+.Tempo sampling options
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|spec:
+ sampling:
+ options: {}
+ default_strategy:
+ service_strategy:
+|Configuration options that define the sampling strategies for tracing.
+|
+|If you do not provide configuration, the Collectors will return the default probabilistic sampling policy with 0.001 (0.1%) probability for all services.
+
+|default_strategy:
+ type:
+service_strategy:
+ type:
+|Sampling strategy to use. See descriptions above.
+|Valid values are `probabilistic`, and `ratelimiting`.
+|`probabilistic`
+
+|default_strategy:
+ param:
+service_strategy:
+ param:
+|Parameters for the selected sampling strategy.
+|Decimal and integer values (0, .1, 1, 10)
+|1
+|===
+
+This example defines a default sampling strategy that is probabilistic, with a 50% chance of the trace instances being sampled.
+
+.Probabilistic sampling example
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: with-sampling
+spec:
+ sampling:
+ options:
+ default_strategy:
+ type: probabilistic
+ param: 0.5
+ service_strategies:
+ - service: alpha
+ type: probabilistic
+ param: 0.8
+ operation_strategies:
+ - operation: op1
+ type: probabilistic
+ param: 0.2
+ - operation: op2
+ type: probabilistic
+ param: 0.4
+ - service: beta
+ type: ratelimiting
+ param: 5
+----
+
+If there are no user-supplied configurations, the {TempoShortName} uses the following settings:
+
+.Default sampling
+[source,yaml]
+----
+spec:
+ sampling:
+ options:
+ default_strategy:
+ type: probabilistic
+ param: 1
+----
diff --git a/modules/distr-tracing-tempo-config-storage.adoc b/modules/distr-tracing-tempo-config-storage.adoc
new file mode 100644
index 000000000000..9f6cf12efaa1
--- /dev/null
+++ b/modules/distr-tracing-tempo-config-storage.adoc
@@ -0,0 +1,728 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: REFERENCE
+[id="distr-tracing-tempo-config-storage_{context}"]
+= Distributed tracing storage configuration options
+
+You configure storage for the Collector, Ingester, and Query services under `spec.storage`. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
+
+.General storage parameters used by the {TempoName} Operator to define distributed tracing storage
+
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|spec:
+ storage:
+ type:
+|Type of storage to use for the deployment.
+|`memory` or `elasticsearch`.
+Memory storage is only appropriate for development, testing, demonstrations, and proof of concept environments as the data does not persist if the pod is shut down. For production environments {TempoShortName} supports Elasticsearch for persistent storage.
+|`memory`
+
+|storage:
+ secretname:
+|Name of the secret, for example `tracing-secret`.
+|
+|N/A
+
+|storage:
+ options: {}
+|Configuration options that define the storage.
+|
+|
+|===
+
+.Elasticsearch index cleaner parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|storage:
+ esIndexCleaner:
+ enabled:
+|When using Elasticsearch storage, by default a job is created to clean old traces from the index. This parameter enables or disables the index cleaner job.
+|`true`/ `false`
+|`true`
+
+|storage:
+ esIndexCleaner:
+ numberOfDays:
+|Number of days to wait before deleting an index.
+|Integer value
+|`7`
+
+|storage:
+ esIndexCleaner:
+ schedule:
+|Defines the schedule for how often to clean the Elasticsearch index.
+|Cron expression
+|"55 23 * * *"
+|===
+
+[id="distributed-tracing-config-auto-provisioning-es_{context}"]
+== Auto-provisioning an Elasticsearch instance
+
+When you deploy a Tempo custom resource, the {TempoName} Operator uses the OpenShift Elasticsearch Operator to create an Elasticsearch cluster based on the configuration provided in the `storage` section of the custom resource file. The {TempoName} Operator will provision Elasticsearch if the following configurations are set:
+
+* `spec.storage:type` is set to `elasticsearch`
+* `spec.storage.elasticsearch.doNotProvision` set to `false`
+* `spec.storage.options.es.server-urls` is not defined, that is, there is no connection to an Elasticsearch instance that was not provisioned by the Red Hat Elasticsearch Operator.
+
+When provisioning Elasticsearch, the {TempoName} Operator sets the Elasticsearch custom resource `name` to the value of `spec.storage.elasticsearch.name` from the Tempo custom resource. If you do not specify a value for `spec.storage.elasticsearch.name`, the Operator uses `elasticsearch`.
+
+.Restrictions
+
+* You can have only one {TempoShortName} with self-provisioned Elasticsearch instance per namespace. The Elasticsearch cluster is meant to be dedicated for a single {TempoShortName} instance.
+* There can be only one Elasticsearch per namespace.
+
+[NOTE]
+====
+If you already have installed Elasticsearch as part of OpenShift Logging, the {TempoName} Operator can use the installed OpenShift Elasticsearch Operator to provision storage.
+====
+
+The following configuration parameters are for a _self-provisioned_ Elasticsearch instance, that is an instance created by the {TempoName} Operator using the OpenShift Elasticsearch Operator. You specify configuration options for self-provisioned Elasticsearch under `spec:storage:elasticsearch` in your configuration file.
+
+.Elasticsearch resource configuration parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|elasticsearch:
+ properties:
+ doNotProvision:
+|Use to specify whether or not an Elasticsearch instance should be provisioned by the {TempoName} Operator.
+|`true`/`false`
+|`true`
+
+|elasticsearch:
+ properties:
+ name:
+|Name of the Elasticsearch instance. The {TempoName} Operator uses the Elasticsearch instance specified in this parameter to connect to Elasticsearch.
+|string
+|`elasticsearch`
+
+|elasticsearch:
+ nodeCount:
+|Number of Elasticsearch nodes. For high availability use at least 3 nodes. Do not use 2 nodes as “split brain” problem can happen.
+|Integer value. For example, Proof of concept = 1,
+Minimum deployment =3
+|3
+
+|elasticsearch:
+ resources:
+ requests:
+ cpu:
+|Number of central processing units for requests, based on your environment's configuration.
+|Specified in cores or millicores, for example, 200m, 0.5, 1. For example, Proof of concept = 500m,
+Minimum deployment =1
+|1
+
+|elasticsearch:
+ resources:
+ requests:
+ memory:
+|Available memory for requests, based on your environment's configuration.
+|Specified in bytes, for example, 200Ki, 50Mi, 5Gi. For example, Proof of concept = 1Gi,
+Minimum deployment = 16Gi*
+|16Gi
+
+|elasticsearch:
+ resources:
+ limits:
+ cpu:
+|Limit on number of central processing units, based on your environment's configuration.
+|Specified in cores or millicores, for example, 200m, 0.5, 1. For example, Proof of concept = 500m,
+Minimum deployment =1
+|
+
+|elasticsearch:
+ resources:
+ limits:
+ memory:
+|Available memory limit based on your environment's configuration.
+|Specified in bytes, for example, 200Ki, 50Mi, 5Gi. For example, Proof of concept = 1Gi,
+Minimum deployment = 16Gi*
+|
+
+|elasticsearch:
+ redundancyPolicy:
+|Data replication policy defines how Elasticsearch shards are replicated across data nodes in the cluster. If not specified, the {TempoName} Operator automatically determines the most appropriate replication based on number of nodes.
+|`ZeroRedundancy`(no replica shards), `SingleRedundancy`(one replica shard), `MultipleRedundancy`(each index is spread over half of the Data nodes), `FullRedundancy` (each index is fully replicated on every Data node in the cluster).
+|
+
+|elasticsearch:
+ useCertManagement:
+|Use to specify whether or not {TempoShortName} should use the certificate management feature of the Red Hat Elasticsearch Operator. This feature was added to {logging-title} 5.2 in {product-title} 4.7 and is the preferred setting for new Tempo deployments.
+|`true`/`false`
+|`true`
+
+|
+3+|*Each Elasticsearch node can operate with a lower memory setting though this is NOT recommended for production deployments. For production use, you should have no less than 16Gi allocated to each pod by default, but preferably allocate as much as you can, up to 64Gi per pod.
+|===
+
+.Production storage example
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: simple-prod
+spec:
+ strategy: production
+ storage:
+ type: elasticsearch
+ elasticsearch:
+ nodeCount: 3
+ resources:
+ requests:
+ cpu: 1
+ memory: 16Gi
+ limits:
+ memory: 16Gi
+----
+
+.Storage example with persistent storage:
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: simple-prod
+spec:
+ strategy: production
+ storage:
+ type: elasticsearch
+ elasticsearch:
+ nodeCount: 1
+ storage: # <1>
+ storageClassName: gp2
+ size: 5Gi
+ resources:
+ requests:
+ cpu: 200m
+ memory: 4Gi
+ limits:
+ memory: 4Gi
+ redundancyPolicy: ZeroRedundancy
+----
+
+<1> Persistent storage configuration. In this case AWS `gp2` with `5Gi` size. When no value is specified, {TempoShortName} uses `emptyDir`. The OpenShift Elasticsearch Operator provisions `PersistentVolumeClaim` and `PersistentVolume` which are not removed with {TempoShortName} instance. You can mount the same volumes if you create a {TempoShortName} instance with the same name and namespace.
+
+
+[id="distributed-tracing-config-external-es_{context}"]
+== Connecting to an existing Elasticsearch instance
+
+You can use an existing Elasticsearch cluster for storage with {DTShortName}. An existing Elasticsearch cluster, also known as an _external_ Elasticsearch instance, is an instance that was not installed by the {TempoName} Operator or by the Red Hat Elasticsearch Operator.
+
+When you deploy a Tempo custom resource, the {TempoName} Operator will not provision Elasticsearch if the following configurations are set:
+
+* `spec.storage.elasticsearch.doNotProvision` set to `true`
+* `spec.storage.options.es.server-urls` has a value
+* `spec.storage.elasticsearch.name` has a value, or if the Elasticsearch instance name is `elasticsearch`.
+
+The {TempoName} Operator uses the Elasticsearch instance specified in `spec.storage.elasticsearch.name` to connect to Elasticsearch.
+
+.Restrictions
+
+* You cannot share or reuse a {product-title} logging Elasticsearch instance with {TempoShortName}. The Elasticsearch cluster is meant to be dedicated for a single {TempoShortName} instance.
+
+[NOTE]
+====
+Red Hat does not provide support for your external Elasticsearch instance. You can review the tested integrations matrix on the link:https://access.redhat.com/articles/5381021[Customer Portal].
+====
+
+The following configuration parameters are for an already existing Elasticsearch instance, also known as an _external_ Elasticsearch instance. In this case, you specify configuration options for Elasticsearch under `spec:storage:options:es` in your custom resource file.
+
+.General ES configuration parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|es:
+ server-urls:
+|URL of the Elasticsearch instance.
+|The fully-qualified domain name of the Elasticsearch server.
+|`http://elasticsearch..svc:9200`
+
+|es:
+ max-doc-count:
+|The maximum document count to return from an Elasticsearch query. This will also apply to aggregations. If you set both `es.max-doc-count` and `es.max-num-spans`, Elasticsearch will use the smaller value of the two.
+|
+|10000
+
+|es:
+ max-num-spans:
+|[*Deprecated* - Will be removed in a future release, use `es.max-doc-count` instead.] The maximum number of spans to fetch at a time, per query, in Elasticsearch. If you set both `es.max-num-spans` and `es.max-doc-count`, Elasticsearch will use the smaller value of the two.
+|
+|10000
+
+|es:
+ max-span-age:
+|The maximum lookback for spans in Elasticsearch.
+|
+|72h0m0s
+
+|es:
+ sniffer:
+|The sniffer configuration for Elasticsearch. The client uses the sniffing process to find all nodes automatically. Disabled by default.
+|`true`/ `false`
+|`false`
+
+|es:
+ sniffer-tls-enabled:
+|Option to enable TLS when sniffing an Elasticsearch Cluster. The client uses the sniffing process to find all nodes automatically. Disabled by default
+|`true`/ `false`
+|`false`
+
+|es:
+ timeout:
+|Timeout used for queries. When set to zero there is no timeout.
+|
+|0s
+
+|es:
+ username:
+|The username required by Elasticsearch. The basic authentication also loads CA if it is specified. See also `es.password`.
+|
+|
+
+|es:
+ password:
+|The password required by Elasticsearch. See also, `es.username`.
+|
+|
+
+|es:
+ version:
+|The major Elasticsearch version. If not specified, the value will be auto-detected from Elasticsearch.
+|
+|0
+|===
+
+.ES data replication parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|es:
+ num-replicas:
+|The number of replicas per index in Elasticsearch.
+|
+|1
+
+|es:
+ num-shards:
+|The number of shards per index in Elasticsearch.
+|
+|5
+|===
+
+.ES index configuration parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|es:
+ create-index-templates:
+|Automatically create index templates at application startup when set to `true`. When templates are installed manually, set to `false`.
+|`true`/ `false`
+|`true`
+
+|es:
+ index-prefix:
+|Optional prefix for {TempoShortName} indices. For example, setting this to "production" creates indices named "production-tracing-*".
+|
+|
+|===
+
+.ES bulk processor configuration parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|es:
+ bulk:
+ actions:
+|The number of requests that can be added to the queue before the bulk processor decides to commit updates to disk.
+|
+|1000
+
+//What is the default here? The original text said "Set to zero to disable. By default, this is disabled."
+|es:
+ bulk:
+ flush-interval:
+|A `time.Duration` after which bulk requests are committed, regardless of other thresholds. To disable the bulk processor flush interval, set this to zero.
+|
+|200ms
+
+|es:
+ bulk:
+ size:
+|The number of bytes that the bulk requests can take up before the bulk processor decides to commit updates to disk.
+|
+|5000000
+
+|es:
+ bulk:
+ workers:
+|The number of workers that are able to receive and commit bulk requests to Elasticsearch.
+|
+|1
+|===
+
+.ES TLS configuration parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|es:
+ tls:
+ ca:
+|Path to a TLS Certification Authority (CA) file used to verify the remote servers.
+|
+|Will use the system truststore by default.
+
+|es:
+ tls:
+ cert:
+|Path to a TLS Certificate file, used to identify this process to the remote servers.
+|
+|
+
+|es:
+ tls:
+ enabled:
+|Enable transport layer security (TLS) when talking to the remote servers. Disabled by default.
+|`true`/ `false`
+|`false`
+
+|es:
+ tls:
+ key:
+|Path to a TLS Private Key file, used to identify this process to the remote servers.
+|
+|
+
+|es:
+ tls:
+ server-name:
+|Override the expected TLS server name in the certificate of the remote servers.
+|
+|
+//Clarification of "if specified" for `token-file` and `username`, does that mean if this is set? Or that it only loads the CA if one is specified (that is, if es.tls.ca has a value?)
+|es:
+ token-file:
+|Path to a file containing the bearer token. This flag also loads the Certification Authority (CA) file if it is specified.
+|
+|
+|===
+
+.ES archive configuration parameters
+[options="header"]
+[cols="l, a, a, a"]
+|===
+|Parameter |Description |Values |Default value
+|es-archive:
+ bulk:
+ actions:
+|The number of requests that can be added to the queue before the bulk processor decides to commit updates to disk.
+|
+|0
+
+//What is the default here? The original text said "Set to zero to disable. By default, this is disabled."
+|es-archive:
+ bulk:
+ flush-interval:
+|A `time.Duration` after which bulk requests are committed, regardless of other thresholds. To disable the bulk processor flush interval, set this to zero.
+|
+|0s
+
+|es-archive:
+ bulk:
+ size:
+|The number of bytes that the bulk requests can take up before the bulk processor decides to commit updates to disk.
+|
+|0
+
+|es-archive:
+ bulk:
+ workers:
+|The number of workers that are able to receive and commit bulk requests to Elasticsearch.
+|
+|0
+
+|es-archive:
+ create-index-templates:
+|Automatically create index templates at application startup when set to `true`. When templates are installed manually, set to `false`.
+|`true`/ `false`
+|`false`
+
+|es-archive:
+ enabled:
+|Enable extra storage.
+|`true`/ `false`
+|`false`
+
+|es-archive:
+ index-prefix:
+|Optional prefix for {TempoShortName} indices. For example, setting this to "production" creates indices named "production-tracing-*".
+|
+|
+
+|es-archive:
+ max-doc-count:
+|The maximum document count to return from an Elasticsearch query. This will also apply to aggregations.
+|
+|0
+
+|es-archive:
+ max-num-spans:
+|[*Deprecated* - Will be removed in a future release, use `es-archive.max-doc-count` instead.] The maximum number of spans to fetch at a time, per query, in Elasticsearch.
+|
+|0
+
+|es-archive:
+ max-span-age:
+|The maximum lookback for spans in Elasticsearch.
+|
+|0s
+
+|es-archive:
+ num-replicas:
+|The number of replicas per index in Elasticsearch.
+|
+|0
+
+|es-archive:
+ num-shards:
+|The number of shards per index in Elasticsearch.
+|
+|0
+
+|es-archive:
+ password:
+|The password required by Elasticsearch. See also, `es.username`.
+|
+|
+
+|es-archive:
+ server-urls:
+|The comma-separated list of Elasticsearch servers. Must be specified as fully qualified URLs, for example, `\http://localhost:9200`.
+|
+|
+
+|es-archive:
+ sniffer:
+|The sniffer configuration for Elasticsearch. The client uses the sniffing process to find all nodes automatically. Disabled by default.
+|`true`/ `false`
+|`false`
+
+|es-archive:
+ sniffer-tls-enabled:
+|Option to enable TLS when sniffing an Elasticsearch Cluster. The client uses the sniffing process to find all nodes automatically. Disabled by default.
+|`true`/ `false`
+|`false`
+
+|es-archive:
+ timeout:
+|Timeout used for queries. When set to zero there is no timeout.
+|
+|0s
+
+|es-archive:
+ tls:
+ ca:
+|Path to a TLS Certification Authority (CA) file used to verify the remote servers.
+|
+|Will use the system truststore by default.
+
+|es-archive:
+ tls:
+ cert:
+|Path to a TLS Certificate file, used to identify this process to the remote servers.
+|
+|
+
+|es-archive:
+ tls:
+ enabled:
+|Enable transport layer security (TLS) when talking to the remote servers. Disabled by default.
+|`true`/ `false`
+|`false`
+
+|es-archive:
+ tls:
+ key:
+|Path to a TLS Private Key file, used to identify this process to the remote servers.
+|
+|
+
+|es-archive:
+ tls:
+ server-name:
+|Override the expected TLS server name in the certificate of the remote servers.
+|
+|
+
+//Clarification of "if specified" for next two rows, does that mean if this is set? Or that it only loads the CA if one is specified (that is, if es-archive.tls.ca has a value?)
+|es-archive:
+ token-file:
+|Path to a file containing the bearer token. This flag also loads the Certification Authority (CA) file if it is specified.
+|
+|
+
+|es-archive:
+ username:
+|The username required by Elasticsearch. The basic authentication also loads CA if it is specified. See also `es-archive.password`.
+|
+|
+
+|es-archive:
+ version:
+|The major Elasticsearch version. If not specified, the value will be auto-detected from Elasticsearch.
+|
+|0
+|===
+
+
+.Storage example with volume mounts
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: simple-prod
+spec:
+ strategy: production
+ storage:
+ type: elasticsearch
+ options:
+ es:
+ server-urls: https://quickstart-es-http.default.svc:9200
+ index-prefix: my-prefix
+ tls:
+ ca: /es/certificates/ca.crt
+ secretName: tracing-secret
+ volumeMounts:
+ - name: certificates
+ mountPath: /es/certificates/
+ readOnly: true
+ volumes:
+ - name: certificates
+ secret:
+ secretName: quickstart-es-http-certs-public
+----
+
+The following example shows a Tempo CR using an external Elasticsearch cluster with TLS CA certificate mounted from a volume and user/password stored in a secret.
+
+.External Elasticsearch example:
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: simple-prod
+spec:
+ strategy: production
+ storage:
+ type: elasticsearch
+ options:
+ es:
+ server-urls: https://quickstart-es-http.default.svc:9200 # <1>
+ index-prefix: my-prefix
+ tls: # <2>
+ ca: /es/certificates/ca.crt
+ secretName: tracing-secret # <3>
+ volumeMounts: # <4>
+ - name: certificates
+ mountPath: /es/certificates/
+ readOnly: true
+ volumes:
+ - name: certificates
+ secret:
+ secretName: quickstart-es-http-certs-public
+----
+<1> URL to Elasticsearch service running in default namespace.
+<2> TLS configuration. In this case only CA certificate, but it can also contain es.tls.key and es.tls.cert when using mutual TLS.
+<3> Secret which defines environment variables ES_PASSWORD and ES_USERNAME. Created by kubectl create secret generic tracing-secret --from-literal=ES_PASSWORD=changeme --from-literal=ES_USERNAME=elastic
+<4> Volume mounts and volumes which are mounted into all storage components.
+
+[id="distr-tracing-manage-es-certificates_{context}"]
+= Managing certificates with Elasticsearch
+
+You can create and manage certificates using the Red Hat Elasticsearch Operator. Managing certificates using the Red Hat Elasticsearch Operator also lets you use a single Elasticsearch cluster with multiple Tempo Collectors.
+
+:FeatureName: Managing certificates with Elasticsearch
+include::snippets/technology-preview.adoc[leveloffset=+1]
+
+Starting with version 2.4, the {TempoName} Operator delegates certificate creation to the Red Hat Elasticsearch Operator by using the following annotations in the Elasticsearch custom resource:
+
+* `logging.openshift.io/elasticsearch-cert-management: "true"`
+* `logging.openshift.io/elasticsearch-cert.tempo-: "user.tempo"`
+* `logging.openshift.io/elasticsearch-cert.curator-: "system.logging.curator"`
+
+Where the `` is the name of the Elasticsearch node. For example, if you create an Elasticsearch node named `custom-es`, your custom resource might look like the following example.
+
+.Example Elasticsearch CR showing annotations
+[source,yaml]
+----
+apiVersion: logging.openshift.io/v1
+kind: Elasticsearch
+metadata:
+ annotations:
+ logging.openshift.io/elasticsearch-cert-management: "true"
+ logging.openshift.io/elasticsearch-cert.tempo-custom-es: "user.tempo"
+ logging.openshift.io/elasticsearch-cert.curator-custom-es: "system.logging.curator"
+ name: custom-es
+spec:
+ managementState: Managed
+ nodeSpec:
+ resources:
+ limits:
+ memory: 16Gi
+ requests:
+ cpu: 1
+ memory: 16Gi
+ nodes:
+ - nodeCount: 3
+ proxyResources: {}
+ resources: {}
+ roles:
+ - master
+ - client
+ - data
+ storage: {}
+ redundancyPolicy: ZeroRedundancy
+----
+
+.Prerequisites
+
+* {product-title} 4.7
+* {logging-title} 5.2
+* The Elasticsearch node and the Tempo instances must be deployed in the same namespace. For example, `tracing-system`.
+
+You enable certificate management by setting `spec.storage.elasticsearch.useCertManagement` to `true` in the Tempo custom resource.
+
+.Example showing `useCertManagement`
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: tempo-prod
+spec:
+ strategy: production
+ storage:
+ type: elasticsearch
+ elasticsearch:
+ name: custom-es
+ doNotProvision: true
+ useCertManagement: true
+----
+
+The {TempoName} Operator sets the Elasticsearch custom resource `name` to the value of `spec.storage.elasticsearch.name` from the Tempo custom resource when provisioning Elasticsearch.
+
+The certificates are provisioned by the Red Hat Elasticsearch Operator and the {TempoName} Operator injects the certificates.
diff --git a/modules/distr-tracing-tempo-deploy-default.adoc b/modules/distr-tracing-tempo-deploy-default.adoc
new file mode 100644
index 000000000000..4452f50336e4
--- /dev/null
+++ b/modules/distr-tracing-tempo-deploy-default.adoc
@@ -0,0 +1,115 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-deploy-default_{context}"]
+= Deploying the {DTShortName} default strategy from the web console
+
+The custom resource definition (CRD) defines the configuration used when you deploy an instance of {DTProductName}. The default CR is named `tempo-all-in-one-inmemory` and it is configured with minimal resources to ensure that you can successfully install it on a default {product-title} installation. You can use this default configuration to create a {TempoName} instance that uses the `AllInOne` deployment strategy, or you can define your own custom resource file.
+
+[NOTE]
+====
+In-memory storage is not persistent. If the Tempo pod shuts down, restarts, or is replaced, your trace data will be lost. For persistent storage, you must use the `production` or `streaming` strategies, which use Elasticsearch as the default storage.
+====
+
+.Prerequisites
+
+* The {TempoName} Operator has been installed.
+* You have reviewed the instructions for how to customize the deployment.
+* You have access to the cluster as a user with the `cluster-admin` role.
+
+.Procedure
+
+. Log in to the {product-title} web console as a user with the `cluster-admin` role.
+
+. Create a new project, for example `tracing-system`.
++
+[NOTE]
+====
+If you are installing as part of Service Mesh, the {DTShortName} resources must be installed in the same namespace as the `ServiceMeshControlPlane` resource, for example `istio-system`.
+====
++
+.. Navigate to *Home* -> *Projects*.
+
+.. Click *Create Project*.
+
+.. Enter `tracing-system` in the *Name* field.
+
+.. Click *Create*.
+
+. Navigate to *Operators* -> *Installed Operators*.
+
+. If necessary, select `tracing-system` from the *Project* menu. You may have to wait a few moments for the Operators to be copied to the new project.
+
+. Click the {TempoName} Operator. On the *Details* tab, under *Provided APIs*, the Operator provides a single link.
+
+. Under *Tempo*, click *Create Instance*.
+
+. On the *Create Tempo* page, to install using the defaults, click *Create* to create the {TempoShortName} instance.
+
+. On the *Tempos* page, click the name of the {TempoShortName} instance, for example, `tempo-all-in-one-inmemory`.
+
+. On the *Tempo Details* page, click the *Resources* tab. Wait until the pod has a status of "Running" before continuing.
+
+
+[id="distr-tracing-deploy-default-cli_{context}"]
+== Deploying the {DTShortName} default strategy from the CLI
+
+Follow this procedure to create an instance of {TempoShortName} from the command line.
+
+.Prerequisites
+
+* The {TempoName} Operator has been installed and verified.
+* You have reviewed the instructions for how to customize the deployment.
+* You have access to the OpenShift CLI (`oc`) that matches your {product-title} version.
+* You have access to the cluster as a user with the `cluster-admin` role.
+
+.Procedure
+
+. Log in to the {product-title} CLI as a user with the `cluster-admin` role.
++
+[source,terminal]
+----
+$ oc login --username= https://:8443
+----
+
+. Create a new project named `tracing-system`.
++
+[source,terminal]
+----
+$ oc new-project tracing-system
+----
+
+. Create a custom resource file named `tempo.yaml` that contains the following text:
++
+.Example tempo-all-in-one.yaml
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: tempo-all-in-one-inmemory
+----
+
+. Run the following command to deploy {TempoShortName}:
++
+[source,terminal]
+----
+$ oc create -n tracing-system -f tempo.yaml
+----
+
+. Run the following command to watch the progress of the pods during the installation process:
++
+[source,terminal]
+----
+$ oc get pods -n tracing-system -w
+----
++
+After the installation process has completed, you should see output similar to the following example:
++
+[source,terminal]
+----
+NAME READY STATUS RESTARTS AGE
+tempo-all-in-one-inmemory-cdff7897b-qhfdx 2/2 Running 0 24s
+----
diff --git a/modules/distr-tracing-tempo-deploy-production-es.adoc b/modules/distr-tracing-tempo-deploy-production-es.adoc
new file mode 100644
index 000000000000..2aff731995b5
--- /dev/null
+++ b/modules/distr-tracing-tempo-deploy-production-es.adoc
@@ -0,0 +1,136 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-deploy-production_{context}"]
+= Deploying the {DTShortName} production strategy from the web console
+
+The `production` deployment strategy is intended for production environments that require a more scalable and highly available architecture, and where long-term storage of trace data is important.
+
+.Prerequisites
+
+* The OpenShift Elasticsearch Operator has been installed.
+* The {TempoName} Operator has been installed.
+* You have reviewed the instructions for how to customize the deployment.
+* You have access to the cluster as a user with the `cluster-admin` role.
+
+.Procedure
+
+. Log in to the {product-title} web console as a user with the `cluster-admin` role.
+
+. Create a new project, for example `tracing-system`.
++
+[NOTE]
+====
+If you are installing as part of Service Mesh, the {DTShortName} resources must be installed in the same namespace as the `ServiceMeshControlPlane` resource, for example `istio-system`.
+====
++
+.. Navigate to *Home* -> *Projects*.
+
+.. Click *Create Project*.
+
+.. Enter `tracing-system` in the *Name* field.
+
+.. Click *Create*.
+
+. Navigate to *Operators* -> *Installed Operators*.
+
+. If necessary, select `tracing-system` from the *Project* menu. You may have to wait a few moments for the Operators to be copied to the new project.
+
+. Click the {TempoName} Operator. On the *Overview* tab, under *Provided APIs*, the Operator provides a single link.
+
+. Under *Tempo*, click *Create Instance*.
+
+. On the *Create Tempo* page, replace the default `all-in-one` YAML text with your production YAML configuration, for example:
+
++
+.Example tempo-production.yaml file with Elasticsearch
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: tempo-production
+ namespace:
+spec:
+ strategy: production
+ ingress:
+ security: oauth-proxy
+ storage:
+ type: elasticsearch
+ elasticsearch:
+ nodeCount: 3
+ redundancyPolicy: SingleRedundancy
+ esIndexCleaner:
+ enabled: true
+ numberOfDays: 7
+ schedule: 55 23 * * *
+ esRollover:
+ schedule: '*/30 * * * *'
+----
++
+
+. Click *Create* to create the {TempoShortName} instance.
+
+. On the *Tempos* page, click the name of the {TempoShortName} instance, for example, `tempo-prod-elasticsearch`.
+
+. On the *Tempo Details* page, click the *Resources* tab. Wait until all the pods have a status of "Running" before continuing.
+
+
+[id="distr-tracing-deploy-production-cli_{context}"]
+== Deploying the {DTShortName} production strategy from the CLI
+
+Follow this procedure to create an instance of {TempoShortName} from the command line.
+
+.Prerequisites
+
+* The OpenShift Elasticsearch Operator has been installed.
+* The {TempoName} Operator has been installed.
+* You have reviewed the instructions for how to customize the deployment.
+* You have access to the OpenShift CLI (`oc`) that matches your {product-title} version.
+* You have access to the cluster as a user with the `cluster-admin` role.
+
+.Procedure
+
+. Log in to the {product-title} CLI as a user with the `cluster-admin` role.
++
+[source,terminal]
+----
+$ oc login --username= https://:8443
+----
+
+. Create a new project named `tracing-system`.
++
+[source,terminal]
+----
+$ oc new-project tracing-system
+----
+
+. Create a custom resource file named `tempo-production.yaml` that contains the text of the example file in the previous procedure.
+
+. Run the following command to deploy {TempoShortName}:
++
+[source,terminal]
+----
+$ oc create -n tracing-system -f tempo-production.yaml
+----
++
+. Run the following command to watch the progress of the pods during the installation process:
++
+[source,terminal]
+----
+$ oc get pods -n tracing-system -w
+----
++
+After the installation process has completed, you should see output similar to the following example:
++
+[source,terminal]
+----
+NAME READY STATUS RESTARTS AGE
+elasticsearch-cdm-temposystemtempoproduction-1-6676cf568gwhlw 2/2 Running 0 10m
+elasticsearch-cdm-temposystemtempoproduction-2-bcd4c8bf5l6g6w 2/2 Running 0 10m
+elasticsearch-cdm-temposystemtempoproduction-3-844d6d9694hhst 2/2 Running 0 10m
+tempo-production-collector-94cd847d-jwjlj 1/1 Running 3 8m32s
+tempo-production-query-5cbfbd499d-tv8zf 3/3 Running 3 8m32s
+----
diff --git a/modules/distr-tracing-tempo-deploy-streaming.adoc b/modules/distr-tracing-tempo-deploy-streaming.adoc
new file mode 100644
index 000000000000..fad269327c19
--- /dev/null
+++ b/modules/distr-tracing-tempo-deploy-streaming.adoc
@@ -0,0 +1,155 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-deploy-streaming_{context}"]
+= Deploying the {DTShortName} streaming strategy from the web console
+
+The `streaming` deployment strategy is intended for production environments that require a more scalable and highly available architecture, and where long-term storage of trace data is important.
+
+The `streaming` strategy provides a streaming capability that sits between the Collector and the Elasticsearch storage. This reduces the pressure on the storage under high load situations, and enables other trace post-processing capabilities to tap into the real-time span data directly from the Kafka streaming platform.
+
+[NOTE]
+====
+The streaming strategy requires an additional Red Hat subscription for AMQ Streams. If you do not have an AMQ Streams subscription, contact your sales representative for more information.
+====
+
+[NOTE]
+====
+The streaming deployment strategy is currently unsupported on {ibmzProductName}.
+====
+
+.Prerequisites
+
+* The AMQ Streams Operator has been installed. If using version 1.4.0 or higher you can use self-provisioning. Otherwise you must create the Kafka instance.
+* The {TempoName} Operator has been installed.
+* You have reviewed the instructions for how to customize the deployment.
+* You have access to the cluster as a user with the `cluster-admin` role.
+
+.Procedure
+
+. Log in to the {product-title} web console as a user with the `cluster-admin` role.
+
+. Create a new project, for example `tracing-system`.
+
++
+[NOTE]
+====
+If you are installing as part of Service Mesh, the {DTShortName} resources must be installed in the same namespace as the `ServiceMeshControlPlane` resource, for example `istio-system`.
+====
++
+
+.. Navigate to *Home* -> *Projects*.
+
+.. Click *Create Project*.
+
+.. Enter `tracing-system` in the *Name* field.
+
+.. Click *Create*.
+
+. Navigate to *Operators* -> *Installed Operators*.
+
+. If necessary, select `tracing-system` from the *Project* menu. You may have to wait a few moments for the Operators to be copied to the new project.
+
+. Click the {TempoName} Operator. On the *Overview* tab, under *Provided APIs*, the Operator provides a single link.
+
+. Under *Tempo*, click *Create Instance*.
+
+. On the *Create Tempo* page, replace the default `all-in-one` YAML text with your streaming YAML configuration, for example:
+
+.Example tempo-streaming.yaml file
+[source,yaml]
+----
+apiVersion: tempotracing.io/v1
+kind: Tempo
+metadata:
+ name: tempo-streaming
+spec:
+ strategy: streaming
+ collector:
+ options:
+ kafka:
+ producer:
+ topic: tempo-spans
+ #Note: If brokers are not defined,AMQStreams 1.4.0+ will self-provision Kafka.
+ brokers: my-cluster-kafka-brokers.kafka:9092
+ storage:
+ type: elasticsearch
+ ingester:
+ options:
+ kafka:
+ consumer:
+ topic: tempo-spans
+ brokers: my-cluster-kafka-brokers.kafka:9092
+
+----
+//TODO - find out if this storage configuration is correct for OpenShift
+
+. Click *Create* to create the {TempoShortName} instance.
+
+. On the *Tempos* page, click the name of the {TempoShortName} instance, for example, `tempo-streaming`.
+
+. On the *Tempo Details* page, click the *Resources* tab. Wait until all the pods have a status of "Running" before continuing.
+
+
+[id="distr-tracing-deploy-streaming-cli_{context}"]
+== Deploying the {DTShortName} streaming strategy from the CLI
+
+Follow this procedure to create an instance of {TempoShortName} from the command line.
+
+.Prerequisites
+
+* The AMQ Streams Operator has been installed. If using version 1.4.0 or higher you can use self-provisioning. Otherwise you must create the Kafka instance.
+* The {TempoName} Operator has been installed.
+* You have reviewed the instructions for how to customize the deployment.
+* You have access to the OpenShift CLI (`oc`) that matches your {product-title} version.
+* You have access to the cluster as a user with the `cluster-admin` role.
+
+Procedure
+
+. Log in to the {product-title} CLI as a user with the `cluster-admin` role.
++
+[source,terminal]
+----
+$ oc login --username= https://:8443
+----
+
+. Create a new project named `tracing-system`.
++
+[source,terminal]
+----
+$ oc new-project tracing-system
+----
+
+. Create a custom resource file named `tempo-streaming.yaml` that contains the text of the example file in the previous procedure.
+
+. Run the following command to deploy Tempo:
++
+[source,terminal]
+----
+$ oc create -n tracing-system -f tempo-streaming.yaml
+----
++
+. Run the following command to watch the progress of the pods during the installation process:
++
+[source,terminal]
+----
+$ oc get pods -n tracing-system -w
+----
++
+After the installation process has completed, you should see output similar to the following example:
++
+[source,terminal]
+----
+NAME READY STATUS RESTARTS AGE
+elasticsearch-cdm-temposystemtempostreaming-1-697b66d6fcztcnn 2/2 Running 0 5m40s
+elasticsearch-cdm-temposystemtempostreaming-2-5f4b95c78b9gckz 2/2 Running 0 5m37s
+elasticsearch-cdm-temposystemtempostreaming-3-7b6d964576nnz97 2/2 Running 0 5m5s
+tempo-streaming-collector-6f6db7f99f-rtcfm 1/1 Running 0 80s
+tempo-streaming-entity-operator-6b6d67cc99-4lm9q 3/3 Running 2 2m18s
+tempo-streaming-ingester-7d479847f8-5h8kc 1/1 Running 0 80s
+tempo-streaming-kafka-0 2/2 Running 0 3m1s
+tempo-streaming-query-65bf5bb854-ncnc7 3/3 Running 0 80s
+tempo-streaming-zookeeper-0 2/2 Running 0 3m39s
+----
diff --git a/modules/distr-tracing-tempo-deployment-best-practices.adoc b/modules/distr-tracing-tempo-deployment-best-practices.adoc
new file mode 100644
index 000000000000..82b4661d1244
--- /dev/null
+++ b/modules/distr-tracing-tempo-deployment-best-practices.adoc
@@ -0,0 +1,15 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+
+:_content-type: CONCEPT
+[id="distr-tracing-tempo-deployment-best-practices_{context}"]
+= Deployment best practices
+
+* {DTProductName} instance names must be unique. If you want to have multiple {TempoName} instances and are using sidecar injected agents, then the {TempoName} instances should have unique names, and the injection annotation should explicitly specify the {TempoName} instance name the tracing data should be reported to.
+
+* If you have a multitenant implementation and tenants are separated by namespaces, deploy a {TempoName} instance to each tenant namespace.
+
+** Agent as a daemonset is not supported for multitenant installations or {product-dedicated}. Agent as a sidecar is the only supported configuration for these use cases.
+
+* If you are installing {DTShortName} as part of {SMProductName}, the {DTShortName} resources must be installed in the same namespace as the `ServiceMeshControlPlane` resource.
From 17f153a87836dde72495fea831b4c8ad96771be8 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 19 Jul 2023 17:25:53 +0200
Subject: [PATCH 052/108] add initial content (to be rewrriten) about
installing Tempo, https://issues.redhat.com/browse/TRACING-3293,
https://issues.redhat.com/browse/TRACING-3296
---
.../distr-tracing-tempo-installing.adoc | 36 +++++++++++++
.../distr-tracing-tempo-install-instance.adoc | 9 ++++
.../distr-tracing-tempo-install-operator.adoc | 52 +++++++++++++++++++
.../distr-tracing-tempo-install-overview.adoc | 19 +++++++
4 files changed, 116 insertions(+)
create mode 100644 distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
create mode 100644 modules/distr-tracing-tempo-install-instance.adoc
create mode 100644 modules/distr-tracing-tempo-install-operator.adoc
create mode 100644 modules/distr-tracing-tempo-install-overview.adoc
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
new file mode 100644
index 000000000000..53a390facc72
--- /dev/null
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
@@ -0,0 +1,36 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-tempo-installing"]
+= Installing distributed tracing platform Tempo
+include::_attributes/common-attributes.adoc[]
+:context: install-distributed-tracing
+
+toc::[]
+
+You can install {DTProductName} on {product-title} in either of two ways:
+
+* You can install {DTProductName} as part of {SMProductName}. Distributed tracing is included by default in the Service Mesh installation. To install {DTProductName} as part of a service mesh, follow the xref:../../service_mesh/v2x/preparing-ossm-installation.adoc#preparing-ossm-installation[Red Hat Service Mesh Installation] instructions. You must install {DTProductName} in the same namespace as your service mesh, that is, the `ServiceMeshControlPlane` and the {DTProductName} resources must be in the same namespace.
+
+* If you do not want to install a service mesh, you can use the {DTProductName} Operators to install {DTShortName} by itself. To install {DTProductName} without a service mesh, use the following instructions.
+
+== Prerequisites
+
+Before you can install {DTProductName}, review the installation activities, and ensure that you meet the prerequisites:
+
+* Possess an active {product-title} subscription on your Red Hat account. If you do not have a subscription, contact your sales representative for more information.
+
+* Review the xref:../../architecture/architecture-installation.adoc#installation-overview_architecture-installation[{product-title} {product-version} overview].
+* Install {product-title} {product-version}.
+
+** xref:../../installing/installing_aws/installing-aws-account.adoc#installing-aws-account[Install {product-title} {product-version} on AWS]
+** xref:../../installing/installing_aws/installing-aws-user-infra.adoc#installing-aws-user-infra[Install {product-title} {product-version} on user-provisioned AWS]
+** xref:../../installing/installing_bare_metal/installing-bare-metal.adoc#installing-bare-metal[Install {product-title} {product-version} on bare metal]
+** xref:../../installing/installing_vsphere/installing-vsphere.adoc#installing-vsphere[Install {product-title} {product-version} on vSphere]
+* Install the version of the OpenShift CLI (`oc`) that matches your {product-title} version and add it to your path.
+
+* An account with the `cluster-admin` role.
+
+include::modules/distr-tracing-tempo-install-overview.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-tempo-install-operator.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-tempo-install-instance.adoc[leveloffset=+1]
\ No newline at end of file
diff --git a/modules/distr-tracing-tempo-install-instance.adoc b/modules/distr-tracing-tempo-install-instance.adoc
new file mode 100644
index 000000000000..1074a992091a
--- /dev/null
+++ b/modules/distr-tracing-tempo-install-instance.adoc
@@ -0,0 +1,9 @@
+// Module included in the following assemblies:
+//
+//* distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-install-instance_{context}"]
+= Installing a {TempoName} instance
+
+https://issues.redhat.com/browse/TRACING-3296
diff --git a/modules/distr-tracing-tempo-install-operator.adoc b/modules/distr-tracing-tempo-install-operator.adoc
new file mode 100644
index 000000000000..9ac41de40674
--- /dev/null
+++ b/modules/distr-tracing-tempo-install-operator.adoc
@@ -0,0 +1,52 @@
+// Module included in the following assemblies:
+//
+//* distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-install-operator_{context}"]
+= Installing the {TempoName} Operator
+
+To install {TempoName}, you use the link:https://operatorhub.io/[OperatorHub] to install the {TempoName} Operator.
+
+By default, the Operator is installed in the `openshift-operators` project.
+
+.Prerequisites
+* You have access to the {product-title} web console.
+* You have access to the cluster as a user with the `cluster-admin` role. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
+* If you require persistent storage, you must also install the OpenShift Elasticsearch Operator before installing the {TempoName} Operator.
+
+[WARNING]
+====
+Do not install Community versions of the Operators. Community Operators are not supported.
+====
+
+.Procedure
+
+. Log in to the {product-title} web console as a user with the `cluster-admin` role. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
+
+. Navigate to *Operators* -> *OperatorHub*.
+
+. Type *distributed tracing platform* into the filter to locate the {TempoName} Operator.
+
+. Click the *{TempoName} Operator* provided by Red Hat to display information about the Operator.
+
+. Click *Install*.
+
+. On the *Install Operator* page, select the *stable* Update Channel. This automatically updates your Operator as new versions are released.
+//If you select a maintenance channel, for example, *Stable*, you will receive bug fixes and security patches for the length of the support cycle for that version.
+
+. Accept the default *All namespaces on the cluster (default)*. This installs the Operator in the default `openshift-operators` project and makes the Operator available to all projects in the cluster.
+
+* Accept the default *Automatic* approval strategy. By accepting the default, when a new version of this Operator is available, Operator Lifecycle Manager (OLM) automatically upgrades the running instance of your Operator without human intervention. If you select *Manual* updates, when a newer version of an Operator is available, OLM creates an update request. As a cluster administrator, you must then manually approve that update request to have the Operator updated to the new version.
++
+[NOTE]
+====
+The *Manual* approval strategy requires a user with appropriate credentials to approve the Operator install and subscription process.
+====
++
+
+. Click *Install*.
+
+. Navigate to *Operators* -> *Installed Operators*.
+
+. On the *Installed Operators* page, select the `openshift-operators` project. Wait until you see that the {TempoName} Operator shows a status of "Succeeded" before continuing.
diff --git a/modules/distr-tracing-tempo-install-overview.adoc b/modules/distr-tracing-tempo-install-overview.adoc
new file mode 100644
index 000000000000..3db4d266d492
--- /dev/null
+++ b/modules/distr-tracing-tempo-install-overview.adoc
@@ -0,0 +1,19 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+
+:_content-type: CONCEPT
+[id="distr-tracing-tempo-install-overview_{context}"]
+= {DTProductName} installation overview
+
+The steps for installing {DTProductName} are as follows:
+
+* Review the documentation and determine your deployment strategy.
+
+* If your deployment strategy requires persistent storage, install the OpenShift Elasticsearch Operator via the OperatorHub.
+
+* Install the {TempoName} Operator via the OperatorHub.
+
+* Modify the custom resource YAML file to support your deployment strategy.
+
+* Deploy one or more instances of {TempoName} to your {product-title} environment.
From 2ad85804211711392d93160d3adcb750a957df14 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 19 Jul 2023 19:12:21 +0200
Subject: [PATCH 053/108] add Tempo nav to _topic_maps/_topic_map.yml
---
_topic_maps/_topic_map.yml | 12 ++++++++++++
.../distr-tracing-tempo-installing.adoc | 2 +-
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 940a3e695dc6..afcb719ba69e 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3544,6 +3544,17 @@ Topics:
File: distr-tracing-jaeger-updating
- Name: Removing Jaeger
File: distr-tracing-jaeger-removing
+- Name: Distributed tracing platform (Tempo)
+ Dir: distr_tracing_tempo
+ Topics:
+ - Name: Installing Tempo
+ File: distr-tracing-tempo-installing
+ - Name: Configuring Tempo
+ File: distr-tracing-tempo-configuring
+ - Name: Updating Tempo
+ File: distr-tracing-tempo-updating
+ - Name: Removing Tempo
+ File: distr-tracing-tempo-removing
- Name: Distributed tracing data collection (OpenTelemetry)
Dir: distr_tracing_otel
Topics:
@@ -3551,6 +3562,7 @@ Topics:
File: distr-tracing-otel-installing
- Name: Configuring OpenTelemetry
File: distr-tracing-otel-configuring
+
---
Name: Virtualization
Dir: virt
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
index 53a390facc72..2feddc6bf791 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
@@ -2,7 +2,7 @@
[id="dist-tracing-tempo-installing"]
= Installing distributed tracing platform Tempo
include::_attributes/common-attributes.adoc[]
-:context: install-distributed-tracing
+:context: dist-tracing-tempo-installing
toc::[]
From 9ae6fabe426f68db5518e0824e1603e7c8e2fc61 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 19 Jul 2023 19:23:57 +0200
Subject: [PATCH 054/108] revert two modules that were removed by mistake
---
modules/distr-tracing-sidecar-automatic.adoc | 39 +++++++++++++
modules/distr-tracing-sidecar-manual.adoc | 58 ++++++++++++++++++++
2 files changed, 97 insertions(+)
create mode 100644 modules/distr-tracing-sidecar-automatic.adoc
create mode 100644 modules/distr-tracing-sidecar-manual.adoc
diff --git a/modules/distr-tracing-sidecar-automatic.adoc b/modules/distr-tracing-sidecar-automatic.adoc
new file mode 100644
index 000000000000..67713554a81e
--- /dev/null
+++ b/modules/distr-tracing-sidecar-automatic.adoc
@@ -0,0 +1,39 @@
+////
+This module included in the following assemblies:
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
+////
+:_content-type: REFERENCE
+[id="dist-tracing-sidecar-automatic_{context}"]
+= Automatically injecting sidecars
+
+The {JaegerName} Operator can inject Jaeger Agent sidecars into Deployment workloads. To enable automatic injection of sidecars, add the `sidecar.jaegertracing.io/inject` annotation set to either the string `true` or to the {JaegerShortName} instance name that is returned by running `$ oc get jaegers`.
+When you specify `true`, there should be only a single {JaegerShortName} instance for the same namespace as the deployment, otherwise, the Operator cannot determine which {JaegerShortName} instance to use. A specific {JaegerShortName} instance name on a deployment has a higher precedence than `true` applied on its namespace.
+
+The following snippet shows a simple application that will inject a sidecar, with the agent pointing to the single {JaegerShortName} instance available in the same namespace:
+
+.Automatic sidecar injection example
+[source,yaml]
+----
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: myapp
+ annotations:
+ "sidecar.jaegertracing.io/inject": "true" # <1>
+spec:
+ selector:
+ matchLabels:
+ app: myapp
+ template:
+ metadata:
+ labels:
+ app: myapp
+ spec:
+ containers:
+ - name: myapp
+ image: acme/myapp:myversion
+----
+
+<1> Set to either the string `true` or to the Jaeger instance name.
+
+When the sidecar is injected, the agent can then be accessed at its default location on `localhost`.
diff --git a/modules/distr-tracing-sidecar-manual.adoc b/modules/distr-tracing-sidecar-manual.adoc
new file mode 100644
index 000000000000..be79e87505dc
--- /dev/null
+++ b/modules/distr-tracing-sidecar-manual.adoc
@@ -0,0 +1,58 @@
+////
+This module included in the following assemblies:
+- distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
+////
+:_content-type: REFERENCE
+[id="distr-tracing-sidecar-manual_{context}"]
+= Manually injecting sidecars
+
+
+The {JaegerName} Operator can only automatically inject Jaeger Agent sidecars into Deployment workloads. For controller types other than `Deployments`, such as `StatefulSets`and `DaemonSets`, you can manually define the Jaeger agent sidecar in your specification.
+
+The following snippet shows the manual definition you can include in your containers section for a Jaeger agent sidecar:
+
+.Sidecar definition example for a `StatefulSet`
+[source,yaml]
+----
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+ name: example-statefulset
+ namespace: example-ns
+ labels:
+ app: example-app
+spec:
+
+ spec:
+ containers:
+ - name: example-app
+ image: acme/myapp:myversion
+ ports:
+ - containerPort: 8080
+ protocol: TCP
+ - name: jaeger-agent
+ image: registry.redhat.io/distributed-tracing/jaeger-agent-rhel7:
+ # The agent version must match the Operator version
+ imagePullPolicy: IfNotPresent
+ ports:
+ - containerPort: 5775
+ name: zk-compact-trft
+ protocol: UDP
+ - containerPort: 5778
+ name: config-rest
+ protocol: TCP
+ - containerPort: 6831
+ name: jg-compact-trft
+ protocol: UDP
+ - containerPort: 6832
+ name: jg-binary-trft
+ protocol: UDP
+ - containerPort: 14271
+ name: admin-http
+ protocol: TCP
+ args:
+ - --reporter.grpc.host-port=dns:///jaeger-collector-headless.example-ns:14250
+ - --reporter.type=grpc
+----
+
+The agent can then be accessed at its default location on localhost.
From a09dcd6ee84730d9063c564c0312c8c3e6873867 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Thu, 20 Jul 2023 18:29:15 +0200
Subject: [PATCH 055/108] fix duplicate anchor ID
---
.../distr_tracing_tempo/distr-tracing-tempo-configuring.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
index a8312586e757..bc6c5824f3e7 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
@@ -61,7 +61,7 @@ include::modules/distr-tracing-tempo-deploy-streaming.adoc[leveloffset=+1]
include::modules/distr-tracing-tempo-accessing-console.adoc[leveloffset=+2]
-[id="customizing-your-deployment"]
+[id="customizing-your-tempo-deployment"]
== Customizing your deployment
include::modules/distr-tracing-tempo-deployment-best-practices.adoc[leveloffset=+2]
From 6a01ebc421c266b60e1b95fd6e8ef4eafd5f3977 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Mon, 24 Jul 2023 14:41:41 +0200
Subject: [PATCH 056/108] transfer Ruben's Jira comment draft into this PR
---
.../distr-tracing-tempo-install-instance.adoc | 83 +++++++++++++++++++
1 file changed, 83 insertions(+)
diff --git a/modules/distr-tracing-tempo-install-instance.adoc b/modules/distr-tracing-tempo-install-instance.adoc
index 1074a992091a..986d6b64c89c 100644
--- a/modules/distr-tracing-tempo-install-instance.adoc
+++ b/modules/distr-tracing-tempo-install-instance.adoc
@@ -7,3 +7,86 @@
= Installing a {TempoName} instance
https://issues.redhat.com/browse/TRACING-3296
+
+Deploying the TempoStack
+
+You can use the OpenShift Container Platform web console to deploy the TempoStack.
+
+.Prerequisites
+
+* Supported Object Store (AWS S3, Google Cloud Storage, Azure, Swift, Minio, OpenShift Data Foundation)
+
+.Procedure
+
+Install the Tempo Operator:
+
+In the OpenShift Container Platform web console, click Operators → OperatorHub.
+
+Choose Tempo Operator from the list of available Operators, and click Install.
+
+Under Installation Mode, select All namespaces on the cluster.
+
+Under Installed Namespace, select openshift-operators-redhat.
+
+You must specify the openshift-operators-redhat namespace. The openshift-operators namespace might contain Community Operators, which are untrusted and might publish a metric with the same name as an OpenShift Container Platform metric, which would cause conflicts.
+
+Select an Approval Strategy.
+
+The Automatic strategy allows Operator Lifecycle Manager (OLM) to automatically update the Operator when a new version is available.
+
+The Manual strategy requires a user with appropriate credentials to approve the Operator update.
+
+Click Install.
+
+Verify that you installed the Tempo Operator. Visit the Operators → Installed Operators page and look for Tempo Operator.
+
+Ensure that Tempo Operator is listed with Status as Succeeded in all the projects.
+
+Create a Secret YAML file that uses the access_key_id and access_key_secret fields to specify your AWS credentials and bucketnames, endpoint and region to define the object storage location. For example:
+
+----
+apiVersion: v1
+kind: Secret
+metadata:
+ name: minio-test
+stringData:
+ endpoint: http://minio.minio.svc:9000
+ bucket: tempo
+ access_key_id: tempo
+ access_key_secret: supersecret
+type: Opaque
+----
+
+Create the TempOStack custom resource, this is a basic example:
+
+----
+apiVersion: tempo.grafana.com/v1alpha1
+kind: TempoStack
+metadata:
+ name: simplest
+spec:
+ storage:
+ secret:
+ name: minio-test
+ type: s3
+ storageSize: 1Gi
+ resources:
+ total:
+ limits:
+ memory: 2Gi
+ cpu: 2000m
+ template:
+ queryFrontend:
+ jaegerQuery:
+ enabled: true
+----
+
+Apply the configuration:
+
+----
+oc apply -f tempo.yaml
+----
+
+After create the TempoStack CR you should see a some pods on the namespace, wait until the stack to stabilized.
+
+The stack deployed above is configured to receive jaeger Thrift HTTP and OTLP, also because the jaeger query is enable you can use the jaeger UI to inspect the data.
From e0271d472f0f56ad0213f004f880e7111ba61d24 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Mon, 24 Jul 2023 15:16:05 +0200
Subject: [PATCH 057/108] Update
modules/distr-tracing-tempo-install-overview.adoc
---
modules/distr-tracing-tempo-install-overview.adoc | 1 -
1 file changed, 1 deletion(-)
diff --git a/modules/distr-tracing-tempo-install-overview.adoc b/modules/distr-tracing-tempo-install-overview.adoc
index 3db4d266d492..17f43bc7813e 100644
--- a/modules/distr-tracing-tempo-install-overview.adoc
+++ b/modules/distr-tracing-tempo-install-overview.adoc
@@ -8,7 +8,6 @@
The steps for installing {DTProductName} are as follows:
-* Review the documentation and determine your deployment strategy.
* If your deployment strategy requires persistent storage, install the OpenShift Elasticsearch Operator via the OperatorHub.
From 4b74ecab3b41a8ebb5de6d1136c8da662636b2eb Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Mon, 24 Jul 2023 17:43:59 +0200
Subject: [PATCH 058/108] add 'platform' to ':DTProductName:' and
':DTShortName:' in common-attributes.adoc
---
_attributes/common-attributes.adoc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index a19b1025133d..fdccb9318e0e 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -114,8 +114,8 @@ ifdef::openshift-origin[]
:CNVSubscriptionSpecName: community-kubevirt-hyperconverged
endif::[]
//distributed tracing
-:DTProductName: Red Hat OpenShift distributed tracing
-:DTShortName: distributed tracing
+:DTProductName: Red Hat OpenShift distributed tracing platform
+:DTShortName: distributed tracing platform
:DTProductVersion: 2.9
:JaegerName: Red Hat OpenShift distributed tracing platform
:JaegerShortName: distributed tracing platform
From 415adfcadef21e6f7e782c4ab8403407162f24d8 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Mon, 24 Jul 2023 19:11:35 +0200
Subject: [PATCH 059/108] remove product names from page names in the left nav
menu in _topic_map.yml
---
_topic_maps/_topic_map.yml | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 69aad892d8b9..6339984649e4 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3539,31 +3539,31 @@ Topics:
- Name: Distributed tracing platform (Jaeger)
Dir: distr_tracing_jaeger
Topics:
- - Name: Installing Jaeger
+ - Name: Installing
File: distr-tracing-jaeger-installing
- - Name: Configuring Jaeger
+ - Name: Configuring
File: distr-tracing-jaeger-configuring
- - Name: Updating Jaeger
+ - Name: Updating
File: distr-tracing-jaeger-updating
- - Name: Removing Jaeger
+ - Name: Removing
File: distr-tracing-jaeger-removing
- Name: Distributed tracing platform (Tempo)
Dir: distr_tracing_tempo
Topics:
- - Name: Installing Tempo
+ - Name: Installing
File: distr-tracing-tempo-installing
- - Name: Configuring Tempo
+ - Name: Configuring
File: distr-tracing-tempo-configuring
- - Name: Updating Tempo
+ - Name: Updating
File: distr-tracing-tempo-updating
- - Name: Removing Tempo
+ - Name: Removing
File: distr-tracing-tempo-removing
- Name: Distributed tracing data collection (OpenTelemetry)
Dir: distr_tracing_otel
Topics:
- - Name: Installing OpenTelemetry
+ - Name: Installing
File: distr-tracing-otel-installing
- - Name: Configuring OpenTelemetry
+ - Name: Configuring
File: distr-tracing-otel-configuring
---
From 804e3c5dba1d9db928c0420ba31a76e66b7ecf89 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 25 Jul 2023 14:13:56 +0200
Subject: [PATCH 060/108] transfer Israel's Jira comment draft from
https://issues.redhat.com/browse/TRACING-3291 into this PR
---
_topic_maps/_topic_map.yml | 2 +
.../distr-tracing-otel-migrating.adoc | 14 ++
...l-migrating-from-jaeger-with-sidecars.adoc | 145 ++++++++++++++++++
...igrating-from-jaeger-without-sidecars.adoc | 122 +++++++++++++++
4 files changed, 283 insertions(+)
create mode 100644 distr_tracing/distr_tracing_otel/distr-tracing-otel-migrating.adoc
create mode 100644 modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
create mode 100644 modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 6339984649e4..2cf5df919d0d 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3565,6 +3565,8 @@ Topics:
File: distr-tracing-otel-installing
- Name: Configuring
File: distr-tracing-otel-configuring
+ - Name: Migrating
+ File: distr-tracing-otel-migrating
---
Name: Virtualization
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-migrating.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-migrating.adoc
new file mode 100644
index 000000000000..1e3ba972446b
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-migrating.adoc
@@ -0,0 +1,14 @@
+:_content-type: ASSEMBLY
+[id="dist-tracing-otel-migrating"]
+= Migrating from {JaegerName} to {OTELName}
+include::_attributes/common-attributes.adoc[]
+:context: dist-tracing-otel-migrating
+
+toc::[]
+
+This migration guide is intended for customers who have already instrumented their applications using Jaeger for distributed tracing and are now looking to transition to OpenTelemetry. OpenTelemetry is an open-source project that provides a set of APIs, libraries, agents, and instrumentation to facilitate observability in distributed systems. Fortunately, you don't need to change the SDKs in your applications, as the OpenTelemetry Collector can ingest the Jaeger protocol. This guide will walk you through the process of configuring the OpenTelemetry Collector and your applications to report traces seamlessly.
+
+include::modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc[leveloffset=+1]
+
+include::modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc[leveloffset=+1]
+
diff --git a/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
new file mode 100644
index 000000000000..e1a75a1054db
--- /dev/null
+++ b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
@@ -0,0 +1,145 @@
+// Module included in the following assemblies:
+//
+// * distr-tracing-otel-migrating.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-otel-migrating-from-jaeger_{context}"]
+= (Temporary title) Migrating from {JaegerName} to {OTELName} with sidecars
+
+.Prerequisites
+
+* Existing instrumentation of applications uses {JaegerName} for tracing.
+* {OTELName} is installed.
+
+.Procedure
+
+The Red Hat Red Hat OpenShift Distributed Tracing Data Collection Operator can inject sidecars into Deployment workloads.
+
+Configure OpenTelemetry Collector as sidecar
+
+----
+apiVersion: opentelemetry.io/v1alpha1
+kind: OpenTelemetryCollector
+metadata:
+ name: otel
+ namespace: otel-collector-example
+spec:
+ mode: sidecar
+ config: |
+ receivers:
+ jaeger:
+ protocols:
+ grpc:
+ thrift_binary:
+ thrift_compact:
+ thrift_http:
+ processors:
+ batch:
+ memory_limiter:
+ check_interval: 1s
+ limit_percentage: 50
+ spike_limit_percentage: 30
+ resourcedetection:
+ detectors: [openshift]
+ timeout: 2s
+ exporters:
+ otlp:
+ endpoint: "tempo-example-gateway:8090"
+ tls:
+ insecure: true
+ service:
+ pipelines:
+ traces:
+ receivers: [jaeger]
+ processors: [memory_limiter, resourcedetection, batch]
+ exporters: [otlp]
+----
+
+Create a Service Account for running your application:
+
+----
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ name: otel-collector-sidecar
+----
+
+Create a ClusterRole for some permissions needed by some processors
+
+----
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: otel-collector-sidecar
+rules:
+# Permissions for infrastructures and infrastructures/status are needed for resourcedetectionprocessor
+- apiGroups: ["config.openshift.io"]
+ resources: ["infrastructures", "infrastructures/status"]
+ verbs: ["get", "watch", "list"]
+----
+
+Create a ClusterRoleBinding to give those permissions to the Service Account
+
+----
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: otel-collector-sidecar
+subjects:
+- kind: ServiceAccount
+ name: otel-collector-sidecar
+roleRef:
+ kind: ClusterRole
+ name: otel-collector-sidecar
+ apiGroup: rbac.authorization.k8s.io
+----
+
+Deploy the OpenTelemetry Collector as sidecar
+
+----
+apiVersion: opentelemetry.io/v1alpha1
+kind: OpenTelemetryCollector
+metadata:
+ name: otel
+ namespace: otel-collector-example
+spec:
+ mode: sidecar
+ config: |
+ receivers:
+ jaeger:
+ protocols:
+ grpc:
+ thrift_binary:
+ thrift_compact:
+ thrift_http:
+ processors:
+ batch:
+ memory_limiter:
+ check_interval: 1s
+ limit_percentage: 50
+ spike_limit_percentage: 30
+ resourcedetection:
+ detectors: [openshift]
+ timeout: 2s
+ exporters:
+ otlp:
+ endpoint: "tempo-example-gateway:8090"
+ tls:
+ insecure: true
+ service:
+ pipelines:
+ traces:
+ receivers: [jaeger]
+ processors: [memory_limiter, resourcedetection, batch]
+ exporters: [otlp]
+----
+
+Remove the injected Jaeger Agent from your application
+
+To remove the automatic sidecar injection from the Jaeger Operator, you need to remove the "sidecar.jaegertracing.io/inject": "true" annotation from your Deployment.
+Enable automatic injection of the OpenTelemetry sidecar
+
+To enable automatic injection of the OpenTelemetry sidecar, add the sidecar.opentelemetry.io/inject: "true" annotation to the .spec.template.metadata.annotations field of your Deployment.
+Use the created Service Account for your deployment
+
+Use the Service Account we created before (otel-collector-sidecar) for the deployment of your application. This will allow the processors to get the correct information and add it to your traces.
diff --git a/modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc b/modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc
new file mode 100644
index 000000000000..3ceee02c84a7
--- /dev/null
+++ b/modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc
@@ -0,0 +1,122 @@
+// Module included in the following assemblies:
+//
+// * distr-tracing-otel-migrating.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-otel-migrating-from-jaeger_{context}"]
+= (Temporary title) Migrating from {JaegerName} to {OTELName} without sidecars
+
+.Prerequisites
+
+* Existing instrumentation of applications uses {JaegerName} for tracing.
+* {OTELName} is installed.
+
+.Procedure
+
+Configure OpenTelemetry Collector deployment
+
+Create the OpenShift project where the OpenTelemetry Collector will be deployed
+
+----
+apiVersion: project.openshift.io/v1
+kind: Project
+metadata:
+ name: observability
+----
+
+Create a Service Account for running the OpenTelemetry Collector instance:
+
+----
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ name: otel-collector-deployment
+ namespace: observability
+----
+
+Create a ClusterRole for some permissions needed by some processors
+
+----
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: otel-collector
+rules:
+# Permissions for pods and namespaces resources are needed for the k8sattributesprocessor
+# Permissions for infrastructures and infrastructures/status are needed for resourcedetectionprocessor
+- apiGroups: ["", "config.openshift.io"]
+ resources: ["pods", "namespaces", "infrastructures", "infrastructures/status"]
+ verbs: ["get", "watch", "list"]
+----
+
+Create a ClusterRoleBinding to give those permissions to the Service Account
+
+----
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: otel-collector
+subjects:
+- kind: ServiceAccount
+ name: otel-collector-deployment
+ namespace: observability
+roleRef:
+ kind: ClusterRole
+ name: otel-collector
+ apiGroup: rbac.authorization.k8s.io
+----
+
+Create the OpenTelemetry Collector instance
+
+Note this collector will be exporting traces to a Tempo instance. Ensure you create your Tempo instance using the Red Hat Tempo Operator and place here the correct endpoint.
+
+----
+apiVersion: opentelemetry.io/v1alpha1
+kind: OpenTelemetryCollector
+metadata:
+ name: otel
+ namespace: observability
+spec:
+ mode: deployment
+ serviceAccount: otel-collector-deployment
+ config: |
+ receivers:
+ jaeger:
+ protocols:
+ grpc:
+ thrift_binary:
+ thrift_compact:
+ thrift_http:
+ processors:
+ batch:
+ k8sattributes:
+ memory_limiter:
+ check_interval: 1s
+ limit_percentage: 50
+ spike_limit_percentage: 30
+ resourcedetection:
+ detectors: [openshift]
+ exporters:
+ otlp:
+ endpoint: "tempo-example-gateway:8090"
+ tls:
+ insecure: true
+ service:
+ pipelines:
+ traces:
+ receivers: [jaeger]
+ processors: [memory_limiter, k8sattributes, resourcedetection, batch]
+ exporters: [otlp]
+----
+
+Point your tracing endpoint to the OpenTelemetry Operator
+
+If you are exporting your traces directly from your application to Jaeger, you will need to change the API endpoint from the Jaeger endpoint to the OpenTelemetry Collector endpoint.
+
+For instance, if you are using Golang and exporting your traces using the jaegerexporter, you can be using something like this:
+
+----
+exp, err := jaeger.New(jaeger.WithCollectorEndpoint(jaeger.WithEndpoint(url)))
+----
+
+url needs to point now to the OpenTelemetry Collector API endpoint.
From 0ca132faecb7baf0f0f46185264e12d6a8517587 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 25 Jul 2023 16:18:16 +0200
Subject: [PATCH 061/108] transfer Ruben's Jira comment draft from
https://issues.redhat.com/browse/TRACING-3290 into this PR
---
_topic_maps/_topic_map.yml | 2 +
.../distr-tracing-otel-forwarding.adoc | 138 ++++++++++++++++++
2 files changed, 140 insertions(+)
create mode 100644 distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml
index 2cf5df919d0d..7ede6d624c97 100644
--- a/_topic_maps/_topic_map.yml
+++ b/_topic_maps/_topic_map.yml
@@ -3565,6 +3565,8 @@ Topics:
File: distr-tracing-otel-installing
- Name: Configuring
File: distr-tracing-otel-configuring
+ - Name: Forwarding
+ File: distr-tracing-otel-forwarding
- Name: Migrating
File: distr-tracing-otel-migrating
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
new file mode 100644
index 000000000000..97437ce947a4
--- /dev/null
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
@@ -0,0 +1,138 @@
+:_content-type: PROCEDURE
+[id="distr-tracing-otel-forwarding"]
+= Forwarding traces to TempoStack by using OpenTelemetry Collector
+include::_attributes/common-attributes.adoc[]
+:context: distr-tracing-otel-forwarding
+
+To configure log forwarding to the TempoStack, you deploy and configure an OpenTelemetry collector.
+
+.Prerequisites
+
+* Tempo Operator is installed.
+* TempoStack is deployed on the cluster.
+* Red Hat OpenShift distributed tracing data collection operator is installed.
+
+.Procedure
+
+For the following steps, we will deploy an OpenTelemetry collector using the recomended processors/receivers/explorters, this example will deploy the collector in deployment mode, for other modes see the OpenTelemetry collector documentation.
+
+. Create a service account for the OpenTelemetry collector, here is an example:
++
+----
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ name: otel-collector-deployment
+----
+
+. Create a cluster role, this cluster role will be associated with the service account created in the first step:
++
+----
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+ name: otel-collector
+rules:
+# Permissions for pods and namespaces resources are needed for the k8sattributesprocessor
+# Permissions for infrastructures and infrastructures/status are needed for resourcedetectionprocessor
+- apiGroups: ["", "config.openshift.io"]
+ resources: ["pods", "namespaces", "infrastructures", "infrastructures/status"]
+ verbs: ["get", "watch", "list"]
+----
+
+Some permissions are neccesary to make the `k8sattributesprocessor` and `resourcedetectionprocessor` works, and those are recomended.
+
+. Bind the cluster role to the service account:
++
+----
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+ name: otel-collector
+subjects:
+- kind: ServiceAccount
+ name: otel-collector-deployment
+ namespace: otel-collector-example
+roleRef:
+ kind: ClusterRole
+ name: otel-collector
+ apiGroup: rbac.authorization.k8s.io
+----
+
+. Create the YAML file that will define the `OpenTelemetryCollector` custom resource (CR):
++
+----
+apiVersion: opentelemetry.io/v1alpha1
+kind: OpenTelemetryCollector
+metadata:
+ name: otel
+spec:
+ mode: deployment
+ serviceAccount: otel-collector-deployment
+ config: |
+ receivers:
+ jaeger:
+ protocols:
+ grpc:
+ thrift_binary:
+ thrift_compact:
+ thrift_http:
+ opencensus:
+ otlp:
+ protocols:
+ grpc:
+ http:
+ zipkin:
+ processors:
+ batch:
+ k8sattributes:
+ memory_limiter:
+ check_interval: 1s
+ limit_percentage: 50
+ spike_limit_percentage: 30
+ resourcedetection:
+ detectors: [openshift]
+ exporters:
+ otlp:
+ endpoint: "tempo-simplest-distributor:4317" # Endpoint for the tempo distributor.
+ tls:
+ insecure: true
+ service:
+ pipelines:
+ traces:
+ receivers: [jaeger, opencensus, otlp, zipkin]
+ processors: [memory_limiter, k8sattributes, resourcedetection, batch]
+ exporters: [otlp]
+----
+
+The collector is configured with a receiver for Jaeger traces, OpenCensus traces over the OpenCensus protocol, Zipkin traces over the Zipkin protocol and OTLP traces over the GRPC protocol. The collector exporter is configured to export OTLP, and is pointing to the tempo distributor endpoint, in this case "tempo-simplest-distributor:4317" which should be already created.
+
+You can find more examples of how to deploy OpenTelemetry with tempo in sidecar mode and multitenant here: https://github.com/os-observability/redhat-rhosdt-samples
+
+[TIP]
+====
+You can deploy the `tracegen` as a test:
+----
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: tracegen
+spec:
+ template:
+ spec:
+ containers:
+ - name: tracegen
+ image: ghcr.io/open-telemetry/opentelemetry-collector-contrib/tracegen:latest
+ command:
+ - "./tracegen"
+ args:
+ - -otlp-endpoint=otel-collector:4317
+ - -otlp-insecure
+ - -duration=30s
+ - -workers=1
+ restartPolicy: Never
+ backoffLimit: 4
+ ----
+
+====
+
From 71c3cf0affd7ca578d60674b1dabf4ba5703dafe Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 25 Jul 2023 17:45:04 +0200
Subject: [PATCH 062/108] Update
distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
Co-authored-by: Ben B.
---
.../distr-tracing-tempo-configuring.adoc | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
index bc6c5824f3e7..3f97e99789a1 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
@@ -13,12 +13,23 @@ The {TempoName} Operator uses a custom resource definition (CRD) file that defin
.Tempo custom resource file showing deployment strategy
[source,yaml]
----
-apiVersion: tempotracing.io/v1
-kind: Tempo
+apiVersion: tempo.grafana.com/v1alpha1
+kind: TempoStack
metadata:
- name: MyConfigFile
+ name: simple
+ namespace: tempo-example
spec:
- strategy: production <1>
+ storage:
+ secret:
+ # Name of the secret with the information to access the object storage
+ name: tempostack-odf
+ type: s3
+ storageSize: 1Gi
+ template:
+ queryFrontend:
+ jaegerQuery:
+ # Enable the Jaeger UI
+ enabled: true
----
<1> The {TempoName} Operator currently supports the following deployment strategies:
From f92877d784e56738a72ceb22b840ce8f99af0a3e Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 25 Jul 2023 17:58:47 +0200
Subject: [PATCH 063/108] Update _attributes/common-attributes.adoc
---
_attributes/common-attributes.adoc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index fdccb9318e0e..902e769d1381 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -117,8 +117,8 @@ endif::[]
:DTProductName: Red Hat OpenShift distributed tracing platform
:DTShortName: distributed tracing platform
:DTProductVersion: 2.9
-:JaegerName: Red Hat OpenShift distributed tracing platform
-:JaegerShortName: distributed tracing platform
+:JaegerName: Red Hat OpenShift distributed tracing platform (Jaeger)
+:JaegerShortName: distributed tracing platform (Jaeger)
:JaegerVersion: 1.??.0
:OTELName: Red Hat OpenShift distributed tracing data collection
:OTELShortName: distributed tracing data collection
From 59134b5fb02c346e9de80033466be6da74ec3f4d Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 25 Jul 2023 17:59:19 +0200
Subject: [PATCH 064/108] Update _attributes/common-attributes.adoc
---
_attributes/common-attributes.adoc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index 902e769d1381..5a5a2512aa6a 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -123,8 +123,8 @@ endif::[]
:OTELName: Red Hat OpenShift distributed tracing data collection
:OTELShortName: distributed tracing data collection
:OTELVersion: 0.??.0
-:TempoName: Tempo Operator
-:TempoShortName: Tempo
+:TempoName: TempoName: Red Hat OpenShift distributed tracing platform (Tempo)
+:TempoShortName: distributed tracing platform (Tempo)
:TempoVersion: 0.?.0
//logging
:logging-title: logging subsystem for Red Hat OpenShift
From e1f473b8f1e46985f0a7bf9f2be020ee48935618 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 25 Jul 2023 18:01:41 +0200
Subject: [PATCH 065/108] Update
modules/distr-tracing-tempo-install-overview.adoc
Co-authored-by: Israel Blancas
---
modules/distr-tracing-tempo-install-overview.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-tempo-install-overview.adoc b/modules/distr-tracing-tempo-install-overview.adoc
index 17f43bc7813e..d23ec12b3c9b 100644
--- a/modules/distr-tracing-tempo-install-overview.adoc
+++ b/modules/distr-tracing-tempo-install-overview.adoc
@@ -13,6 +13,6 @@ The steps for installing {DTProductName} are as follows:
* Install the {TempoName} Operator via the OperatorHub.
-* Modify the custom resource YAML file to support your deployment strategy.
+* Modify the custom resource YAML file to use your custom parameters.
* Deploy one or more instances of {TempoName} to your {product-title} environment.
From bdc4fcc56d6eeb6486c312b0d2c2366650915e51 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Tue, 25 Jul 2023 19:05:06 +0200
Subject: [PATCH 066/108] Apply suggestions from code review
---
.../distr-tracing-tempo-configuring.adoc | 1 -
...r-tracing-removing-tempo-instance-cli.adoc | 2 +-
.../distr-tracing-tempo-install-instance.adoc | 39 ++++++++++---------
3 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
index 3f97e99789a1..b22234c8f2f0 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
@@ -31,7 +31,6 @@ spec:
# Enable the Jaeger UI
enabled: true
----
-
<1> The {TempoName} Operator currently supports the following deployment strategies:
* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
diff --git a/modules/distr-tracing-removing-tempo-instance-cli.adoc b/modules/distr-tracing-removing-tempo-instance-cli.adoc
index 8ae2f8aee864..61336a5b69b7 100644
--- a/modules/distr-tracing-removing-tempo-instance-cli.adoc
+++ b/modules/distr-tracing-removing-tempo-instance-cli.adoc
@@ -20,7 +20,7 @@ $ oc login --username=
$ oc get deployments -n
----
+
-For example,
+For example:
+
[source,terminal]
----
diff --git a/modules/distr-tracing-tempo-install-instance.adoc b/modules/distr-tracing-tempo-install-instance.adoc
index 986d6b64c89c..08f196060595 100644
--- a/modules/distr-tracing-tempo-install-instance.adoc
+++ b/modules/distr-tracing-tempo-install-instance.adoc
@@ -18,32 +18,31 @@ You can use the OpenShift Container Platform web console to deploy the TempoStac
.Procedure
-Install the Tempo Operator:
+. Install the Tempo Operator:
-In the OpenShift Container Platform web console, click Operators → OperatorHub.
+.. In the OpenShift Container Platform web console, click *Operators* → *OperatorHub*.
-Choose Tempo Operator from the list of available Operators, and click Install.
+.. Choose *Tempo Operator* from the list of available Operators, and click *Install*.
-Under Installation Mode, select All namespaces on the cluster.
+.. Under *Installation Mode*, select *All namespaces* on the cluster.
-Under Installed Namespace, select openshift-operators-redhat.
+.. Under *Installed Namespace*, select *openshift-operators-redhat*.
++
+IMPORTANT: You must specify the `openshift-operators-redhat` namespace. The `openshift-operators` namespace might contain Community Operators, which are untrusted and might publish a metric with the same name as an OpenShift Container Platform metric, which would cause conflicts.
-You must specify the openshift-operators-redhat namespace. The openshift-operators namespace might contain Community Operators, which are untrusted and might publish a metric with the same name as an OpenShift Container Platform metric, which would cause conflicts.
+. Select an Approval Strategy:
+** The Automatic strategy allows Operator Lifecycle Manager (OLM) to automatically update the Operator when a new version is available.
+** The Manual strategy requires a user with appropriate credentials to approve the Operator update.
-Select an Approval Strategy.
+. Click *Install*.
-The Automatic strategy allows Operator Lifecycle Manager (OLM) to automatically update the Operator when a new version is available.
+. Verify that you installed the Tempo Operator:
+.. Go to *Operators* → *Installed Operators* page and look for *Tempo Operator*.
+.. Ensure that *Tempo Operator* is listed with *Status* as *Succeeded* in all the projects.
-The Manual strategy requires a user with appropriate credentials to approve the Operator update.
-
-Click Install.
-
-Verify that you installed the Tempo Operator. Visit the Operators → Installed Operators page and look for Tempo Operator.
-
-Ensure that Tempo Operator is listed with Status as Succeeded in all the projects.
-
-Create a Secret YAML file that uses the access_key_id and access_key_secret fields to specify your AWS credentials and bucketnames, endpoint and region to define the object storage location. For example:
+. Create a Secret YAML file that uses the `access_key_id` and `access_key_secret` fields to specify your AWS credentials and bucketnames, endpoint and region to define the object storage location. For example:
+[source,yaml]
----
apiVersion: v1
kind: Secret
@@ -57,8 +56,9 @@ stringData:
type: Opaque
----
-Create the TempOStack custom resource, this is a basic example:
+. Create the TempOStack custom resource. For example:
+[source,yaml]
----
apiVersion: tempo.grafana.com/v1alpha1
kind: TempoStack
@@ -81,8 +81,9 @@ spec:
enabled: true
----
-Apply the configuration:
+. Apply the configuration:
+[source,terminal]
----
oc apply -f tempo.yaml
----
From 29a17604c2458b88599b4aabc189cf8323280753 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 11:59:02 +0200
Subject: [PATCH 067/108] align context and id values
---
.../distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc | 2 +-
.../distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc | 2 +-
.../distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc | 2 +-
.../distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc | 2 +-
.../distr_tracing_otel/distr-tracing-otel-configuring.adoc | 2 +-
.../distr_tracing_otel/distr-tracing-otel-forwarding.adoc | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
index 55a05d236a6a..b6f08a845ef2 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
@@ -2,7 +2,7 @@
[id="distr-tracing-jaeger-configuring"]
= Configuring and deploying distributed tracing platform Jaeger
include::_attributes/common-attributes.adoc[]
-:context: deploying-distr-tracing-platform
+:context: distr-tracing-jaeger-configuring
toc::[]
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
index dde599c90e22..707e993efe73 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-installing.adoc
@@ -2,7 +2,7 @@
[id="dist-tracing-jaeger-installing"]
= Installing distributed tracing platform Jaeger
include::_attributes/common-attributes.adoc[]
-:context: install-distributed-tracing
+:context: dist-tracing-jaeger-installing
toc::[]
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
index 13b41b03163f..421e7851ceb4 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-removing.adoc
@@ -2,7 +2,7 @@
[id="dist-tracing-jaeger-removing"]
= Removing distributed tracing platform Jaeger
include::_attributes/common-attributes.adoc[]
-:context: remove-distributed-tracing
+:context: dist-tracing-jaeger-removing
toc::[]
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
index 8a471a93a03b..ab2f4938aef4 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-updating.adoc
@@ -2,7 +2,7 @@
[id="dist-tracing-jaeger-updating"]
= Updating distributed tracing platform Jaeger
include::_attributes/common-attributes.adoc[]
-:context: update-distributed-tracing
+:context: dist-tracing-jaeger-updating
toc::[]
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
index fc263040fbeb..562dc205f5b5 100644
--- a/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-configuring.adoc
@@ -2,7 +2,7 @@
[id="distr-tracing-otel-configuring"]
= Configuring and deploying distributed tracing data collection OpenTelemetry
include::_attributes/common-attributes.adoc[]
-:context: deploying-distr-tracing-otel
+:context: distr-tracing-otel-configuring
toc::[]
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
index 97437ce947a4..378e602945cd 100644
--- a/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
@@ -132,7 +132,7 @@ spec:
- -workers=1
restartPolicy: Never
backoffLimit: 4
- ----
+----
====
From c4b30c7ac75c596803ced564c7153a19b10bb507 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 13:06:06 +0200
Subject: [PATCH 068/108] attempt to restart Travis CI job
---
.../distr_tracing_otel/distr-tracing-otel-forwarding.adoc | 1 -
1 file changed, 1 deletion(-)
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
index 378e602945cd..bfe1ab35833e 100644
--- a/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
@@ -135,4 +135,3 @@ spec:
----
====
-
From 49d558d4806b279286e663ab3745a28199487a3e Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 13:07:25 +0200
Subject: [PATCH 069/108] Update
modules/distr-tracing-tempo-install-instance.adoc
---
modules/distr-tracing-tempo-install-instance.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-tempo-install-instance.adoc b/modules/distr-tracing-tempo-install-instance.adoc
index 08f196060595..1a246747a1ae 100644
--- a/modules/distr-tracing-tempo-install-instance.adoc
+++ b/modules/distr-tracing-tempo-install-instance.adoc
@@ -85,7 +85,7 @@ spec:
[source,terminal]
----
-oc apply -f tempo.yaml
+$ oc apply -f tempo.yaml
----
After create the TempoStack CR you should see a some pods on the namespace, wait until the stack to stabilized.
From 76805b9d4fcacf8c4e22cbcc8b3c53e1efc3af97 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 13:08:03 +0200
Subject: [PATCH 070/108] Update
modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
Co-authored-by: Israel Blancas
---
.../distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
index e1a75a1054db..660597076022 100644
--- a/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
+++ b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
@@ -64,7 +64,7 @@ metadata:
name: otel-collector-sidecar
----
-Create a ClusterRole for some permissions needed by some processors
+Create a ClusterRole for the permissions needed by some processors
----
apiVersion: rbac.authorization.k8s.io/v1
From 23c9f12b682051f42fa208f0c0587797c2b4a991 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 13:08:26 +0200
Subject: [PATCH 071/108] Update
modules/distr-tracing-tempo-config-storage.adoc
Co-authored-by: Israel Blancas
---
modules/distr-tracing-tempo-config-storage.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-tempo-config-storage.adoc b/modules/distr-tracing-tempo-config-storage.adoc
index 9f6cf12efaa1..366d982e297d 100644
--- a/modules/distr-tracing-tempo-config-storage.adoc
+++ b/modules/distr-tracing-tempo-config-storage.adoc
@@ -6,7 +6,7 @@
[id="distr-tracing-tempo-config-storage_{context}"]
= Distributed tracing storage configuration options
-You configure storage for the Collector, Ingester, and Query services under `spec.storage`. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
+You configure storage for the Collector, Ingester, Distributor, and Query services under `spec.storage`. Multiple instances of each of these components can be provisioned as required for performance and resilience purposes.
.General storage parameters used by the {TempoName} Operator to define distributed tracing storage
From fdd7517f9f898c2d07df062225931550ca4f4bae Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 14:49:03 +0200
Subject: [PATCH 072/108] troubleshoot Travis CI errors
---
.../distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc | 2 --
.../distr_tracing_otel/distr-tracing-otel-forwarding.adoc | 1 -
.../distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc | 2 +-
...str-tracing-otel-migrating-from-jaeger-without-sidecars.adoc | 2 +-
4 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
index b6f08a845ef2..9fcaefed0919 100644
--- a/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
+++ b/distr_tracing/distr_tracing_jaeger/distr-tracing-jaeger-configuring.adoc
@@ -20,7 +20,6 @@ metadata:
spec:
strategy: production <1>
----
-
<1> The {JaegerName} Operator currently supports the following deployment strategies:
* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
@@ -47,7 +46,6 @@ The streaming deployment strategy is currently unsupported on {ibmzProductName}.
[NOTE]
====
There are two ways to install and use {DTProductName}, as part of a service mesh or as a stand alone component. If you have installed {DTShortName} as part of {SMProductName}, you can perform basic configuration as part of the xref:../../service_mesh/v2x/installing-ossm.adoc#installing-ossm[ServiceMeshControlPlane] but for completely control you should configure a Jaeger CR and then xref:../../service_mesh/v2x/ossm-observability.adoc#ossm-config-external-jaeger_observability[reference your distributed tracing configuration file in the ServiceMeshControlPlane].
-
====
include::modules/distr-tracing-deploy-default.adoc[leveloffset=+1]
diff --git a/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
index bfe1ab35833e..4a8e496d0534 100644
--- a/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
+++ b/distr_tracing/distr_tracing_otel/distr-tracing-otel-forwarding.adoc
@@ -133,5 +133,4 @@ spec:
restartPolicy: Never
backoffLimit: 4
----
-
====
diff --git a/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
index e1a75a1054db..aec057525afd 100644
--- a/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
+++ b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
@@ -3,7 +3,7 @@
// * distr-tracing-otel-migrating.adoc
:_content-type: PROCEDURE
-[id="distr-tracing-otel-migrating-from-jaeger_{context}"]
+[id="distr-tracing-otel-migrating-from-jaeger-with-sidecars_{context}"]
= (Temporary title) Migrating from {JaegerName} to {OTELName} with sidecars
.Prerequisites
diff --git a/modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc b/modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc
index 3ceee02c84a7..9bbe53fb9e06 100644
--- a/modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc
+++ b/modules/distr-tracing-otel-migrating-from-jaeger-without-sidecars.adoc
@@ -3,7 +3,7 @@
// * distr-tracing-otel-migrating.adoc
:_content-type: PROCEDURE
-[id="distr-tracing-otel-migrating-from-jaeger_{context}"]
+[id="distr-tracing-otel-migrating-from-jaeger-without-sidecars_{context}"]
= (Temporary title) Migrating from {JaegerName} to {OTELName} without sidecars
.Prerequisites
From e3afbf1e9a473ae56ecebc040adbd812d906f3d9 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 15:03:19 +0200
Subject: [PATCH 073/108] troubleshoot Travis CI errors
---
.../distr_tracing_tempo/distr-tracing-tempo-configuring.adoc | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
index b22234c8f2f0..2db76d753c47 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc
@@ -31,7 +31,8 @@ spec:
# Enable the Jaeger UI
enabled: true
----
-<1> The {TempoName} Operator currently supports the following deployment strategies:
+
+The {TempoName} Operator currently supports the following deployment strategies:
* *allInOne* (Default) - This strategy is intended for development, testing, and demo purposes; it is not intended for production use. The main backend components, Agent, Collector, and Query service, are all packaged into a single executable which is configured, by default. to use in-memory storage.
+
From 6d6ea08bc8a1178848ddaefd73a57d0138d70060 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 26 Jul 2023 15:25:09 +0200
Subject: [PATCH 074/108] Update _attributes/common-attributes.adoc
---
_attributes/common-attributes.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index 5a5a2512aa6a..747ebf5ecfed 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -123,7 +123,7 @@ endif::[]
:OTELName: Red Hat OpenShift distributed tracing data collection
:OTELShortName: distributed tracing data collection
:OTELVersion: 0.??.0
-:TempoName: TempoName: Red Hat OpenShift distributed tracing platform (Tempo)
+:TempoName: Red Hat OpenShift distributed tracing platform (Tempo)
:TempoShortName: distributed tracing platform (Tempo)
:TempoVersion: 0.?.0
//logging
From 478d1308af095a48086870e837a3d5ae1699870d Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Thu, 27 Jul 2023 16:11:25 +0200
Subject: [PATCH 075/108] remove installtion option using Service Mesh from
Tempo install overview
---
.../distr_tracing_tempo/distr-tracing-tempo-installing.adoc | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
index 2feddc6bf791..47a78f90394a 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
@@ -6,11 +6,7 @@ include::_attributes/common-attributes.adoc[]
toc::[]
-You can install {DTProductName} on {product-title} in either of two ways:
-
-* You can install {DTProductName} as part of {SMProductName}. Distributed tracing is included by default in the Service Mesh installation. To install {DTProductName} as part of a service mesh, follow the xref:../../service_mesh/v2x/preparing-ossm-installation.adoc#preparing-ossm-installation[Red Hat Service Mesh Installation] instructions. You must install {DTProductName} in the same namespace as your service mesh, that is, the `ServiceMeshControlPlane` and the {DTProductName} resources must be in the same namespace.
-
-* If you do not want to install a service mesh, you can use the {DTProductName} Operators to install {DTShortName} by itself. To install {DTProductName} without a service mesh, use the following instructions.
+TBD
== Prerequisites
From 567b0cb4f949a778d857bff1f87322ab253e089e Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Thu, 27 Jul 2023 16:40:39 +0200
Subject: [PATCH 076/108] Apply suggestions from code review
---
...r-tracing-otel-migrating-from-jaeger-with-sidecars.adoc | 7 ++++---
modules/distr-tracing-tempo-deploy-streaming.adoc | 4 ----
2 files changed, 4 insertions(+), 7 deletions(-)
diff --git a/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
index 211d19096c39..6141842e3f02 100644
--- a/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
+++ b/modules/distr-tracing-otel-migrating-from-jaeger-with-sidecars.adoc
@@ -8,12 +8,12 @@
.Prerequisites
-* Existing instrumentation of applications uses {JaegerName} for tracing.
+* {JaegerName} is used on the cluster.
* {OTELName} is installed.
.Procedure
-The Red Hat Red Hat OpenShift Distributed Tracing Data Collection Operator can inject sidecars into Deployment workloads.
+The {OTELName} Operator can inject sidecars into Deployment workloads.
Configure OpenTelemetry Collector as sidecar
@@ -44,7 +44,7 @@ spec:
timeout: 2s
exporters:
otlp:
- endpoint: "tempo-example-gateway:8090"
+ endpoint: "tempo--gateway:8090" <1>
tls:
insecure: true
service:
@@ -54,6 +54,7 @@ spec:
processors: [memory_limiter, resourcedetection, batch]
exporters: [otlp]
----
+<1> This points to the Gateway of a Tempo instance deployed by using the `` Tempo Operator.
Create a Service Account for running your application:
diff --git a/modules/distr-tracing-tempo-deploy-streaming.adoc b/modules/distr-tracing-tempo-deploy-streaming.adoc
index fad269327c19..522c7068ac62 100644
--- a/modules/distr-tracing-tempo-deploy-streaming.adoc
+++ b/modules/distr-tracing-tempo-deploy-streaming.adoc
@@ -34,10 +34,6 @@ The streaming deployment strategy is currently unsupported on {ibmzProductName}.
. Create a new project, for example `tracing-system`.
+
-[NOTE]
-====
-If you are installing as part of Service Mesh, the {DTShortName} resources must be installed in the same namespace as the `ServiceMeshControlPlane` resource, for example `istio-system`.
-====
+
.. Navigate to *Home* -> *Projects*.
From 06e0788a1126136e46854ecbce6d8b7b4f770407 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Thu, 27 Jul 2023 16:43:59 +0200
Subject: [PATCH 077/108] Apply Israel's suggestions from code review
Co-authored-by: Israel Blancas
---
.../distr-tracing-tempo-deploy-default.adoc | 23 ++++++++++++++++---
...acing-tempo-deployment-best-practices.adoc | 2 +-
.../distr-tracing-tempo-install-instance.adoc | 4 ++--
.../distr-tracing-tempo-install-overview.adoc | 3 ++-
4 files changed, 25 insertions(+), 7 deletions(-)
diff --git a/modules/distr-tracing-tempo-deploy-default.adoc b/modules/distr-tracing-tempo-deploy-default.adoc
index 4452f50336e4..a050672766c5 100644
--- a/modules/distr-tracing-tempo-deploy-default.adoc
+++ b/modules/distr-tracing-tempo-deploy-default.adoc
@@ -6,7 +6,7 @@
[id="distr-tracing-tempo-deploy-default_{context}"]
= Deploying the {DTShortName} default strategy from the web console
-The custom resource definition (CRD) defines the configuration used when you deploy an instance of {DTProductName}. The default CR is named `tempo-all-in-one-inmemory` and it is configured with minimal resources to ensure that you can successfully install it on a default {product-title} installation. You can use this default configuration to create a {TempoName} instance that uses the `AllInOne` deployment strategy, or you can define your own custom resource file.
+The custom resource definition (CRD) defines the configuration used when you deploy an instance of {DTProductName}. The default CR is configured with minimal resources to ensure that you can successfully install it on a default {product-title} installation. You can use this default configuration to create a basic {TempoName} instance, or you can define your own custom resource file.
[NOTE]
====
@@ -18,6 +18,7 @@ In-memory storage is not persistent. If the Tempo pod shuts down, restarts, or i
* The {TempoName} Operator has been installed.
* You have reviewed the instructions for how to customize the deployment.
* You have access to the cluster as a user with the `cluster-admin` role.
+* Supported Object Store (AWS S3, Google Cloud Storage, Azure, Minio, OpenShift Data Foundation)
.Procedure
@@ -48,7 +49,7 @@ If you are installing as part of Service Mesh, the {DTShortName} resources must
. On the *Create Tempo* page, to install using the defaults, click *Create* to create the {TempoShortName} instance.
-. On the *Tempos* page, click the name of the {TempoShortName} instance, for example, `tempo-all-in-one-inmemory`.
+. On the *Tempos* page, click the name of the {TempoShortName} instance, for example, `example`.
. On the *Tempo Details* page, click the *Resources* tab. Wait until the pod has a status of "Running" before continuing.
@@ -81,6 +82,22 @@ $ oc login --username= https://:8443
$ oc new-project tracing-system
----
+. Create a Secret YAML file to specify the secret for your object storage bucket. For instance, if you are using AWS S3, create a file that uses the `access_key_id` and `access_key_secret` fields to specify your AWS credentials and bucketnames, endpoint and region to define the object storage location. For example:
+
+[source,yaml]
+----
+apiVersion: v1
+kind: Secret
+metadata:
+ name: minio-secret
+stringData:
+ endpoint: http://minio.minio.svc:9000
+ bucket: tempo
+ access_key_id: tempo
+ access_key_secret: supersecret
+type: Opaque
+----
+
. Create a custom resource file named `tempo.yaml` that contains the following text:
+
.Example tempo-all-in-one.yaml
@@ -89,7 +106,7 @@ $ oc new-project tracing-system
apiVersion: tempotracing.io/v1
kind: Tempo
metadata:
- name: tempo-all-in-one-inmemory
+ name: example
----
. Run the following command to deploy {TempoShortName}:
diff --git a/modules/distr-tracing-tempo-deployment-best-practices.adoc b/modules/distr-tracing-tempo-deployment-best-practices.adoc
index 82b4661d1244..09ac786720a2 100644
--- a/modules/distr-tracing-tempo-deployment-best-practices.adoc
+++ b/modules/distr-tracing-tempo-deployment-best-practices.adoc
@@ -6,7 +6,7 @@
[id="distr-tracing-tempo-deployment-best-practices_{context}"]
= Deployment best practices
-* {DTProductName} instance names must be unique. If you want to have multiple {TempoName} instances and are using sidecar injected agents, then the {TempoName} instances should have unique names, and the injection annotation should explicitly specify the {TempoName} instance name the tracing data should be reported to.
+* {DTProductName} instance names must be unique.
* If you have a multitenant implementation and tenants are separated by namespaces, deploy a {TempoName} instance to each tenant namespace.
diff --git a/modules/distr-tracing-tempo-install-instance.adoc b/modules/distr-tracing-tempo-install-instance.adoc
index 1a246747a1ae..22a3dd3b90cb 100644
--- a/modules/distr-tracing-tempo-install-instance.adoc
+++ b/modules/distr-tracing-tempo-install-instance.adoc
@@ -14,7 +14,7 @@ You can use the OpenShift Container Platform web console to deploy the TempoStac
.Prerequisites
-* Supported Object Store (AWS S3, Google Cloud Storage, Azure, Swift, Minio, OpenShift Data Foundation)
+* Supported Object Store (AWS S3, Google Cloud Storage, Azure, Minio, OpenShift Data Foundation)
.Procedure
@@ -40,7 +40,7 @@ IMPORTANT: You must specify the `openshift-operators-redhat` namespace. The `ope
.. Go to *Operators* → *Installed Operators* page and look for *Tempo Operator*.
.. Ensure that *Tempo Operator* is listed with *Status* as *Succeeded* in all the projects.
-. Create a Secret YAML file that uses the `access_key_id` and `access_key_secret` fields to specify your AWS credentials and bucketnames, endpoint and region to define the object storage location. For example:
+. Create a Secret YAML file to specify the secret for your object storage bucket. For instance, if you are using AWS S3, create a file that uses the `access_key_id` and `access_key_secret` fields to specify your AWS credentials and bucketnames, endpoint and region to define the object storage location. For example:
[source,yaml]
----
diff --git a/modules/distr-tracing-tempo-install-overview.adoc b/modules/distr-tracing-tempo-install-overview.adoc
index d23ec12b3c9b..d6f7337dc58a 100644
--- a/modules/distr-tracing-tempo-install-overview.adoc
+++ b/modules/distr-tracing-tempo-install-overview.adoc
@@ -9,7 +9,8 @@
The steps for installing {DTProductName} are as follows:
-* If your deployment strategy requires persistent storage, install the OpenShift Elasticsearch Operator via the OperatorHub.
+* Supported Log Store (AWS S3, Google Cloud Storage, Azure, Minio, OpenShift Data Foundation)
+Same as Loki.
* Install the {TempoName} Operator via the OperatorHub.
From ee36eebf05077a8e0b556f8ed7f8db84f45b992b Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 2 Aug 2023 17:29:30 +0200
Subject: [PATCH 078/108] edit
/modules/distr-tracing-tempo-install-instance.adoc
---
modules/distr-tracing-tempo-install-instance.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-tempo-install-instance.adoc b/modules/distr-tracing-tempo-install-instance.adoc
index 22a3dd3b90cb..f54b96513396 100644
--- a/modules/distr-tracing-tempo-install-instance.adoc
+++ b/modules/distr-tracing-tempo-install-instance.adoc
@@ -90,4 +90,4 @@ $ oc apply -f tempo.yaml
After create the TempoStack CR you should see a some pods on the namespace, wait until the stack to stabilized.
-The stack deployed above is configured to receive jaeger Thrift HTTP and OTLP, also because the jaeger query is enable you can use the jaeger UI to inspect the data.
+The stack deployed above is configured to receive Jaeger Thrift over HTTP and OTLP, also because the jaeger query is enable you can use the jaeger UI to inspect the data.
From 2bcee2aedabaabdc20c4bec03b1d43afabdba472 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Wed, 2 Aug 2023 17:40:34 +0200
Subject: [PATCH 079/108] Apply suggestions from code review
---
_attributes/common-attributes.adoc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index 747ebf5ecfed..50a5c940dd04 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -119,13 +119,13 @@ endif::[]
:DTProductVersion: 2.9
:JaegerName: Red Hat OpenShift distributed tracing platform (Jaeger)
:JaegerShortName: distributed tracing platform (Jaeger)
-:JaegerVersion: 1.??.0
+:JaegerVersion: 1.47.0
:OTELName: Red Hat OpenShift distributed tracing data collection
:OTELShortName: distributed tracing data collection
-:OTELVersion: 0.??.0
+:OTELVersion: 0.81.0
:TempoName: Red Hat OpenShift distributed tracing platform (Tempo)
:TempoShortName: distributed tracing platform (Tempo)
-:TempoVersion: 0.?.0
+:TempoVersion: 2.1.1
//logging
:logging-title: logging subsystem for Red Hat OpenShift
:logging-title-uc: Logging subsystem for Red Hat OpenShift
From a1af38ffb36080bf88f8b2f1db17e1fbe0228099 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Thu, 3 Aug 2023 23:35:44 +0200
Subject: [PATCH 080/108] transfer two gists about web console installation and
cli installation to the PR branch and modify installation-related files
---
.../distr-tracing-tempo-installing.adoc | 23 +--
modules/distr-tracing-tempo-install-cli.adoc | 169 ++++++++++++++++++
.../distr-tracing-tempo-install-instance.adoc | 93 ----------
.../distr-tracing-tempo-install-operator.adoc | 52 ------
.../distr-tracing-tempo-install-overview.adoc | 19 --
...str-tracing-tempo-install-web-console.adoc | 140 +++++++++++++++
...-secret-parameters-and-secret-example.adoc | 89 +++++++++
7 files changed, 400 insertions(+), 185 deletions(-)
create mode 100644 modules/distr-tracing-tempo-install-cli.adoc
delete mode 100644 modules/distr-tracing-tempo-install-instance.adoc
delete mode 100644 modules/distr-tracing-tempo-install-operator.adoc
delete mode 100644 modules/distr-tracing-tempo-install-overview.adoc
create mode 100644 modules/distr-tracing-tempo-install-web-console.adoc
create mode 100644 snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
index 47a78f90394a..9cccc2ed47f2 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
@@ -8,25 +8,6 @@ toc::[]
TBD
-== Prerequisites
+include::modules/distr-tracing-tempo-install-web-console.adoc[leveloffset=+1]
-Before you can install {DTProductName}, review the installation activities, and ensure that you meet the prerequisites:
-
-* Possess an active {product-title} subscription on your Red Hat account. If you do not have a subscription, contact your sales representative for more information.
-
-* Review the xref:../../architecture/architecture-installation.adoc#installation-overview_architecture-installation[{product-title} {product-version} overview].
-* Install {product-title} {product-version}.
-
-** xref:../../installing/installing_aws/installing-aws-account.adoc#installing-aws-account[Install {product-title} {product-version} on AWS]
-** xref:../../installing/installing_aws/installing-aws-user-infra.adoc#installing-aws-user-infra[Install {product-title} {product-version} on user-provisioned AWS]
-** xref:../../installing/installing_bare_metal/installing-bare-metal.adoc#installing-bare-metal[Install {product-title} {product-version} on bare metal]
-** xref:../../installing/installing_vsphere/installing-vsphere.adoc#installing-vsphere[Install {product-title} {product-version} on vSphere]
-* Install the version of the OpenShift CLI (`oc`) that matches your {product-title} version and add it to your path.
-
-* An account with the `cluster-admin` role.
-
-include::modules/distr-tracing-tempo-install-overview.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-tempo-install-operator.adoc[leveloffset=+1]
-
-include::modules/distr-tracing-tempo-install-instance.adoc[leveloffset=+1]
\ No newline at end of file
+include::modules/distr-tracing-tempo-install-cli.adoc[leveloffset=+1]
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
new file mode 100644
index 000000000000..29101254a564
--- /dev/null
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -0,0 +1,169 @@
+// Module included in the following assemblies:
+//
+//* distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-install-cli_{context}"]
+= Installing {TempoName} by using the CLI
+
+.Prerequisites
+
+* An active OpenShift CLI (`oc`) session by a xref:https://docs.openshift.com/container-platform/latest/admin_solutions/user_role_mgmt.html#creating-a-cluster-administrator[cluster administrator with the `cluster-admin` role]. See link:https://docs.openshift.com/container-platform/{ocp4-ver}/cli_reference/openshift_cli/getting-started-cli.html[Getting started with the OpenShift CLI].
++
+TIP: Ensure that your OpenShift CLI (`oc`) version is up to date and matches your {product-title} version.
+
+* You are using a supported provider of object storage: link:https://www.redhat.com/en/technologies/cloud-computing/openshift-data-foundation[Red Hat OpenShift Data Foundation], link:https://min.io/[MinIO], link:https://aws.amazon.com/s3/[Amazon S3], link:https://azure.microsoft.com/en-us/products/storage/blobs/[Azure Blob Storage], link:https://cloud.google.com/storage/[Google Cloud Storage].
+
+. Install the Tempo Operator:
+
+.. Create a subscription.
++
+[source,yaml]
+----
+$ oc apply -f - << EOF
+apiVersion: operators.coreos.com/v1alpha1
+kind: Subscription
+metadata:
+ name: tempo-product
+ namespace: openshift-operators
+spec:
+ channel: stable
+ installPlanApproval: Automatic
+ name: tempo-product
+ source: redhat-operators
+ sourceNamespace: openshift-marketplace
+EOF
+----
+
+.. Check the Operator status.
++
+[source,yaml]
+----
+oc get csv -n openshift-operators
+----
+
+. Run `oc apply -f` to create a Secret for your object storage bucket.
++
+[TIP]
+====
+[source,terminal]
+----
+$ oc apply -f .yaml
+----
+
+----
+$ oc apply -f - << EOF
+
+EOF
+----
+====
++
+include::snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc[]
+
+. Use `oc create namespace` or `oc apply` to create a namespace for the *TempoStack* instance that you will create in the next step.
++
+[TIP]
+====
+[subs="+attributes"]
+----
+oc create namespace
+----
+
+[source,yaml]
+----
+$ oc apply -f - << EOF
+apiVersion: project.openshift.io/v1
+kind: Project
+metadata:
+ labels:
+ kubernetes.io/metadata.name:
+ openshift.io/cluster-monitoring: "true"
+ name:
+EOF
+----
+====
+
+. Create a *TempoStack* instance in the namespace that you created for the *TempoStack* instance in the previous step.
++
+NOTE: You can create multiple *TempoStack* instances in separate namespaces on the same cluster.
++
+.. Customize the `TempoStack` custom resource (CR):
++
+[source,yaml]
+----
+apiVersion: tempo.grafana.com/v1alpha1
+kind: TempoStack
+metadata:
+ name: sample
+ namespace:
+spec:
+ storageSize: 1Gi
+ storage:
+ secret:
+ name: <1>
+ type: <2>
+ template:
+ queryFrontend:
+ jaegerQuery:
+ enabled: true
+ ingress:
+ route:
+ termination: edge
+ type: route
+----
+<1> The value of `name` in the `metadata` of the Secret.
+<2> The accepted values are `azure` for Azure Blob Storage, `gcs` for Google Cloud Storage, and `s3` for Amazon S3 or MinIO or Red Hat OpenShift Data Foundation.
++
+.TempoStack CR for AWS S3 and MinIO storage
+====
+[source,yaml]
+----
+apiVersion: tempo.grafana.com/v1alpha1
+kind: TempoStack
+metadata:
+ name: simplest
+ namespace: tempostacknamespace
+spec:
+ storageSize: 1Gi
+ storage:
+ secret:
+ name: minio-test
+ type: s3
+ resources:
+ total:
+ limits:
+ memory: 2Gi
+ cpu: 2000m
+ template:
+ queryFrontend:
+ jaegerQuery:
+ enabled: true
+ ingress:
+ route:
+ termination: edge
+ type: route
+----
+The stack deployed in this example is configured to receive Jaeger Thrift over HTTP and OpenTelemetry Protocol (OTLP), which permits visualizing the data with the Jaeger UI.
+====
+
+.. Apply the customized CR.
++
+[source,yaml]
+----
+$ oc apply -f - << EOF
+
+EOF
+----
+
+.WIP
+
+1. command(s) to confirm successful installation of the Operator
+2. command(s) to confirm successful deployment of a TempoStack instance
+3. if applicable, a command to open any UI console
+4. any other commands?
+
+.WIP:
+
+.. Verify that pods are created on the namespace.
+
+.. Wait until the stack stabilizes.
diff --git a/modules/distr-tracing-tempo-install-instance.adoc b/modules/distr-tracing-tempo-install-instance.adoc
deleted file mode 100644
index f54b96513396..000000000000
--- a/modules/distr-tracing-tempo-install-instance.adoc
+++ /dev/null
@@ -1,93 +0,0 @@
-// Module included in the following assemblies:
-//
-//* distr_tracing_tempo/distr-tracing-tempo-installing.adoc
-
-:_content-type: PROCEDURE
-[id="distr-tracing-tempo-install-instance_{context}"]
-= Installing a {TempoName} instance
-
-https://issues.redhat.com/browse/TRACING-3296
-
-Deploying the TempoStack
-
-You can use the OpenShift Container Platform web console to deploy the TempoStack.
-
-.Prerequisites
-
-* Supported Object Store (AWS S3, Google Cloud Storage, Azure, Minio, OpenShift Data Foundation)
-
-.Procedure
-
-. Install the Tempo Operator:
-
-.. In the OpenShift Container Platform web console, click *Operators* → *OperatorHub*.
-
-.. Choose *Tempo Operator* from the list of available Operators, and click *Install*.
-
-.. Under *Installation Mode*, select *All namespaces* on the cluster.
-
-.. Under *Installed Namespace*, select *openshift-operators-redhat*.
-+
-IMPORTANT: You must specify the `openshift-operators-redhat` namespace. The `openshift-operators` namespace might contain Community Operators, which are untrusted and might publish a metric with the same name as an OpenShift Container Platform metric, which would cause conflicts.
-
-. Select an Approval Strategy:
-** The Automatic strategy allows Operator Lifecycle Manager (OLM) to automatically update the Operator when a new version is available.
-** The Manual strategy requires a user with appropriate credentials to approve the Operator update.
-
-. Click *Install*.
-
-. Verify that you installed the Tempo Operator:
-.. Go to *Operators* → *Installed Operators* page and look for *Tempo Operator*.
-.. Ensure that *Tempo Operator* is listed with *Status* as *Succeeded* in all the projects.
-
-. Create a Secret YAML file to specify the secret for your object storage bucket. For instance, if you are using AWS S3, create a file that uses the `access_key_id` and `access_key_secret` fields to specify your AWS credentials and bucketnames, endpoint and region to define the object storage location. For example:
-
-[source,yaml]
-----
-apiVersion: v1
-kind: Secret
-metadata:
- name: minio-test
-stringData:
- endpoint: http://minio.minio.svc:9000
- bucket: tempo
- access_key_id: tempo
- access_key_secret: supersecret
-type: Opaque
-----
-
-. Create the TempOStack custom resource. For example:
-
-[source,yaml]
-----
-apiVersion: tempo.grafana.com/v1alpha1
-kind: TempoStack
-metadata:
- name: simplest
-spec:
- storage:
- secret:
- name: minio-test
- type: s3
- storageSize: 1Gi
- resources:
- total:
- limits:
- memory: 2Gi
- cpu: 2000m
- template:
- queryFrontend:
- jaegerQuery:
- enabled: true
-----
-
-. Apply the configuration:
-
-[source,terminal]
-----
-$ oc apply -f tempo.yaml
-----
-
-After create the TempoStack CR you should see a some pods on the namespace, wait until the stack to stabilized.
-
-The stack deployed above is configured to receive Jaeger Thrift over HTTP and OTLP, also because the jaeger query is enable you can use the jaeger UI to inspect the data.
diff --git a/modules/distr-tracing-tempo-install-operator.adoc b/modules/distr-tracing-tempo-install-operator.adoc
deleted file mode 100644
index 9ac41de40674..000000000000
--- a/modules/distr-tracing-tempo-install-operator.adoc
+++ /dev/null
@@ -1,52 +0,0 @@
-// Module included in the following assemblies:
-//
-//* distr_tracing_tempo/distr-tracing-tempo-installing.adoc
-
-:_content-type: PROCEDURE
-[id="distr-tracing-tempo-install-operator_{context}"]
-= Installing the {TempoName} Operator
-
-To install {TempoName}, you use the link:https://operatorhub.io/[OperatorHub] to install the {TempoName} Operator.
-
-By default, the Operator is installed in the `openshift-operators` project.
-
-.Prerequisites
-* You have access to the {product-title} web console.
-* You have access to the cluster as a user with the `cluster-admin` role. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
-* If you require persistent storage, you must also install the OpenShift Elasticsearch Operator before installing the {TempoName} Operator.
-
-[WARNING]
-====
-Do not install Community versions of the Operators. Community Operators are not supported.
-====
-
-.Procedure
-
-. Log in to the {product-title} web console as a user with the `cluster-admin` role. If you use {product-dedicated}, you must have an account with the `dedicated-admin` role.
-
-. Navigate to *Operators* -> *OperatorHub*.
-
-. Type *distributed tracing platform* into the filter to locate the {TempoName} Operator.
-
-. Click the *{TempoName} Operator* provided by Red Hat to display information about the Operator.
-
-. Click *Install*.
-
-. On the *Install Operator* page, select the *stable* Update Channel. This automatically updates your Operator as new versions are released.
-//If you select a maintenance channel, for example, *Stable*, you will receive bug fixes and security patches for the length of the support cycle for that version.
-
-. Accept the default *All namespaces on the cluster (default)*. This installs the Operator in the default `openshift-operators` project and makes the Operator available to all projects in the cluster.
-
-* Accept the default *Automatic* approval strategy. By accepting the default, when a new version of this Operator is available, Operator Lifecycle Manager (OLM) automatically upgrades the running instance of your Operator without human intervention. If you select *Manual* updates, when a newer version of an Operator is available, OLM creates an update request. As a cluster administrator, you must then manually approve that update request to have the Operator updated to the new version.
-+
-[NOTE]
-====
-The *Manual* approval strategy requires a user with appropriate credentials to approve the Operator install and subscription process.
-====
-+
-
-. Click *Install*.
-
-. Navigate to *Operators* -> *Installed Operators*.
-
-. On the *Installed Operators* page, select the `openshift-operators` project. Wait until you see that the {TempoName} Operator shows a status of "Succeeded" before continuing.
diff --git a/modules/distr-tracing-tempo-install-overview.adoc b/modules/distr-tracing-tempo-install-overview.adoc
deleted file mode 100644
index d6f7337dc58a..000000000000
--- a/modules/distr-tracing-tempo-install-overview.adoc
+++ /dev/null
@@ -1,19 +0,0 @@
-// Module included in the following assemblies:
-//
-// * distr_tracing_tempo/distr-tracing-tempo-installing.adoc
-
-:_content-type: CONCEPT
-[id="distr-tracing-tempo-install-overview_{context}"]
-= {DTProductName} installation overview
-
-The steps for installing {DTProductName} are as follows:
-
-
-* Supported Log Store (AWS S3, Google Cloud Storage, Azure, Minio, OpenShift Data Foundation)
-Same as Loki.
-
-* Install the {TempoName} Operator via the OperatorHub.
-
-* Modify the custom resource YAML file to use your custom parameters.
-
-* Deploy one or more instances of {TempoName} to your {product-title} environment.
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
new file mode 100644
index 000000000000..0be41198710a
--- /dev/null
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -0,0 +1,140 @@
+// Module included in the following assemblies:
+//
+//* distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+
+:_content-type: PROCEDURE
+[id="distr-tracing-tempo-install-web-console_{context}"]
+= Installing {TempoName} by using the OpenShift web console
+
+Installing {TempoName} in the OpenShift web console involves installing the Tempo Operator, creating a Secret and namespace, and using the Operator to deploy a TempoStack instance in the namespace for use with the Secret.
+//|Tempo Operator| might need changing to {TempoShortName}.
+
+.Prerequisites
+
+* You are logged in to the OpenShift xref:https://docs.openshift.com/container-platform/latest/web_console/web-console.html[web console] as a xref:https://docs.openshift.com/container-platform/latest/admin_solutions/user_role_mgmt.html#creating-a-cluster-administrator[cluster administrator with the `cluster-admin` role].
+// https://docs.openshift.com/container-platform/latest/web_console/web-console.html
+// https://docs.openshift.com/container-platform/latest/admin_solutions/user_role_mgmt.html#creating-a-cluster-administrator
+
+* You are using a supported provider of object storage: link:https://www.redhat.com/en/technologies/cloud-computing/openshift-data-foundation[Red Hat OpenShift Data Foundation], link:https://min.io/[MinIO], link:https://aws.amazon.com/s3/[Amazon S3], link:https://azure.microsoft.com/en-us/products/storage/blobs/[Azure Blob Storage], link:https://cloud.google.com/storage/[Google Cloud Storage].
+
+.Procedure
+
+. Install the Tempo Operator:
+
+.. In the *Administrator* view of the OpenShift web console, go to *Operators* -> *OperatorHub* and search for `Tempo Operator`.
+//|Tempo Operator| might need changing to {TempoShortName}.
+
+.. Select *Tempo Operator* that is *OpenShift Operator for Tempo* -> *Install* -> *Install* -> *View Operator*.
+//|Tempo Operator| might need changing to {TempoShortName}.
++
+[IMPORTANT]
+====
+This installs the Operator with the default presets:
+
+* *Update channel* -> *stable*
+* *Installation mode* -> *All namespaces on the cluster*
+* *Installed Namespace* -> *openshift-operators*
+* *Update approval* -> *Automatic*
+====
+
+.. In the *Details* tab of the installed Operator page, under *ClusterServiceVersion details*, verify that the installation *Status* is *Succeeded*.
+
+. Create a Secret for your object storage bucket.
++
+You can do this in the *Administrator* view of the OpenShift web console: go to *Workloads* -> *Secrets* -> *Create* -> *From YAML*.
++
+include::snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc[]
+
+. Create a namespace for the *TempoStack* instance that you will create in the next step.
++
+You can do this in the *Administrator* view of the OpenShift web console: go to *Home* -> *Projects* -> *Create Project*.
+
+
+. Create a *TempoStack* instance.
++
+NOTE: You can create multiple *TempoStack* instances in separate namespaces on the same cluster.
++
+You can create a *TempoStack* instance as follows:
+
+.. Go to *Operators* -> *Installed Operators*.
++
+[TIP]
+====
+You can use the *Project:* dropdown list to select the namespace that you created for the *TempoStack* instance in the previous step.
+====
+
+.. Select *TempoStack* -> *Create TempoStack* -> *YAML view*.
+
+.. In the *YAML view*, customize the `TempoStack` custom resource (CR):
++
+[source,yaml]
+----
+apiVersion: tempo.grafana.com/v1alpha1
+kind: TempoStack
+metadata:
+ name: sample
+ namespace:
+spec:
+ storageSize: 1Gi
+ storage:
+ secret:
+ name: <1>
+ type: <2>
+ template:
+ queryFrontend:
+ jaegerQuery:
+ enabled: true
+ ingress:
+ route:
+ termination: edge
+ type: route
+----
+<1> The value of `name` in the `metadata` of the Secret.
+<2> The accepted values are `azure` for Azure Blob Storage, `gcs` for Google Cloud Storage, and `s3` for Amazon S3 or MinIO or Red Hat OpenShift Data Foundation.
++
+.TempoStack CR for AWS S3 and MinIO storage
+====
+[source,yaml]
+----
+apiVersion: tempo.grafana.com/v1alpha1
+kind: TempoStack
+metadata:
+ name: simplest
+ namespace: tempostacknamespace
+spec:
+ storageSize: 1Gi
+ storage:
+ secret:
+ name: minio-test
+ type: s3
+ resources:
+ total:
+ limits:
+ memory: 2Gi
+ cpu: 2000m
+ template:
+ queryFrontend:
+ jaegerQuery:
+ enabled: true
+ ingress:
+ route:
+ termination: edge
+ type: route
+----
+The stack deployed in this example is configured to receive Jaeger Thrift over HTTP and OpenTelemetry Protocol (OTLP), which permits visualizing the data with the Jaeger UI.
+====
+
+.. Select *Create*.
+
+.WIP
+
+.. Verify that pods are created on the namespace.
+
+.. Wait until the stack stabilizes.
+
+
+.Additional resources
+
+* link:https://operatorhub.io/[OperatorHub.io]
+* link:https://docs.openshift.com/container-platform/latest/operators/admin/olm-adding-operators-to-cluster.html#olm-installing-from-operatorhub-using-web-console_olm-adding-operators-to-a-cluster[Installing from OperatorHub using the web console]
+* link:https://docs.openshift.com/container-platform/latest/operators/user/olm-creating-apps-from-installed-operators.html[Creating applications from installed Operators]
diff --git a/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc b/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
new file mode 100644
index 000000000000..e039a07d8606
--- /dev/null
+++ b/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
@@ -0,0 +1,89 @@
+// Text snippet included in the following modules:
+//
+// * distr-tracing-tempo-install-web-console.adoc
+// * distr-tracing-tempo-install-cli.adoc
+
+:_content-type: SNIPPET
+
+.Required Secret parameters
+[cols="25h,~"]
+|===
+| Storage provider | Secret parameters
+
+//source: https://github.com/grafana/tempo-operator/blob/main/docs/tempostack/object_storage.md
+
+|link:https://access.redhat.com/documentation/en-us/red_hat_openshift_data_foundation/[Red Hat OpenShift Data Foundation]
+|
+`name: tempostack-dev-odf # example`
+
+`bucket: # requires an ObjectBucketClaim`
+
+`+endpoint: https://s3.openshift-storage.svc+`
+
+`access_key_id: `
+
+`access_key_secret: `
+
+
+|MinIO
+|
+See link:https://operator.min.io/[MinIO Operator].
+
+`name: tempostack-dev-minio # example`
+
+`bucket: # link:https://min.io/docs/minio/linux/reference/minio-mc/mc-mb.html#command-mc.mb[MinIO documentation]`
+
+`endpoint: `
+
+`access_key_id: `
+
+`access_key_secret: `
+
+|Amazon S3
+|
+`name: tempostack-dev-s3 # example`
+
+`bucket: # link:https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html[Amazon S3 documentation]`
+
+`endpoint: `
+
+`access_key_id: `
+
+`access_key_secret: `
+
+|Microsoft Azure Blob Storage
+|
+`name: tempostack-dev-azure # example`
+
+`container: # link:https://learn.microsoft.com/en-us/rest/api/storageservices/create-container?tabs=azure-ad[Microsoft Azure documentation]`
+
+`account_name: `
+
+`account_key: `
+
+|Google Cloud Storage on Google Cloud Platform (GCP)
+|
+`name: tempostack-dev-gcs # example`
+
+`bucketname: # requires a link:https://cloud.google.com/storage/docs/creating-buckets[bucket] created in a link:https://cloud.google.com/resource-manager/docs/creating-managing-projects[GCP project]`
+
+`key.json: # requires a link:https://cloud.google.com/docs/authentication/getting-started#creating_a_service_account[service account] in the bucket's GCP project for GCP authentication`
+
+|===
++
+.Secret for Amazon S3 and MinIO storage
+====
+[source,yaml]
+----
+apiVersion: v1
+kind: Secret
+metadata:
+ name: minio-test
+stringData:
+ endpoint: http://minio.minio.svc:9000
+ bucket: tempo
+ access_key_id: tempo
+ access_key_secret: supersecret
+type: Opaque
+----
+====
From 58fbfc32d6c9f85c38858001b0be696f3fb671b7 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Thu, 3 Aug 2023 23:40:57 +0200
Subject: [PATCH 081/108] Update modules/distr-tracing-tempo-install-cli.adoc
---
modules/distr-tracing-tempo-install-cli.adoc | 3 +++
1 file changed, 3 insertions(+)
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index 29101254a564..4290ad17f5d0 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -6,6 +6,9 @@
[id="distr-tracing-tempo-install-cli_{context}"]
= Installing {TempoName} by using the CLI
+Installing {TempoName} by using the CLI involves installing the Tempo Operator, creating a Secret and namespace, and using the Operator to deploy a TempoStack instance in the namespace for use with the Secret.
+//|Tempo Operator| might need changing to {TempoShortName}.
+
.Prerequisites
* An active OpenShift CLI (`oc`) session by a xref:https://docs.openshift.com/container-platform/latest/admin_solutions/user_role_mgmt.html#creating-a-cluster-administrator[cluster administrator with the `cluster-admin` role]. See link:https://docs.openshift.com/container-platform/{ocp4-ver}/cli_reference/openshift_cli/getting-started-cli.html[Getting started with the OpenShift CLI].
From 97f10ecc3afb73c1e179e24e2c9354a0f0fc1ee6 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 10:37:01 +0200
Subject: [PATCH 082/108] fix alignment of included snippet
---
modules/distr-tracing-tempo-install-cli.adoc | 2 +-
modules/distr-tracing-tempo-install-web-console.adoc | 2 +-
...ing-tempo-required-secret-parameters-and-secret-example.adoc | 1 +
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index 4290ad17f5d0..68b026ea95bd 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -60,7 +60,7 @@ $ oc apply -f - << EOF
EOF
----
====
-+
+
include::snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc[]
. Use `oc create namespace` or `oc apply` to create a namespace for the *TempoStack* instance that you will create in the next step.
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
index 0be41198710a..b9f3b3eaa366 100644
--- a/modules/distr-tracing-tempo-install-web-console.adoc
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -42,7 +42,7 @@ This installs the Operator with the default presets:
. Create a Secret for your object storage bucket.
+
You can do this in the *Administrator* view of the OpenShift web console: go to *Workloads* -> *Secrets* -> *Create* -> *From YAML*.
-+
+
include::snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc[]
. Create a namespace for the *TempoStack* instance that you will create in the next step.
diff --git a/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc b/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
index e039a07d8606..91c4f8034845 100644
--- a/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
+++ b/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
@@ -5,6 +5,7 @@
:_content-type: SNIPPET
++
.Required Secret parameters
[cols="25h,~"]
|===
From 217b68b71a1870a45f74f373ce3a67a397aad473 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 11:05:32 +0200
Subject: [PATCH 083/108] fix block styles
---
modules/distr-tracing-tempo-install-cli.adoc | 29 ++++++++++----------
1 file changed, 14 insertions(+), 15 deletions(-)
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index 68b026ea95bd..4163bb300db0 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -40,9 +40,9 @@ EOF
.. Check the Operator status.
+
-[source,yaml]
+[source,terminal]
----
-oc get csv -n openshift-operators
+$ oc get csv -n openshift-operators
----
. Run `oc apply -f` to create a Secret for your object storage bucket.
@@ -54,6 +54,7 @@ oc get csv -n openshift-operators
$ oc apply -f .yaml
----
+[source,terminal]
----
$ oc apply -f - << EOF
@@ -67,12 +68,12 @@ include::snippets/distr-tracing-tempo-required-secret-parameters-and-secret-exam
+
[TIP]
====
-[subs="+attributes"]
+[source,terminal]
----
-oc create namespace
+$ oc create namespace
----
-[source,yaml]
+[source,terminal]
----
$ oc apply -f - << EOF
apiVersion: project.openshift.io/v1
@@ -151,22 +152,20 @@ The stack deployed in this example is configured to receive Jaeger Thrift over H
.. Apply the customized CR.
+
-[source,yaml]
+[source,terminal]
----
$ oc apply -f - << EOF
EOF
----
-.WIP
-
-1. command(s) to confirm successful installation of the Operator
-2. command(s) to confirm successful deployment of a TempoStack instance
-3. if applicable, a command to open any UI console
-4. any other commands?
-
.WIP:
-.. Verify that pods are created on the namespace.
+. command(s) to confirm successful deployment of a TempoStack instance
++
+For example:
+.. A command that prints output to verify that pods are created on the namespace.
+.. A command that enables the CLI user to watch for the stack to stabilize.
-.. Wait until the stack stabilizes.
+. if applicable, a command to open any UI console
+. any other commands?
From 3c933f8e716bdd1641aba721c22481d806332b6f Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 11:47:20 +0200
Subject: [PATCH 084/108] fixes to the Tempo installation page
---
_attributes/common-attributes.adoc | 1 +
.../distr-tracing-tempo-installing.adoc | 2 +-
.../distr-tracing-tempo-install-about.adoc | 15 +++++++++++
modules/distr-tracing-tempo-install-cli.adoc | 13 +++++-----
...str-tracing-tempo-install-web-console.adoc | 26 +++++++++----------
5 files changed, 36 insertions(+), 21 deletions(-)
create mode 100644 modules/distr-tracing-tempo-install-about.adoc
diff --git a/_attributes/common-attributes.adoc b/_attributes/common-attributes.adoc
index 50a5c940dd04..8c2a6e0f109c 100644
--- a/_attributes/common-attributes.adoc
+++ b/_attributes/common-attributes.adoc
@@ -125,6 +125,7 @@ endif::[]
:OTELVersion: 0.81.0
:TempoName: Red Hat OpenShift distributed tracing platform (Tempo)
:TempoShortName: distributed tracing platform (Tempo)
+:TempoOperator: Tempo Operator
:TempoVersion: 2.1.1
//logging
:logging-title: logging subsystem for Red Hat OpenShift
diff --git a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
index 9cccc2ed47f2..ee49d6af2999 100644
--- a/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+++ b/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc
@@ -6,7 +6,7 @@ include::_attributes/common-attributes.adoc[]
toc::[]
-TBD
+include::modules/distr-tracing-tempo-install-about.adoc[leveloffset=+1]
include::modules/distr-tracing-tempo-install-web-console.adoc[leveloffset=+1]
diff --git a/modules/distr-tracing-tempo-install-about.adoc b/modules/distr-tracing-tempo-install-about.adoc
new file mode 100644
index 000000000000..9109b5b4f2bf
--- /dev/null
+++ b/modules/distr-tracing-tempo-install-about.adoc
@@ -0,0 +1,15 @@
+// Module included in the following assemblies:
+//
+// * distr_tracing_tempo/distr-tracing-tempo-installing.adoc
+
+:_content-type: CONCEPT
+[id="distr-tracing-tempo-install-about_{context}"]
+= About installing {TempoShortName}
+
+Installing {TempoShortName} involves the following steps:
+
+* Setting up supported object storage.
+* Installing the {TempoOperator}.
+* Creating a Secret for the object storage credentials.
+* Creating a namespace for a TempoStack instance.
+* Creating a TempoStack custom resource to deploy at least one TempoStack instance.
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index 4163bb300db0..c75b944a60f2 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -4,10 +4,9 @@
:_content-type: PROCEDURE
[id="distr-tracing-tempo-install-cli_{context}"]
-= Installing {TempoName} by using the CLI
+= Installing {TempoShortName} by using the CLI
-Installing {TempoName} by using the CLI involves installing the Tempo Operator, creating a Secret and namespace, and using the Operator to deploy a TempoStack instance in the namespace for use with the Secret.
-//|Tempo Operator| might need changing to {TempoShortName}.
+You can install {TempoShortName} on the command line.
.Prerequisites
@@ -17,7 +16,7 @@ TIP: Ensure that your OpenShift CLI (`oc`) version is up to date and matches you
* You are using a supported provider of object storage: link:https://www.redhat.com/en/technologies/cloud-computing/openshift-data-foundation[Red Hat OpenShift Data Foundation], link:https://min.io/[MinIO], link:https://aws.amazon.com/s3/[Amazon S3], link:https://azure.microsoft.com/en-us/products/storage/blobs/[Azure Blob Storage], link:https://cloud.google.com/storage/[Google Cloud Storage].
-. Install the Tempo Operator:
+. Install the {TempoOperator}:
.. Create a subscription.
+
@@ -161,11 +160,11 @@ EOF
.WIP:
-. command(s) to confirm successful deployment of a TempoStack instance
+. Command(s) to verify successful deployment of the TempoStack instance
+
For example:
.. A command that prints output to verify that pods are created on the namespace.
.. A command that enables the CLI user to watch for the stack to stabilize.
-. if applicable, a command to open any UI console
-. any other commands?
+. If applicable, a command to open any UI console
+. Any other commands?
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
index b9f3b3eaa366..561816d5aa48 100644
--- a/modules/distr-tracing-tempo-install-web-console.adoc
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -4,10 +4,9 @@
:_content-type: PROCEDURE
[id="distr-tracing-tempo-install-web-console_{context}"]
-= Installing {TempoName} by using the OpenShift web console
+= Installing {TempoShortName} by using the OpenShift web console
-Installing {TempoName} in the OpenShift web console involves installing the Tempo Operator, creating a Secret and namespace, and using the Operator to deploy a TempoStack instance in the namespace for use with the Secret.
-//|Tempo Operator| might need changing to {TempoShortName}.
+You can install {TempoShortName} in the OpenShift web console.
.Prerequisites
@@ -19,13 +18,11 @@ Installing {TempoName} in the OpenShift web console involves installing the Temp
.Procedure
-. Install the Tempo Operator:
+. Install the {TempoOperator}:
-.. In the *Administrator* view of the OpenShift web console, go to *Operators* -> *OperatorHub* and search for `Tempo Operator`.
-//|Tempo Operator| might need changing to {TempoShortName}.
+.. In the *Administrator* view of the OpenShift web console, go to *Operators* -> *OperatorHub* and search for `{TempoOperator}`.
-.. Select *Tempo Operator* that is *OpenShift Operator for Tempo* -> *Install* -> *Install* -> *View Operator*.
-//|Tempo Operator| might need changing to {TempoShortName}.
+.. Select *{TempoOperator}* that is *OpenShift Operator for Tempo* -> *Install* -> *Install* -> *View Operator*.
+
[IMPORTANT]
====
@@ -126,12 +123,15 @@ The stack deployed in this example is configured to receive Jaeger Thrift over H
.. Select *Create*.
-.WIP
-
-.. Verify that pods are created on the namespace.
-
-.. Wait until the stack stabilizes.
+.WIP:
+. Step to verify successful deployment of the TempoStack instance
++
+For example:
+.. Verify that pods are created on the namespace?
+.. Verify/watch/check somewhere (where?) in the OpenShift web console UI that the stack has stabilized.
+. Is there any Tempo UI console? If so, how does the user open it?
+. Any other verification steps?
.Additional resources
From ddc7c20f19af2603c59ad4808aca476fbad95563 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 14:11:39 +0200
Subject: [PATCH 085/108] fix snippet
---
...ng-tempo-required-secret-parameters-and-secret-example.adoc | 3 +++
1 file changed, 3 insertions(+)
diff --git a/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc b/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
index 91c4f8034845..c871fa00408d 100644
--- a/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
+++ b/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
@@ -6,6 +6,7 @@
:_content-type: SNIPPET
+
+
.Required Secret parameters
[cols="25h,~"]
|===
@@ -71,7 +72,9 @@ See link:https://operator.min.io/[MinIO Operator].
`key.json: # requires a link:https://cloud.google.com/docs/authentication/getting-started#creating_a_service_account[service account] in the bucket's GCP project for GCP authentication`
|===
+
+
+
.Secret for Amazon S3 and MinIO storage
====
[source,yaml]
From 39b35a02398f22cfd334a526c03cf4627853c1cd Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 14:49:52 +0200
Subject: [PATCH 086/108] fix includes (some toolchain issue with disabled '+'
---
modules/distr-tracing-tempo-install-cli.adoc | 6 +++--
...str-tracing-tempo-install-web-console.adoc | 6 +++--
...ing-tempo-required-secret-parameters.adoc} | 21 -----------------
.../distr-tracing-tempo-secret-example.adoc | 23 +++++++++++++++++++
4 files changed, 31 insertions(+), 25 deletions(-)
rename snippets/{distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc => distr-tracing-tempo-required-secret-parameters.adoc} (89%)
create mode 100644 snippets/distr-tracing-tempo-secret-example.adoc
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index c75b944a60f2..5007d14bb178 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -60,8 +60,10 @@ $ oc apply -f - << EOF
EOF
----
====
-
-include::snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc[]
++
+include::snippets/distr-tracing-tempo-required-secret-parameters.adoc[]
++
+include::snippets/distr-tracing-tempo-secret-example.adoc[]
. Use `oc create namespace` or `oc apply` to create a namespace for the *TempoStack* instance that you will create in the next step.
+
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
index 561816d5aa48..f81c100c6608 100644
--- a/modules/distr-tracing-tempo-install-web-console.adoc
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -39,8 +39,10 @@ This installs the Operator with the default presets:
. Create a Secret for your object storage bucket.
+
You can do this in the *Administrator* view of the OpenShift web console: go to *Workloads* -> *Secrets* -> *Create* -> *From YAML*.
-
-include::snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc[]
++
+include::snippets/distr-tracing-tempo-required-secret-parameters.adoc[]
++
+include::snippets/distr-tracing-tempo-secret-example.adoc[]
. Create a namespace for the *TempoStack* instance that you will create in the next step.
+
diff --git a/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc b/snippets/distr-tracing-tempo-required-secret-parameters.adoc
similarity index 89%
rename from snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
rename to snippets/distr-tracing-tempo-required-secret-parameters.adoc
index c871fa00408d..d84df7c824fb 100644
--- a/snippets/distr-tracing-tempo-required-secret-parameters-and-secret-example.adoc
+++ b/snippets/distr-tracing-tempo-required-secret-parameters.adoc
@@ -5,8 +5,6 @@
:_content-type: SNIPPET
-+
-
.Required Secret parameters
[cols="25h,~"]
|===
@@ -72,22 +70,3 @@ See link:https://operator.min.io/[MinIO Operator].
`key.json: # requires a link:https://cloud.google.com/docs/authentication/getting-started#creating_a_service_account[service account] in the bucket's GCP project for GCP authentication`
|===
-
-+
-
-.Secret for Amazon S3 and MinIO storage
-====
-[source,yaml]
-----
-apiVersion: v1
-kind: Secret
-metadata:
- name: minio-test
-stringData:
- endpoint: http://minio.minio.svc:9000
- bucket: tempo
- access_key_id: tempo
- access_key_secret: supersecret
-type: Opaque
-----
-====
diff --git a/snippets/distr-tracing-tempo-secret-example.adoc b/snippets/distr-tracing-tempo-secret-example.adoc
new file mode 100644
index 000000000000..0bf7c8829d6e
--- /dev/null
+++ b/snippets/distr-tracing-tempo-secret-example.adoc
@@ -0,0 +1,23 @@
+// Text snippet included in the following modules:
+//
+// * distr-tracing-tempo-install-web-console.adoc
+// * distr-tracing-tempo-install-cli.adoc
+
+:_content-type: SNIPPET
+
+.Secret for Amazon S3 and MinIO storage
+====
+[source,yaml]
+----
+apiVersion: v1
+kind: Secret
+metadata:
+ name: minio-test
+stringData:
+ endpoint: http://minio.minio.svc:9000
+ bucket: tempo
+ access_key_id: tempo
+ access_key_secret: supersecret
+type: Opaque
+----
+====
From b8fe605e059fac53d51fa9ab07ae7a51dc02c7a4 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 15:25:16 +0200
Subject: [PATCH 087/108] attempt to fix the include issue with '+'
---
modules/distr-tracing-tempo-install-cli.adoc | 4 ++++
modules/distr-tracing-tempo-install-web-console.adoc | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index 5007d14bb178..ed1266721acf 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -61,9 +61,13 @@ EOF
----
====
+
+--
include::snippets/distr-tracing-tempo-required-secret-parameters.adoc[]
+--
+
+--
include::snippets/distr-tracing-tempo-secret-example.adoc[]
+--
. Use `oc create namespace` or `oc apply` to create a namespace for the *TempoStack* instance that you will create in the next step.
+
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
index f81c100c6608..c704d3b65aa3 100644
--- a/modules/distr-tracing-tempo-install-web-console.adoc
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -40,9 +40,13 @@ This installs the Operator with the default presets:
+
You can do this in the *Administrator* view of the OpenShift web console: go to *Workloads* -> *Secrets* -> *Create* -> *From YAML*.
+
+--
include::snippets/distr-tracing-tempo-required-secret-parameters.adoc[]
+--
+
+--
include::snippets/distr-tracing-tempo-secret-example.adoc[]
+--
. Create a namespace for the *TempoStack* instance that you will create in the next step.
+
From af310bf0d4ee30b1f6630898749acd6eaa2cffec Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 16:15:49 +0200
Subject: [PATCH 088/108] add links to PR comments for the preview
---
modules/distr-tracing-tempo-install-cli.adoc | 12 ++++++------
modules/distr-tracing-tempo-install-web-console.adoc | 12 ++++++------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index ed1266721acf..2014071ffed6 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -164,13 +164,13 @@ $ oc apply -f - << EOF
EOF
----
-.WIP:
+link:https://github.com/openshift/openshift-docs/pull/62410/files#r1284356025[Waiting for SME input for the following:]
-. Command(s) to verify successful deployment of the TempoStack instance
+* Command(s) to verify successful deployment of the TempoStack instance
+
For example:
-.. A command that prints output to verify that pods are created on the namespace.
-.. A command that enables the CLI user to watch for the stack to stabilize.
+** A command that prints output to verify that pods are created on the namespace.
+** A command that enables the CLI user to watch for the stack to stabilize.
-. If applicable, a command to open any UI console
-. Any other commands?
+* If applicable, a command to open any UI console
+* Any other commands?
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
index c704d3b65aa3..039402bffb9e 100644
--- a/modules/distr-tracing-tempo-install-web-console.adoc
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -129,15 +129,15 @@ The stack deployed in this example is configured to receive Jaeger Thrift over H
.. Select *Create*.
-.WIP:
+link:https://github.com/openshift/openshift-docs/pull/62410/files#r1284356755[Waiting for SME input for the following:]
-. Step to verify successful deployment of the TempoStack instance
+* Step to verify successful deployment of the TempoStack instance
+
For example:
-.. Verify that pods are created on the namespace?
-.. Verify/watch/check somewhere (where?) in the OpenShift web console UI that the stack has stabilized.
-. Is there any Tempo UI console? If so, how does the user open it?
-. Any other verification steps?
+** Verify that pods are created on the namespace?
+** Verify/watch/check somewhere (where?) in the OpenShift web console UI that the stack has stabilized.
+* Is there any Tempo UI console? If so, how does the user open it?
+* Any other verification steps?
.Additional resources
From 27b2c4f990a7d3209885040b34dbb3561a77d366 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 17:32:57 +0200
Subject: [PATCH 089/108] update links to PR comments
---
modules/distr-tracing-tempo-install-cli.adoc | 2 +-
modules/distr-tracing-tempo-install-web-console.adoc | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index 2014071ffed6..9b3356da9daa 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -164,7 +164,7 @@ $ oc apply -f - << EOF
EOF
----
-link:https://github.com/openshift/openshift-docs/pull/62410/files#r1284356025[Waiting for SME input for the following:]
+link:https://github.com/openshift/openshift-docs/pull/62410/files#r1284564654[Waiting for SME input for the following:]
* Command(s) to verify successful deployment of the TempoStack instance
+
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
index 039402bffb9e..d5c999d37acb 100644
--- a/modules/distr-tracing-tempo-install-web-console.adoc
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -129,7 +129,7 @@ The stack deployed in this example is configured to receive Jaeger Thrift over H
.. Select *Create*.
-link:https://github.com/openshift/openshift-docs/pull/62410/files#r1284356755[Waiting for SME input for the following:]
+link:https://github.com/openshift/openshift-docs/pull/62410/files#r1284564005[Waiting for SME input for the following:]
* Step to verify successful deployment of the TempoStack instance
+
From 29e8799668a9fc34674cd7027f9e99a662a955ea Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Fri, 4 Aug 2023 18:00:10 +0200
Subject: [PATCH 090/108] add missed def. articles
---
modules/distr-tracing-tempo-install-about.adoc | 4 ++--
modules/distr-tracing-tempo-install-cli.adoc | 4 ++--
modules/distr-tracing-tempo-install-web-console.adoc | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/modules/distr-tracing-tempo-install-about.adoc b/modules/distr-tracing-tempo-install-about.adoc
index 9109b5b4f2bf..99af58872457 100644
--- a/modules/distr-tracing-tempo-install-about.adoc
+++ b/modules/distr-tracing-tempo-install-about.adoc
@@ -4,9 +4,9 @@
:_content-type: CONCEPT
[id="distr-tracing-tempo-install-about_{context}"]
-= About installing {TempoShortName}
+= About installing the {TempoShortName}
-Installing {TempoShortName} involves the following steps:
+Installing the {TempoShortName} involves the following steps:
* Setting up supported object storage.
* Installing the {TempoOperator}.
diff --git a/modules/distr-tracing-tempo-install-cli.adoc b/modules/distr-tracing-tempo-install-cli.adoc
index 9b3356da9daa..1b8ffce0341a 100644
--- a/modules/distr-tracing-tempo-install-cli.adoc
+++ b/modules/distr-tracing-tempo-install-cli.adoc
@@ -4,9 +4,9 @@
:_content-type: PROCEDURE
[id="distr-tracing-tempo-install-cli_{context}"]
-= Installing {TempoShortName} by using the CLI
+= Installing the {TempoShortName} by using the CLI
-You can install {TempoShortName} on the command line.
+You can install the {TempoShortName} on the command line.
.Prerequisites
diff --git a/modules/distr-tracing-tempo-install-web-console.adoc b/modules/distr-tracing-tempo-install-web-console.adoc
index d5c999d37acb..0b29b1327e5f 100644
--- a/modules/distr-tracing-tempo-install-web-console.adoc
+++ b/modules/distr-tracing-tempo-install-web-console.adoc
@@ -4,9 +4,9 @@
:_content-type: PROCEDURE
[id="distr-tracing-tempo-install-web-console_{context}"]
-= Installing {TempoShortName} by using the OpenShift web console
+= Installing the {TempoShortName} by using the OpenShift web console
-You can install {TempoShortName} in the OpenShift web console.
+You can install the {TempoShortName} in the OpenShift web console.
.Prerequisites
From b933865c4cdf157f714633271a08e417bc824390 Mon Sep 17 00:00:00 2001
From: Max Leonov
Date: Mon, 7 Aug 2023 11:27:16 +0200
Subject: [PATCH 091/108] add blank lines for release notes contributions by
stakeholders
---
modules/distr-tracing-rn-fixed-issues.adoc | 20 +++++++++
modules/distr-tracing-rn-known-issues.adoc | 20 +++++++++
modules/distr-tracing-rn-new-features.adoc | 42 +++++++++++++++++++
.../distr-tracing-rn-technology-preview.adoc | 22 ++++++++++
4 files changed, 104 insertions(+)
diff --git a/modules/distr-tracing-rn-fixed-issues.adoc b/modules/distr-tracing-rn-fixed-issues.adoc
index 6fffaa723b2f..6586b4d15029 100644
--- a/modules/distr-tracing-rn-fixed-issues.adoc
+++ b/modules/distr-tracing-rn-fixed-issues.adoc
@@ -13,6 +13,26 @@ Cause - Why did this happen?
Fix - What did we change to fix the problem?
Result - How has the behavior changed as a result? Try to avoid “It is fixed” or “The issue is resolved” or “The error no longer presents”.
////
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
* link:https://issues.redhat.com/browse/OSSM-1910[OSSM-1910]
Because of an issue introduced in version 2.6, TLS connections could not be established with {product-title} {SMProductShortName}.
diff --git a/modules/distr-tracing-rn-known-issues.adoc b/modules/distr-tracing-rn-known-issues.adoc
index 737bc1fbe259..98d0f464ba4d 100644
--- a/modules/distr-tracing-rn-known-issues.adoc
+++ b/modules/distr-tracing-rn-known-issues.adoc
@@ -16,6 +16,16 @@ Result - If the workaround does not completely address the problem.
These limitations exist in {DTProductName}:
+
+
+
+
+
+
+
+
+
+
* Apache Spark is not supported.
ifndef::openshift-rosa[]
@@ -24,6 +34,16 @@ endif::openshift-rosa[]
These are the known issues for {DTProductName}:
+
+
+
+
+
+
+
+
+
+
* link:https://issues.redhat.com/browse/OBSDA-220[OBSDA-220] In some cases, if you try to pull an image using {OTELShortName}, the image pull fails and a `Failed to pull image` error message appears.
There is no workaround for this issue.
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index cc2674c57079..34791cc82130 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -13,6 +13,48 @@ Result – If changed, describe the current user experience.
This release adds improvements related to the following components and concepts.
+== New features and enhancements {DTProductName} 2.9
+
+This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+=== Component versions supported in {DTProductName} version 2.9
+
+[options="header"]
+|===
+|Operator |Component |Version
+|{JaegerName}
+|Jaeger
+|1.47.0
+
+|{OTELName}
+|OpenTelemetry
+|0.81.0
+
+|{TempoName}
+|{TempoShortName}
+|2.1.1
+|===
+
== New features and enhancements {DTProductName} 2.8
This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
diff --git a/modules/distr-tracing-rn-technology-preview.adoc b/modules/distr-tracing-rn-technology-preview.adoc
index bb06420e5a5d..26d6a4ca858e 100644
--- a/modules/distr-tracing-rn-technology-preview.adoc
+++ b/modules/distr-tracing-rn-technology-preview.adoc
@@ -17,6 +17,28 @@ Technology Preview features are not supported with Red Hat production service le
For more information about the support scope of Red Hat Technology Preview features, see link:https://access.redhat.com/support/offerings/techpreview/[Technology Preview Features Support Scope].
====
+
+== {DTProductName} 2.9.0 Technology Preview
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
== {DTProductName} 2.8.0 Technology Preview
From 15df5d76dd503459f0d8e13f9b5fa6360d0c3f71 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 7 Aug 2023 18:21:23 +0200
Subject: [PATCH 092/108] Add release notes for 2.9
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 34791cc82130..76a2cf166acb 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -19,7 +19,7 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
-
+* TODO
From 4baa34ee2e97d426097cdba1a0fb280938962e30 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 8 Aug 2023 10:33:41 +0200
Subject: [PATCH 093/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 24 +++++-----------------
1 file changed, 5 insertions(+), 19 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 76a2cf166acb..ed874defdf12 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -17,25 +17,11 @@ This release adds improvements related to the following components and concepts.
This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
-
-
-* TODO
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+* Support OTLP metrics ingestion in {OTELName}.
+* Bring {TempoName} operator to the operator level 4. This feature enables upgrade and monitoring of `+TempoStack+` instances and operator.
+* Bring {OTELName} operator to the operator level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
+* Report traces and metrics from remote clusters using OTLP/HTTP(s) in {OTELName}.
+* Collect OpenShift specific resource attributes in {OTELName} via `+resourcedetection+` processor.
=== Component versions supported in {DTProductName} version 2.9
From 9c4394706a05d95577066e473c8ebe65733134b6 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 8 Aug 2023 10:34:46 +0200
Subject: [PATCH 094/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index ed874defdf12..ad9bbd962ba2 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -17,6 +17,8 @@ This release adds improvements related to the following components and concepts.
This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
+Notable enhancements:
+
* Support OTLP metrics ingestion in {OTELName}.
* Bring {TempoName} operator to the operator level 4. This feature enables upgrade and monitoring of `+TempoStack+` instances and operator.
* Bring {OTELName} operator to the operator level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
From ca0f372a463fa145fe2d21d81be11b3dbb0ff379 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 8 Aug 2023 10:51:13 +0200
Subject: [PATCH 095/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index ad9bbd962ba2..074fc013085f 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -19,9 +19,9 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
Notable enhancements:
-* Support OTLP metrics ingestion in {OTELName}.
-* Bring {TempoName} operator to the operator level 4. This feature enables upgrade and monitoring of `+TempoStack+` instances and operator.
-* Bring {OTELName} operator to the operator level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
+* Support OTLP metrics ingestion in {OTELName}. The metrics can be forwarded and stored in the `+user-workload-monitoring+` deployment.
+* Bring {TempoName} operator to the level 4. This feature enables upgrade and monitoring of `+TempoStack+` instances and operator.
+* Bring {OTELName} operator to the level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
* Report traces and metrics from remote clusters using OTLP/HTTP(s) in {OTELName}.
* Collect OpenShift specific resource attributes in {OTELName} via `+resourcedetection+` processor.
From 77860b401ec5a799d8774ff46eb1f4925f031078 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Tue, 8 Aug 2023 18:53:31 +0200
Subject: [PATCH 096/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 45 ++++++++++++++++++++--
1 file changed, 42 insertions(+), 3 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 074fc013085f..fb0080223da2 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -17,13 +17,52 @@ This release adds improvements related to the following components and concepts.
This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
-Notable enhancements:
+=== {JaegerName}
+
+==== Enhancements
+
+==== Bug fixes
+
+* link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]: Expose 16685 port on the Jaeger Query.
+* link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]: When deploying Service Mesh on SNO in a disconnected environment , the Jaeger Pod frequently goes into Pending state.
+
+==== Known issues
+
+=== {TempoName}
+
+==== Enhancements
+
+* Support the operator level 4. This feature enables upgrade, monitoring and alerting of `+TempoStack+` instances and operator.
+* Add Ingress and OpenShift Route configuration for the Gateway.
+* Support managed and unmanaged state in the `+TempoStack+` custom resource.
+* Expose additional protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the distributor service. When gateway is enabled only OTLP gRPC is enabled.
+
+==== Bug fixes
+
+* link:https://issues.redhat.com/browse/TRACING-3145[TRACING-3145]: Support disconnected environments.
+* link:https://issues.redhat.com/browse/TRACING-3091[TRACING-3091]: Enable mTLS communication between Tempo components.
+* link:https://issues.redhat.com/browse/TRACING-3204[TRACING-3204]: Remove resource limits for Tempo operator.
+
+==== Known issues
+
+* link:https://issues.redhat.com/browse/TRACING-3462[TRACING-3462]: Custom TLS CA option is not implemented.
+* link:https://issues.redhat.com/browse/TRACING-3139[TRACING-3139]: When you use the Jaeger user interface (UI) with Tempo Operator, the Jaeger UI lists only services that have sent traces within the last 15 minutes. For services that have not sent traces within the last 15 minutes, those traces are still stored even though they are not visible in the Jaeger UI.
+
+=== {OTELName}
+
+==== Enhancements
* Support OTLP metrics ingestion in {OTELName}. The metrics can be forwarded and stored in the `+user-workload-monitoring+` deployment.
-* Bring {TempoName} operator to the level 4. This feature enables upgrade and monitoring of `+TempoStack+` instances and operator.
-* Bring {OTELName} operator to the level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
+* Support the operator level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
* Report traces and metrics from remote clusters using OTLP/HTTP(s) in {OTELName}.
* Collect OpenShift specific resource attributes in {OTELName} via `+resourcedetection+` processor.
+* Support managed and unmanaged state in the `+OpenTelemetryCollector+` custom resouce.
+
+==== Bug fixes
+
+==== Known issues
+
+* link:https://issues.redhat.com/browse/TRACING-3431[TRACING-3431]: Operator level needs to be set to 4.
=== Component versions supported in {DTProductName} version 2.9
From 014e8821d0315d0958fad18ad150c53e5cb07b0c Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Wed, 9 Aug 2023 11:29:31 +0200
Subject: [PATCH 097/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 6 ------
1 file changed, 6 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index fb0080223da2..5f187b2a9450 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -19,15 +19,11 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
=== {JaegerName}
-==== Enhancements
-
==== Bug fixes
* link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]: Expose 16685 port on the Jaeger Query.
* link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]: When deploying Service Mesh on SNO in a disconnected environment , the Jaeger Pod frequently goes into Pending state.
-==== Known issues
-
=== {TempoName}
==== Enhancements
@@ -58,8 +54,6 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
* Collect OpenShift specific resource attributes in {OTELName} via `+resourcedetection+` processor.
* Support managed and unmanaged state in the `+OpenTelemetryCollector+` custom resouce.
-==== Bug fixes
-
==== Known issues
* link:https://issues.redhat.com/browse/TRACING-3431[TRACING-3431]: Operator level needs to be set to 4.
From 9c0013535ff76e68dc7d20caf7a0fea07c8d957d Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Wed, 9 Aug 2023 11:34:11 +0200
Subject: [PATCH 098/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 5f187b2a9450..139c332e3a97 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -48,10 +48,10 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
==== Enhancements
-* Support OTLP metrics ingestion in {OTELName}. The metrics can be forwarded and stored in the `+user-workload-monitoring+` deployment.
+* Support OTLP metrics ingestion. The metrics can be forwarded and stored in the `+user-workload-monitoring+`.
* Support the operator level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
* Report traces and metrics from remote clusters using OTLP/HTTP(s) in {OTELName}.
-* Collect OpenShift specific resource attributes in {OTELName} via `+resourcedetection+` processor.
+* Collect OpenShift specific resource attributes via `+resourcedetection+` processor.
* Support managed and unmanaged state in the `+OpenTelemetryCollector+` custom resouce.
==== Known issues
From 8c44a6b0a75b639a043b2638fdd47baafce1f045 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Wed, 9 Aug 2023 11:41:51 +0200
Subject: [PATCH 099/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 139c332e3a97..ace74fcd1ef6 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -23,6 +23,8 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
* link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]: Expose 16685 port on the Jaeger Query.
* link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]: When deploying Service Mesh on SNO in a disconnected environment , the Jaeger Pod frequently goes into Pending state.
+* link:https://issues.redhat.com/browse/TRACING-2968[29638]: Wrong port is exposed for jaeger-production-query resulting in connection refused.
+* link:https://issues.redhat.com/browse/TRACING-3173[3173]: Jaeger operator pod restarting with OOMKilled with the default memory value.
=== {TempoName}
@@ -48,12 +50,16 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
==== Enhancements
-* Support OTLP metrics ingestion. The metrics can be forwarded and stored in the `+user-workload-monitoring+`.
+* Support OTLP metrics ingestion. The metrics can be forwarded and stored in the `+user-workload-monitoring+` via the Prometheus exporter.
* Support the operator level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
* Report traces and metrics from remote clusters using OTLP/HTTP(s) in {OTELName}.
* Collect OpenShift specific resource attributes via `+resourcedetection+` processor.
* Support managed and unmanaged state in the `+OpenTelemetryCollector+` custom resouce.
+==== Bug fixes
+
+* link:https://issues.redhat.com/browse/TRACING-3190[TRACING-3190]: OpenTelemetry operator crashlooping after receiving opentelemetry-operator.v0.74.0-5.
+
==== Known issues
* link:https://issues.redhat.com/browse/TRACING-3431[TRACING-3431]: Operator level needs to be set to 4.
From 4160c3269d1fcd60a537da5f21356f806a5e8a00 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Wed, 9 Aug 2023 11:44:11 +0200
Subject: [PATCH 100/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 1 +
1 file changed, 1 insertion(+)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index ace74fcd1ef6..e0edaa7a5e65 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -34,6 +34,7 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
* Add Ingress and OpenShift Route configuration for the Gateway.
* Support managed and unmanaged state in the `+TempoStack+` custom resource.
* Expose additional protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the distributor service. When gateway is enabled only OTLP gRPC is enabled.
+* Support multitenancy without Gateway (authentication and authorization).
==== Bug fixes
From d09062fca0d61c8ca0235f8afc3292644255b57b Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Wed, 9 Aug 2023 11:44:44 +0200
Subject: [PATCH 101/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index e0edaa7a5e65..607f14940055 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -34,7 +34,7 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
* Add Ingress and OpenShift Route configuration for the Gateway.
* Support managed and unmanaged state in the `+TempoStack+` custom resource.
* Expose additional protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the distributor service. When gateway is enabled only OTLP gRPC is enabled.
-* Support multitenancy without Gateway (authentication and authorization).
+* Support multitenancy without the Gateway (authentication and authorization).
==== Bug fixes
From 7a57ed02551f23c31c88335aa844512283b1e1b5 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 10 Aug 2023 13:12:24 +0200
Subject: [PATCH 102/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 607f14940055..3fe281ae5266 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -23,8 +23,8 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
* link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]: Expose 16685 port on the Jaeger Query.
* link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]: When deploying Service Mesh on SNO in a disconnected environment , the Jaeger Pod frequently goes into Pending state.
-* link:https://issues.redhat.com/browse/TRACING-2968[29638]: Wrong port is exposed for jaeger-production-query resulting in connection refused.
-* link:https://issues.redhat.com/browse/TRACING-3173[3173]: Jaeger operator pod restarting with OOMKilled with the default memory value.
+* link:https://issues.redhat.com/browse/TRACING-2968[TRACING-29638]: Wrong port is exposed for jaeger-production-query resulting in connection refused.
+* link:https://issues.redhat.com/browse/TRACING-3173[TRACING-3173]: Jaeger operator pod restarting with OOMKilled with the default memory value.
=== {TempoName}
@@ -33,8 +33,9 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
* Support the operator level 4. This feature enables upgrade, monitoring and alerting of `+TempoStack+` instances and operator.
* Add Ingress and OpenShift Route configuration for the Gateway.
* Support managed and unmanaged state in the `+TempoStack+` custom resource.
-* Expose additional protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the distributor service. When gateway is enabled only OTLP gRPC is enabled.
-* Support multitenancy without the Gateway (authentication and authorization).
+* Expose additional ingestion protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the distributor service. When gateway is enabled only OTLP gRPC is enabled.
+* Expose Jaeger Query gRPC endpoint on the Query Frontend service.
+* Support multitenancy without the Gateway (without authentication and authorization).
==== Bug fixes
From b5947a1af4d0f19d65e4aa630619ee57749bb764 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 10 Aug 2023 15:03:41 +0200
Subject: [PATCH 103/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-known-issues.adoc | 2 --
1 file changed, 2 deletions(-)
diff --git a/modules/distr-tracing-rn-known-issues.adoc b/modules/distr-tracing-rn-known-issues.adoc
index 98d0f464ba4d..69364014e60a 100644
--- a/modules/distr-tracing-rn-known-issues.adoc
+++ b/modules/distr-tracing-rn-known-issues.adoc
@@ -44,8 +44,6 @@ These are the known issues for {DTProductName}:
-* link:https://issues.redhat.com/browse/OBSDA-220[OBSDA-220] In some cases, if you try to pull an image using {OTELShortName}, the image pull fails and a `Failed to pull image` error message appears.
-There is no workaround for this issue.
* link:https://issues.redhat.com/browse/TRACING-2057[TRACING-2057] The Kafka API has been updated to `v1beta2` to support the Strimzi Kafka Operator 0.23.0. However, this API version is not supported by AMQ Streams 1.6.3. If you have the following environment, your Jaeger services will not be upgraded, and you cannot create new Jaeger services or modify existing Jaeger services:
From eedeaca6fecd3316e641cd90b4c22683f1bffdb9 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 10 Aug 2023 15:08:09 +0200
Subject: [PATCH 104/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 3fe281ae5266..6d683435e603 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -28,6 +28,8 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
=== {TempoName}
+The {TempoName} is Technology Preview feature for {DTProductName}.
+
==== Enhancements
* Support the operator level 4. This feature enables upgrade, monitoring and alerting of `+TempoStack+` instances and operator.
@@ -50,6 +52,8 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
=== {OTELName}
+The {OTELName} is Technology Preview feature for {DTProductName}.
+
==== Enhancements
* Support OTLP metrics ingestion. The metrics can be forwarded and stored in the `+user-workload-monitoring+` via the Prometheus exporter.
From a1515f08923574d2c4aa3d2798d859863106efc9 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Thu, 10 Aug 2023 15:43:11 +0200
Subject: [PATCH 105/108] Fix
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 6d683435e603..f5aaec5da95b 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -21,10 +21,10 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
==== Bug fixes
-* link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]: Expose 16685 port on the Jaeger Query.
+* link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]: Expose Jaeger Query gRPC port (16685) on the Jaeger Query service.
* link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]: When deploying Service Mesh on SNO in a disconnected environment , the Jaeger Pod frequently goes into Pending state.
-* link:https://issues.redhat.com/browse/TRACING-2968[TRACING-29638]: Wrong port is exposed for jaeger-production-query resulting in connection refused.
-* link:https://issues.redhat.com/browse/TRACING-3173[TRACING-3173]: Jaeger operator pod restarting with OOMKilled with the default memory value.
+* link:https://issues.redhat.com/browse/TRACING-2968[TRACING-29638]: Wrong port is exposed for jaeger-production-query resulting in connection refused. Fixed by exposing Jaeger Query gRPC port (16685) on the Jaeger Query deployment.
+* link:https://issues.redhat.com/browse/TRACING-3173[TRACING-3173]: Jaeger operator pod restarting with OOMKilled with the default memory value. Fixed by removing resource limits.
=== {TempoName}
@@ -32,10 +32,10 @@ The {TempoName} is Technology Preview feature for {DTProductName}.
==== Enhancements
-* Support the operator level 4. This feature enables upgrade, monitoring and alerting of `+TempoStack+` instances and operator.
+* Support the operator level 4 (Deep Insights). This feature enables upgrade, monitoring and alerting of `+TempoStack+` instances and operator.
* Add Ingress and OpenShift Route configuration for the Gateway.
* Support managed and unmanaged state in the `+TempoStack+` custom resource.
-* Expose additional ingestion protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the distributor service. When gateway is enabled only OTLP gRPC is enabled.
+* Expose additional ingestion protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the Distributor service. When the Gateway is enabled only OTLP gRPC is enabled.
* Expose Jaeger Query gRPC endpoint on the Query Frontend service.
* Support multitenancy without the Gateway (without authentication and authorization).
@@ -57,18 +57,18 @@ The {OTELName} is Technology Preview feature for {DTProductName}.
==== Enhancements
* Support OTLP metrics ingestion. The metrics can be forwarded and stored in the `+user-workload-monitoring+` via the Prometheus exporter.
-* Support the operator level 4. This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
-* Report traces and metrics from remote clusters using OTLP/HTTP(s) in {OTELName}.
+* Support the operator level 4 (Deep Insights). This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
+* Report traces and metrics from remote clusters using OTLP/HTTP(s).
* Collect OpenShift specific resource attributes via `+resourcedetection+` processor.
* Support managed and unmanaged state in the `+OpenTelemetryCollector+` custom resouce.
==== Bug fixes
-* link:https://issues.redhat.com/browse/TRACING-3190[TRACING-3190]: OpenTelemetry operator crashlooping after receiving opentelemetry-operator.v0.74.0-5.
+* link:https://issues.redhat.com/browse/TRACING-3190[TRACING-3190]: OpenTelemetry operator crashlooping after receiving opentelemetry-operator.v0.74.0-5. Fixed by properly configuring autoscaler.
==== Known issues
-* link:https://issues.redhat.com/browse/TRACING-3431[TRACING-3431]: Operator level needs to be set to 4.
+* link:https://issues.redhat.com/browse/TRACING-3431[TRACING-3431]: Operator level needs to be set to 4 (Deep Insights).
=== Component versions supported in {DTProductName} version 2.9
From b74ecd8b288d620546bf8df1fa26e534b29c2fb5 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 14 Aug 2023 10:07:42 +0200
Subject: [PATCH 106/108] Put links as comments
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 50 +++++++++++++++++-----
1 file changed, 39 insertions(+), 11 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index f5aaec5da95b..23acd1950737 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -21,10 +21,21 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
==== Bug fixes
-* link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]: Expose Jaeger Query gRPC port (16685) on the Jaeger Query service.
-* link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]: When deploying Service Mesh on SNO in a disconnected environment , the Jaeger Pod frequently goes into Pending state.
-* link:https://issues.redhat.com/browse/TRACING-2968[TRACING-29638]: Wrong port is exposed for jaeger-production-query resulting in connection refused. Fixed by exposing Jaeger Query gRPC port (16685) on the Jaeger Query deployment.
-* link:https://issues.redhat.com/browse/TRACING-3173[TRACING-3173]: Jaeger operator pod restarting with OOMKilled with the default memory value. Fixed by removing resource limits.
+* Expose Jaeger Query gRPC port (16685) on the Jaeger Query service.
+
+// link:https://issues.redhat.com/browse/TRACING-3322[TRACING-3322]
+
+* When deploying Service Mesh on SNO in a disconnected environment , the Jaeger Pod frequently goes into Pending state.
+
+// link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]
+
+* Wrong port is exposed for jaeger-production-query resulting in connection refused. Fixed by exposing Jaeger Query gRPC port (16685) on the Jaeger Query deployment.
+
+// link:https://issues.redhat.com/browse/TRACING-2968[TRACING-29638]
+
+* Jaeger operator pod restarting with OOMKilled with the default memory value. Fixed by removing resource limits.
+
+// link:https://issues.redhat.com/browse/TRACING-3173[TRACING-3173]
=== {TempoName}
@@ -41,14 +52,27 @@ The {TempoName} is Technology Preview feature for {DTProductName}.
==== Bug fixes
-* link:https://issues.redhat.com/browse/TRACING-3145[TRACING-3145]: Support disconnected environments.
-* link:https://issues.redhat.com/browse/TRACING-3091[TRACING-3091]: Enable mTLS communication between Tempo components.
-* link:https://issues.redhat.com/browse/TRACING-3204[TRACING-3204]: Remove resource limits for Tempo operator.
+* Support disconnected environments.
+
+// link:https://issues.redhat.com/browse/TRACING-3145[TRACING-3145]
+
+* Enable mTLS communication between Tempo components.
+
+// link:https://issues.redhat.com/browse/TRACING-3091[TRACING-3091]
+
+* Remove resource limits for Tempo operator.
+
+// link:https://issues.redhat.com/browse/TRACING-3204[TRACING-3204]
==== Known issues
-* link:https://issues.redhat.com/browse/TRACING-3462[TRACING-3462]: Custom TLS CA option is not implemented.
-* link:https://issues.redhat.com/browse/TRACING-3139[TRACING-3139]: When you use the Jaeger user interface (UI) with Tempo Operator, the Jaeger UI lists only services that have sent traces within the last 15 minutes. For services that have not sent traces within the last 15 minutes, those traces are still stored even though they are not visible in the Jaeger UI.
+* Custom TLS CA option is not implemented.
+
+// link:https://issues.redhat.com/browse/TRACING-3462[TRACING-3462]
+
+* When you use the Jaeger user interface (UI) with Tempo Operator, the Jaeger UI lists only services that have sent traces within the last 15 minutes. For services that have not sent traces within the last 15 minutes, those traces are still stored even though they are not visible in the Jaeger UI.
+
+// link:https://issues.redhat.com/browse/TRACING-3139[TRACING-3139]
=== {OTELName}
@@ -64,11 +88,15 @@ The {OTELName} is Technology Preview feature for {DTProductName}.
==== Bug fixes
-* link:https://issues.redhat.com/browse/TRACING-3190[TRACING-3190]: OpenTelemetry operator crashlooping after receiving opentelemetry-operator.v0.74.0-5. Fixed by properly configuring autoscaler.
+* OpenTelemetry operator crashlooping after receiving opentelemetry-operator.v0.74.0-5. Fixed by properly configuring autoscaler.
+
+// link:https://issues.redhat.com/browse/TRACING-3190[TRACING-3190]
==== Known issues
-* link:https://issues.redhat.com/browse/TRACING-3431[TRACING-3431]: Operator level needs to be set to 4 (Deep Insights).
+* Operator level needs to be set to 4 (Deep Insights).
+
+// link:https://issues.redhat.com/browse/TRACING-3431[TRACING-3431]
=== Component versions supported in {DTProductName} version 2.9
From 0baba5e56da85f36ba013ddc5001f07fdc45f9a7 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 14 Aug 2023 18:50:45 +0200
Subject: [PATCH 107/108] Add issue
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 28 +++++++++++++++++++++-
1 file changed, 27 insertions(+), 1 deletion(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 23acd1950737..1772aef63ca0 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -66,7 +66,7 @@ The {TempoName} is Technology Preview feature for {DTProductName}.
==== Known issues
-* Custom TLS CA option is not implemented.
+* Custom TLS CA option is not implemented for connecting to an object storage.
// link:https://issues.redhat.com/browse/TRACING-3462[TRACING-3462]
@@ -74,6 +74,32 @@ The {TempoName} is Technology Preview feature for {DTProductName}.
// link:https://issues.redhat.com/browse/TRACING-3139[TRACING-3139]
+* Tempo query frontend service should not use internal mTLS when gateway is not deployed. This issue does not affect Jaeger Query API. The workaround is to disable mTLS.
+
+.Disable mTLS
+. Open the Tempo operator config map in editor.
++
+[source,console]
+----
+$ oc edit configmap tempo-operator-manager-config -n openshift-operators <1>
+----
+<1> The namespace where the Tempo operator is installed.
+
+. Disable the mTLS in the operator config.
++
+[source,yaml]
+----
+TODO
+----
+. Restart Tempo operator pod
++
+[source,console]
+----
+$ oc
+----
+
+// link:https://issues.redhat.com/browse/TRACING-3510[TRACING-3510]
+
=== {OTELName}
The {OTELName} is Technology Preview feature for {DTProductName}.
From bf6c280e53eaad312c34fa189a8e69f4e9d46826 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 14 Aug 2023 23:05:57 +0200
Subject: [PATCH 108/108] Add workarond
Signed-off-by: Pavol Loffay
---
modules/distr-tracing-rn-new-features.adoc | 54 ++++++++++++++--------
1 file changed, 36 insertions(+), 18 deletions(-)
diff --git a/modules/distr-tracing-rn-new-features.adoc b/modules/distr-tracing-rn-new-features.adoc
index 1772aef63ca0..96b176a759bc 100644
--- a/modules/distr-tracing-rn-new-features.adoc
+++ b/modules/distr-tracing-rn-new-features.adoc
@@ -29,11 +29,13 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
// link:https://issues.redhat.com/browse/TRACING-3312[TRACING-3312]
-* Wrong port is exposed for jaeger-production-query resulting in connection refused. Fixed by exposing Jaeger Query gRPC port (16685) on the Jaeger Query deployment.
+* Wrong port is exposed for jaeger-production-query resulting in connection refused.
+Fixed by exposing Jaeger Query gRPC port (16685) on the Jaeger Query deployment.
// link:https://issues.redhat.com/browse/TRACING-2968[TRACING-29638]
-* Jaeger operator pod restarting with OOMKilled with the default memory value. Fixed by removing resource limits.
+* Jaeger operator pod restarting with OOMKilled with the default memory value.
+Fixed by removing resource limits.
// link:https://issues.redhat.com/browse/TRACING-3173[TRACING-3173]
@@ -43,10 +45,12 @@ The {TempoName} is Technology Preview feature for {DTProductName}.
==== Enhancements
-* Support the operator level 4 (Deep Insights). This feature enables upgrade, monitoring and alerting of `+TempoStack+` instances and operator.
+* Support the operator level 4 (Deep Insights).
+This feature enables upgrade, monitoring and alerting of `+TempoStack+` instances and operator.
* Add Ingress and OpenShift Route configuration for the Gateway.
* Support managed and unmanaged state in the `+TempoStack+` custom resource.
-* Expose additional ingestion protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the Distributor service. When the Gateway is enabled only OTLP gRPC is enabled.
+* Expose additional ingestion protocols (Jaeger Thrift binary, Jaeger Thrift compact, Jaeger gRPC and Zipkin) in the Distributor service.
+When the Gateway is enabled only OTLP gRPC is enabled.
* Expose Jaeger Query gRPC endpoint on the Query Frontend service.
* Support multitenancy without the Gateway (without authentication and authorization).
@@ -56,7 +60,7 @@ The {TempoName} is Technology Preview feature for {DTProductName}.
// link:https://issues.redhat.com/browse/TRACING-3145[TRACING-3145]
-* Enable mTLS communication between Tempo components.
+* Enable mTLS communication between Tempo components.
// link:https://issues.redhat.com/browse/TRACING-3091[TRACING-3091]
@@ -70,14 +74,15 @@ The {TempoName} is Technology Preview feature for {DTProductName}.
// link:https://issues.redhat.com/browse/TRACING-3462[TRACING-3462]
-* When you use the Jaeger user interface (UI) with Tempo Operator, the Jaeger UI lists only services that have sent traces within the last 15 minutes. For services that have not sent traces within the last 15 minutes, those traces are still stored even though they are not visible in the Jaeger UI.
+* When you use the Jaeger user interface (UI) with Tempo Operator, the Jaeger UI lists only services that have sent traces within the last 15 minutes.
+For services that have not sent traces within the last 15 minutes, those traces are still stored even though they are not visible in the Jaeger UI.
// link:https://issues.redhat.com/browse/TRACING-3139[TRACING-3139]
* Tempo query frontend service should not use internal mTLS when gateway is not deployed. This issue does not affect Jaeger Query API. The workaround is to disable mTLS.
.Disable mTLS
-. Open the Tempo operator config map in editor.
+. Open the Tempo operator config map for editing.
+
[source,console]
----
@@ -89,13 +94,19 @@ $ oc edit configmap tempo-operator-manager-config -n openshift-operators <1>
+
[source,yaml]
----
-TODO
+data:
+ controller_manager_config.yaml: |
+ featureGates:
+ httpEncryption: false
+ grpcEncryption: false
+ builtInCertManagement:
+ enabled: false
----
. Restart Tempo operator pod
+
[source,console]
----
-$ oc
+$ oc rollout restart deployment.apps/tempo-operator-controller -n openshift-operators
----
// link:https://issues.redhat.com/browse/TRACING-3510[TRACING-3510]
@@ -106,8 +117,10 @@ The {OTELName} is Technology Preview feature for {DTProductName}.
==== Enhancements
-* Support OTLP metrics ingestion. The metrics can be forwarded and stored in the `+user-workload-monitoring+` via the Prometheus exporter.
-* Support the operator level 4 (Deep Insights). This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
+* Support OTLP metrics ingestion.
+The metrics can be forwarded and stored in the `+user-workload-monitoring+` via the Prometheus exporter.
+* Support the operator level 4 (Deep Insights).
+This feature enables upgrade and monitoring of `+OpenTelemetryCollector+` instances and operator.
* Report traces and metrics from remote clusters using OTLP/HTTP(s).
* Collect OpenShift specific resource attributes via `+resourcedetection+` processor.
* Support managed and unmanaged state in the `+OpenTelemetryCollector+` custom resouce.
@@ -204,7 +217,8 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
-This release introduces support for ingesting OpenTelemetry protocol (OTLP) to the {JaegerName} Operator. The Operator now automatically enables the OTLP ports:
+This release introduces support for ingesting OpenTelemetry protocol (OTLP) to the {JaegerName} Operator.
+The Operator now automatically enables the OTLP ports:
* Port 4317 is used for OTLP gRPC protocol.
* Port 4318 is used for OTLP HTTP protocol.
@@ -225,19 +239,20 @@ This release also adds support for collecting Kubernetes resource attributes to
|0.56
|===
-
== New features and enhancements {DTProductName} 2.4
This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
This release also adds support for auto-provisioning certificates using the Red Hat Elasticsearch Operator.
-* Self-provisioning, which means using the {JaegerName} Operator to call the Red Hat Elasticsearch Operator during installation. Self provisioning is fully supported with this release.
+* Self-provisioning, which means using the {JaegerName} Operator to call the Red Hat Elasticsearch Operator during installation.
+Self provisioning is fully supported with this release.
* Creating the Elasticsearch instance and certificates first and then configuring the {JaegerShortName} to use the certificate is a Technology Preview for this release.
[NOTE]
====
-When upgrading to {DTProductName} 2.4, the Operator recreates the Elasticsearch instance, which might take five to ten minutes. Distributed tracing will be down and unavailable for that period.
+When upgrading to {DTProductName} 2.4, the Operator recreates the Elasticsearch instance, which might take five to ten minutes.
+Distributed tracing will be down and unavailable for that period.
====
=== Component versions supported in {DTProductName} version 2.4
@@ -276,7 +291,8 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
This release of {DTProductName} addresses Common Vulnerabilities and Exposures (CVEs) and bug fixes.
-With this release, the {JaegerName} Operator is now installed to the `openshift-distributed-tracing` namespace by default. Before this update, the default installation had been in the `openshift-operators` namespace.
+With this release, the {JaegerName} Operator is now installed to the `openshift-distributed-tracing` namespace by default.
+Before this update, the default installation had been in the `openshift-operators` namespace.
=== Component versions supported in {DTProductName} version 2.3.0
@@ -330,7 +346,8 @@ This release of {DTProductName} addresses Common Vulnerabilities and Exposures (
== New features and enhancements {DTProductName} 2.0.0
-This release marks the rebranding of Red Hat OpenShift Jaeger to {DTProductName}. This release consists of the following changes, additions, and improvements:
+This release marks the rebranding of Red Hat OpenShift Jaeger to {DTProductName}.
+This release consists of the following changes, additions, and improvements:
* {DTProductName} now consists of the following two main components:
@@ -338,7 +355,8 @@ This release marks the rebranding of Red Hat OpenShift Jaeger to {DTProductName}
** *{OTELName}* - This component is based on the open source link:https://opentelemetry.io/[OpenTelemetry project].
-* Updates {JaegerName} Operator to Jaeger 1.28. Going forward, {DTProductName} will only support the `stable` Operator channel. Channels for individual releases are no longer supported.
+* Updates {JaegerName} Operator to Jaeger 1.28. Going forward, {DTProductName} will only support the `stable` Operator channel.
+Channels for individual releases are no longer supported.
* Introduces a new {OTELName} Operator based on OpenTelemetry 0.33. Note that this Operator is a Technology Preview feature.