Skip to content

Commit bf33abc

Browse files
authored
Merge pull request #75020 from max-cx/OBSDOCS-918
OBSDOCS-918: Fix Tempo configuration docs
2 parents 8ec9687 + 444c79f commit bf33abc

9 files changed

+139
-230
lines changed

modules/distr-tracing-tempo-config-default.adoc

Lines changed: 49 additions & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -4,147 +4,58 @@
44

55
:_mod-docs-content-type: REFERENCE
66
[id="distr-tracing-tempo-config-default_{context}"]
7-
= Default configuration options
7+
= Introduction to TempoStack configuration parameters
88

9-
The `TempoStack` 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.
9+
The `TempoStack` custom resource (CR) defines the architecture and settings for creating the {TempoShortName} resources. You can modify these parameters to customize your implementation to your business needs.
1010

11-
.Example of a generic Tempo YAML file
11+
.Example `TempoStack` CR
1212
[source,yaml]
1313
----
14-
apiVersion: tempo.grafana.com/v1alpha1
15-
kind: TempoStack
16-
metadata:
17-
name: name
18-
spec:
19-
storage: {}
20-
resources: {}
21-
storageSize: 200M
22-
replicationFactor: 1
23-
retention: {}
14+
apiVersion: tempo.grafana.com/v1alpha1 # <1>
15+
kind: TempoStack # <2>
16+
metadata: # <3>
17+
name: <name> # <4>
18+
spec: # <5>
19+
storage: {} # <6>
20+
resources: {} # <7>
21+
replicationFactor: 1 # <8>
22+
retention: {} # <9>
2423
template:
25-
distributor:{}
26-
ingester: {}
27-
compactor: {}
28-
querier: {}
29-
queryFrontend: {}
30-
gateway: {}
24+
distributor: {} # <10>
25+
ingester: {} # <11>
26+
compactor: {} # <12>
27+
querier: {} # <13>
28+
queryFrontend: {} # <14>
29+
gateway: {} # <15>
30+
limits: # <16>
31+
global:
32+
ingestion: {} # <17>
33+
query: {} # <18>
34+
observability: # <19>
35+
grafana: {}
36+
metrics: {}
37+
tracing: {}
38+
search: {} # <20>
39+
managementState: managed # <21>
3140
----
32-
33-
.Tempo parameters
34-
[options="header"]
35-
[cols="a, a, a, a"]
36-
|===
37-
|Parameter |Description |Values |Default value
38-
39-
|`apiVersion:`
40-
|API version to use when creating the object.
41-
|`tempo.grafana.com/v1alpha1`
42-
|`tempo.grafana.com/v1alpha1`
43-
44-
|`kind:`
45-
|Defines the kind of Kubernetes object to create.
46-
|`tempo`
47-
|
48-
49-
|`metadata:`
50-
|Data that uniquely identifies the object, including a `name` string, `UID`, and optional `namespace`.
51-
|
52-
|{product-title} automatically generates the `UID` and completes the `namespace` with the name of the project where the object is created.
53-
54-
|`name:`
55-
|Name for the object.
56-
|Name of your TempoStack instance.
57-
|`tempo-all-in-one-inmemory`
58-
59-
|`spec:`
60-
|Specification for the object to be created.
61-
|Contains all of the configuration parameters for your TempoStack 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/template/<component>` node.
62-
|N/A
63-
64-
|`resources:`
65-
|Resources assigned to the TempoStack instance.
66-
|
67-
|
68-
69-
|`storageSize:`
70-
|Storage size for ingester PVCs.
71-
|
72-
|
73-
74-
|`replicationFactor:`
75-
|Configuration for the replication factor.
76-
|
77-
|
78-
79-
|`retention:`
80-
|Configuration options for retention of traces.
81-
|
82-
|
83-
84-
|`storage:`
85-
|Configuration options that define the storage. All storage-related options must be placed under `storage` and not under the `allInOne` or other component options.
86-
|
87-
|
88-
89-
|`template.distributor:`
90-
|Configuration options for the Tempo `distributor`.
91-
|
92-
|
93-
94-
|`template.ingester:`
95-
|Configuration options for the Tempo `ingester`.
96-
|
97-
|
98-
99-
|`template.compactor:`
100-
|Configuration options for the Tempo `compactor`.
101-
|
102-
|
103-
104-
|`template.querier:`
105-
|Configuration options for the Tempo `querier`.
106-
|
107-
|
108-
109-
|`template.queryFrontend:`
110-
|Configuration options for the Tempo `query-frontend`.
111-
|
112-
|
113-
114-
|`template.gateway:`
115-
|Configuration options for the Tempo `gateway`.
116-
|
117-
|
118-
119-
|===
120-
121-
122-
123-
.Minimum required configuration
124-
125-
The following is the required minimum for creating a {TempoShortName} deployment with the default settings:
126-
127-
[source,yaml]
128-
----
129-
apiVersion: tempo.grafana.com/v1alpha1
130-
kind: TempoStack
131-
metadata:
132-
name: simplest
133-
spec:
134-
storage: # <1>
135-
secret:
136-
name: minio
137-
type: s3
138-
resources:
139-
total:
140-
limits:
141-
memory: 2Gi
142-
cpu: 2000m
143-
template:
144-
queryFrontend:
145-
jaegerQuery:
146-
enabled: true
147-
ingress:
148-
type: route
149-
----
150-
<1> This section specifies the deployed object storage back end, which requires a created secret with credentials for access to the object storage.
41+
<1> API version to use when creating the object.
42+
<2> Defines the kind of Kubernetes object to create.
43+
<3> Data that uniquely identifies 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.
44+
<4> Name of the TempoStack instance.
45+
<5> Contains all of the configuration parameters of the TempoStack instance. When a common definition for all Tempo components is required, define it in the `spec` section. When the definition relates to an individual component, place it in the `spec.template.<component>` section.
46+
<6> Storage is specified at instance deployment. See the installation page for information about storage options for the instance.
47+
<7> Defines the compute resources for the Tempo container.
48+
<8> Configuration for the replication factor.
49+
<9> Configuration options for retention of traces.
50+
<10> Configuration options for the Tempo `distributor` component.
51+
<11> Configuration options for the Tempo `ingester` component.
52+
<12> Configuration options for the Tempo `compactor` component.
53+
<13> Configuration options for the Tempo `querier` component.
54+
<14> Configuration options for the Tempo `query-frontend` component.
55+
<15> Configuration options for the Tempo `gateway` component.
56+
<16> Limits ingestion and query rates.
57+
<17> Defines ingestion rate limits.
58+
<18> Defines query rate limits.
59+
<19> Configures operands to handle telemetry data.
60+
<20> Configures search capabilities.
61+
<21> Defines whether or not this CR is managed by the Operator. The default value is `managed`.

modules/distr-tracing-tempo-config-multitenancy.adoc

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,18 @@ apiVersion: tempo.grafana.com/v1alpha1
2121
kind: TempoStack
2222
metadata:
2323
name: simplest
24+
namespace: chainsaw-multitenancy
2425
spec:
26+
storage:
27+
secret:
28+
name: minio
29+
type: s3
30+
storageSize: 1Gi
31+
resources:
32+
total:
33+
limits:
34+
memory: 2Gi
35+
cpu: 2000m
2536
tenants:
2637
mode: openshift # <1>
2738
authentication: # <2>

modules/distr-tracing-tempo-config-spanmetrics.adoc

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,12 +77,19 @@ The `TempoStack` custom resource must specify the following: the *Monitor* tab i
7777
.TempoStack custom resource with the enabled Monitor tab
7878
[source,yaml]
7979
----
80-
kind: TempoStack
8180
apiVersion: tempo.grafana.com/v1alpha1
81+
kind: TempoStack
8282
metadata:
83-
name: simplest
83+
name: redmetrics
8484
spec:
85+
storage:
86+
secret:
87+
name: minio-test
88+
type: s3
89+
storageSize: 1Gi
8590
template:
91+
gateway:
92+
enabled: false
8693
queryFrontend:
8794
jaegerQuery:
8895
enabled: true

modules/distr-tracing-tempo-config-storage.adoc

Lines changed: 0 additions & 33 deletions
This file was deleted.

modules/distr-tracing-tempo-install-tempostack-cli.adoc

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -69,31 +69,9 @@ You can create multiple TempoStack instances in separate projects on the same cl
6969
+
7070
.. Customize the `TempoStack` custom resource (CR):
7171
+
72-
[source,yaml]
73-
----
74-
apiVersion: tempo.grafana.com/v1alpha1
75-
kind: TempoStack
76-
metadata:
77-
name: sample
78-
namespace: <project_of_tempostack_instance>
79-
spec:
80-
storageSize: 1Gi
81-
storage:
82-
secret: # <1>
83-
name: <secret_name> # <2>
84-
type: <secret_provider> # <3>
85-
template:
86-
queryFrontend:
87-
jaegerQuery:
88-
enabled: true
89-
ingress:
90-
route:
91-
termination: edge
92-
type: route
93-
----
94-
<1> The secret you created in step 2 for the object storage that had been set up as one of the prerequisites.
95-
<2> The value of the `name` in the `metadata` of the secret.
96-
<3> The accepted values are `azure` for Azure Blob Storage; `gcs` for Google Cloud Storage; and `s3` for Amazon S3, MinIO, or {odf-full}.
72+
--
73+
include::snippets/distr-tracing-tempo-tempostack-custom-resource.adoc[]
74+
--
9775
+
9876
.Example of a `TempoStack` CR for AWS S3 and MinIO storage
9977
[source,yaml]

modules/distr-tracing-tempo-install-tempostack-web-console.adoc

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -44,31 +44,9 @@ You can create multiple TempoStack instances in separate projects on the same cl
4444

4545
.. In the *YAML view*, customize the `TempoStack` custom resource (CR):
4646
+
47-
[source,yaml]
48-
----
49-
apiVersion: tempo.grafana.com/v1alpha1
50-
kind: TempoStack
51-
metadata:
52-
name: sample
53-
namespace: <project_of_tempostack_instance>
54-
spec:
55-
storageSize: 1Gi
56-
storage:
57-
secret: # <1>
58-
name: <secret_name> # <2>
59-
type: <secret_provider> # <3>
60-
template:
61-
queryFrontend:
62-
jaegerQuery:
63-
enabled: true
64-
ingress:
65-
route:
66-
termination: edge
67-
type: route
68-
----
69-
<1> The secret you created in step 2 for the object storage that had been set up as one of the prerequisites.
70-
<2> The value of the `name` in the `metadata` of the secret.
71-
<3> The accepted values are `azure` for Azure Blob Storage; `gcs` for Google Cloud Storage; and `s3` for Amazon S3, MinIO, or {odf-full}.
47+
--
48+
include::snippets/distr-tracing-tempo-tempostack-custom-resource.adoc[]
49+
--
7250
+
7351
.Example of a `TempoStack` CR for AWS S3 and MinIO storage
7452
[source,yaml]

observability/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-configuring.adoc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ include::_attributes/common-attributes.adoc[]
66

77
toc::[]
88

9-
The {TempoOperator} 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 install the default configuration or modify the file.
9+
The {TempoOperator} uses a custom resource definition (CRD) file that defines the architecture and configuration settings for creating and deploying the {TempoShortName} resources. You can install the default configuration or modify the file.
1010

1111
[id="customizing-your-tempo-deployment"]
1212
== Customizing your deployment
@@ -17,7 +17,10 @@ endif::[]
1717

1818
include::modules/distr-tracing-tempo-config-default.adoc[leveloffset=+2]
1919

20-
include::modules/distr-tracing-tempo-config-storage.adoc[leveloffset=+2]
20+
[role="_additional-resources"]
21+
.Additional resources
22+
* xref:../../../observability/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc#installing-a-tempostack-instance[Installing a TempoStack instance]
23+
* xref:../../../observability/distr_tracing/distr_tracing_tempo/distr-tracing-tempo-installing.adoc#installing-a-tempomonolithic-instance[Installing a TempoMonolithic instance]
2124

2225
include::modules/distr-tracing-tempo-config-query-frontend.adoc[leveloffset=+2]
2326

snippets/distr-tracing-tempo-tempomonolithic-custom-resource.adoc

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,25 @@ spec:
1919
size: <value>Gi # <2>
2020
s3: # <3>
2121
secret: <secret_name> # <4>
22+
tls: # <5>
23+
enabled: true
24+
caName: <ca_certificate_configmap_name> # <6>
2225
jaegerui:
23-
enabled: true # <5>
26+
enabled: true # <7>
2427
route:
25-
enabled: true # <6>
28+
enabled: true # <8>
29+
resources: # <9>
30+
total:
31+
limits:
32+
memory: <value>Gi
33+
cpu: <value>m
2634
----
27-
<1> Type of storage for storing traces: in-memory storage, a persistent volume, or object storage. The value for the `tmpfs` in-memory storage is `memory`. The value for a persistent volume is `pv`. The accepted values for object storage are `s3`, `gcs`, or `azure`, depending on the used object store type.
35+
<1> Type of storage for storing traces: in-memory storage, a persistent volume, or object storage. The value for a persistent volume is `pv`. The accepted values for object storage are `s3`, `gcs`, or `azure`, depending on the used object store type. The default value is `memory` for the `tmpfs` in-memory storage, which is only appropriate for development, testing, demonstrations, and proof-of-concept environments because the data does not persist when the pod is shut down.
2836
<2> Memory size: For in-memory storage, this means the size of the `tmpfs` volume, where the default is `2Gi`. For a persistent volume, this means the size of the persistent volume claim, where the default is `10Gi`. For object storage, this means the size of the persistent volume claim for the Tempo WAL, where the default is `10Gi`.
2937
<3> Optional: For object storage, the type of object storage. The accepted values are `s3`, `gcs`, and `azure`, depending on the used object store type.
3038
<4> Optional: For object storage, the value of the `name` in the `metadata` of the storage secret. The storage secret must be in the same namespace as the TempoMonolithic instance and contain the fields specified in "Table 1. Required secret parameters" in the section "Object storage setup".
31-
<5> Enables the Jaeger UI.
32-
<6> Enables creation of a route for the Jaeger UI.
39+
<5> Optional.
40+
<6> Optional: Name of a `ConfigMap` object that contains a CA certificate.
41+
<7> Enables the Jaeger UI.
42+
<8> Enables creation of a route for the Jaeger UI.
43+
<9> Optional.

0 commit comments

Comments
 (0)