1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-06 15:46:57 +01:00
Files
openshift-docs/modules/jaeger-deploy-streaming.adoc

141 lines
5.0 KiB
Plaintext

////
This PROCEDURE module included in the following assemblies:
- rhbjaeger-deploying.adoc
////
[id="jaeger-deploy-streaming_{context}"]
= Deploying the Jaeger streaming strategy from the web console
The `streaming` deployment 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.
The `streaming` strategy provides a streaming capability that sits between the collector and the storage (Elasticsearch). 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 streaming platform (Kafka).
[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.
====
.Prerequisites
* The AMQ Streams Operator must be installed. If using version 1.4.0 or higher you can use self-provisioning. If otherwise, you need to create the Kafka instance.
* The Jaeger Operator must be installed.
* Review the instructions for how to customize the Jaeger installation.
* An account 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 `jaeger-system`.
.. Navigate to *Home* -> *Projects*.
.. Click *Create Project*.
.. Enter `jaeger-system` in the *Name* field.
.. Click *Create*.
. Navigate to *Operators* -> *Installed Operators*.
. If necessary, select `jaeger-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 Jaeger Operator. On the *Overview* tab, under *Provided APIs*, the Operator provides a single link.
. Under *Jaeger* click *Create Instance*.
. On the *Create Jaeger* page, replace the default `all-in-one` yaml text with your streaming YAML configuration, for example:
.Example jaeger-streaming.yaml file
[source,yaml]
----
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
name: jaeger-streaming
spec:
strategy: streaming
collector:
options:
kafka:
producer:
topic: jaeger-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: jaeger-spans
brokers: my-cluster-kafka-brokers.kafka:9092
----
//TODO - find out if this storage configuration is correct for OpenShift
. Click *Create* to create the Jaeger instance.
. On the *Jaegers* page, click the name of the Jaeger instance, for example, `jaeger-streaming`.
. On the *Jaeger Details* page, click the *Resources* tab. Wait until all the pods have a status of "Running" before continuing.
[id="jaeger-deploy-streaming-cli_{context}"]
== Deploying Jaeger streaming from the CLI
Follow this procedure to create an instance of Jaeger from the command line.
.Prerequisites
* An installed, verified {ProductName} Operator.
* Access to the OpenShift CLI (`oc`).
* An account 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 https://{HOSTNAME}:8443
----
. Create a new project named `jaeger-system`.
+
[source,terminal]
----
$ oc new-project jaeger-system
----
. Create a custom resource file named `jaeger-streaming.yaml` that contains the text of the example file in the previous procedure.
. Run the following command to deploy Jaeger:
+
[source,terminal]
----
$ oc create -n jaeger-system -f jaeger-streaming.yaml
----
+
. Run the following command to watch the progress of the pods during the installation process:
+
[source,terminal]
----
$ oc get pods -n jaeger-system -w
----
+
Once the installation process has completed, you should see output similar to the following:
+
[source,terminal]
----
NAME READY STATUS RESTARTS AGE
elasticsearch-cdm-jaegersystemjaegerstreaming-1-697b66d6fcztcnn 2/2 Running 0 5m40s
elasticsearch-cdm-jaegersystemjaegerstreaming-2-5f4b95c78b9gckz 2/2 Running 0 5m37s
elasticsearch-cdm-jaegersystemjaegerstreaming-3-7b6d964576nnz97 2/2 Running 0 5m5s
jaeger-streaming-collector-6f6db7f99f-rtcfm 1/1 Running 0 80s
jaeger-streaming-entity-operator-6b6d67cc99-4lm9q 3/3 Running 2 2m18s
jaeger-streaming-ingester-7d479847f8-5h8kc 1/1 Running 0 80s
jaeger-streaming-kafka-0 2/2 Running 0 3m1s
jaeger-streaming-query-65bf5bb854-ncnc7 3/3 Running 0 80s
jaeger-streaming-zookeeper-0 2/2 Running 0 3m39s
----