Skip to content

Commit 886da91

Browse files
authored
Merge branch 'open-telemetry:main' into main
2 parents 4c38790 + 4fa742a commit 886da91

File tree

132 files changed

+2068
-1038
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

132 files changed

+2068
-1038
lines changed

.chloggen/.bump-dotnet-1.2.0.yaml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: enhancement
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. operator, target allocator, github action)
5+
component: autoinstrumentation
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: Bump OpenTelemetry .NET Automatic Instrumentation to 1.2.0
9+
10+
# One or more tracking issues related to the change
11+
issues: [2382]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext:

.chloggen/truncate-pod-label.yaml .chloggen/2364-foreground-delete.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ change_type: bug_fix
55
component: operator
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Truncate `sidecar.opentelemetry.io/injected` sidecar pod label to 63 characters
8+
note: fixes ability to do a foreground cascading delete
99

1010
# One or more tracking issues related to the change
11-
issues: [1031]
11+
issues: [2364]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.

.chloggen/related_images_env_vars.yaml .chloggen/TA-liveness-probe.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ change_type: enhancement
55
component: operator
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Support configuring images via RELATED_IMAGE_ environment variables
8+
note: add liveness probe to target allocator deployment generation
99

1010
# One or more tracking issues related to the change
11-
issues: [2326]
11+
issues: [2258]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.

.chloggen/allocator-affinity.yaml .chloggen/enhanced-status.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ change_type: enhancement
55
component: operator
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: add target allocator affinity configuration
8+
note: added reconciliation errors for CRD events
99

1010
# One or more tracking issues related to the change
11-
issues: [2263]
11+
issues: [1972]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.

.chloggen/issue-2366-fix.yaml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: bug_fix
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. operator, target allocator, github action)
5+
component: operator
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: lifecycle spec removed from cloned initContainer
9+
10+
# One or more tracking issues related to the change
11+
issues: [2366]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext:

.chloggen/main.yaml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: bug_fix
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. operator, target allocator, github action)
5+
component: operator
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: add missing pod in the rbac
9+
10+
# One or more tracking issues related to the change
11+
issues: [1679]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext:

.chloggen/new-service-instance-id.yaml

-16
This file was deleted.

.chloggen/sa-fix.yaml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: bug_fix
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. operator, target allocator, github action)
5+
component: operator
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: check if service account specified in otelcol before creating service account resource for collectors
9+
10+
# One or more tracking issues related to the change
11+
issues: [2372]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext:

.chloggen/add-managed-bridge-annotation.yaml .chloggen/ta-readiness-probe.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
change_type: enhancement
33

44
# The name of the component, or a single word describing the area of concern, (e.g. operator, target allocator, github action)
5-
component: OpAMP Bridge
5+
component: operator
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Sends a heartbeat from the bridge and brings the annotation to spec.
8+
note: add readiness probe to target allocator deployment generation
99

1010
# One or more tracking issues related to the change
11-
issues: [2132]
11+
issues: [2258]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.

.chloggen/target-allocator-container-port.yaml .chloggen/ta-readiness.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ change_type: enhancement
55
component: target allocator
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Declare and use ContainerPort for Target Allocator
8+
note: add readyz endpoint to TA
99

1010
# One or more tracking issues related to the change
11-
issues: [2312]
11+
issues: [2258]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.

.chloggen/target-allocator-prometheus-operator-logging.yaml .chloggen/ta_really-consistent-hashing.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ change_type: enhancement
55
component: target allocator
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Add logging for prometheus operator in TargetAllocator's config generator
8+
note: Use only target address for allocation in consistent-hashing strategy
99

1010
# One or more tracking issues related to the change
11-
issues: [2348]
11+
issues: [2280]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: bug_fix
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. operator, target allocator, github action)
5+
component: target allocator
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: Save targets discovered before collector instances come up
9+
10+
# One or more tracking issues related to the change
11+
issues: [2350]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext:

CHANGELOG.md

+48-5
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,57 @@ Changes by Version
22
==================
33
<!-- next version -->
44

5+
## 0.89.0
6+
7+
### 🛑 Breaking changes 🛑
8+
9+
- `autoinstrumentation`: Bump Go auto instrumentation version to v0.8.0-alpha (#2358)
10+
The default export protocol was switched from `grpc` to `http/proto`
11+
- `target allocator`: Disable configuration hot reload (#2032)
12+
This feature can be re-enabled by passing the --reload-config flag to the target allocator.
13+
However, this is deprecated and will be removed in an upcoming release.
14+
15+
### 💡 Enhancements 💡
16+
17+
- `target allocator`: add healthcheck endpoint to TA (#2258)
18+
- `OpAMP Bridge`: Sends a heartbeat from the bridge and brings the annotation to spec. (#2132)
19+
- `operator`: Added updateStrategy for DaemonSet mode. (#2107)
20+
- `operator`: add target allocator affinity configuration (#2263)
21+
- `Operator`: Added the service.instance.id as the pod.UID into the traces resource Env. (#1921)
22+
- `operator`: Support configuring images via RELATED_IMAGE_ environment variables (#2326)
23+
- `target allocator`: Declare and use ContainerPort for Target Allocator (#2312)
24+
- `target allocator`: Add logging for prometheus operator in TargetAllocator's config generator (#2348)
25+
26+
### 🧰 Bug fixes 🧰
27+
28+
- `target allocator`: Update file watcher to detect file write events (#2349)
29+
- `target allocator`: Run the target allocator as a non-root user (#738)
30+
Some Kubernetes configurations do not allow running images as root, so
31+
provide a non-zero UID in the Docker image.
32+
33+
- `operator`: Truncate `sidecar.opentelemetry.io/injected` sidecar pod label to 63 characters (#1031)
34+
35+
### Components
36+
37+
* [OpenTelemetry Collector - v0.89.0](https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.89.0)
38+
* [OpenTelemetry Contrib - v0.89.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.89.0)
39+
* [Java auto-instrumentation - 1.31.0](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/tag/v1.31.0)
40+
* [.NET auto-instrumentation - 1.1.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/tag/1.1.0)
41+
* [Node.JS - 0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/releases/tag/auto-instrumentations-node-0.44.0)
42+
* [Python - 0.41b0](https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/0.41b0)
43+
* [Go - v0.8.0-alpha](https://github.com/open-telemetry/opentelemetry-go-instrumentation/releases/tag/v0.8.0-alpha)
44+
* [ApacheHTTPD - 1.0.3](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.3)
45+
* [Nginx - 1.0.3](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.3)]
46+
47+
548
## 0.88.0
649

750
### 🛑 Breaking changes 🛑
851

952
- `OpAMP Bridge`: Currently, the bridge doesn't adhere to the spec for the naming structure. This changes the bridge to use the <namespace>/<otelcol> structure as described. (#2131)
1053
* Updates the bridge to get collectors using the reporting annotation
1154
* Fixes a bug where we were using the incorrect structure for the collectors
12-
55+
1356

1457
### 💡 Enhancements 💡
1558

@@ -45,7 +88,7 @@ Changes by Version
4588
- `operator`: Enable Target Allocator Rewrite by default (#2208)
4689
See [the documentation](/README.md#target-allocator) for details.
4790
Use the `--feature-gates=-operator.collector.rewritetargetallocator` command line option to switch back to the old behaviour.
48-
91+
4992

5093
### 💡 Enhancements 💡
5194

@@ -78,7 +121,7 @@ Changes by Version
78121
Kubernetes 1.23 is the minimum available version everywhere after 1.22 deprecation,
79122
due to it, the minimum required version has been updated to it, dropping support for
80123
autoscaling/v2beta2
81-
124+
82125

83126
### 💡 Enhancements 💡
84127

@@ -171,12 +214,12 @@ Changes by Version
171214
### 🛑 Breaking changes 🛑
172215

173216
- `operator`: Make sure OTLP export can report data to OTLP ingress/route without additional configuration (#1967)
174-
The ingress can be configured to create a single host with multiple paths or
217+
The ingress can be configured to create a single host with multiple paths or
175218
multiple hosts with subdomains (one per receiver port).
176219
The path from OpenShift route was removed.
177220
The port names are truncate to 15 characters. Users with custom receivers
178221
which create ports with longer name might need to update their configuration.
179-
222+
180223

181224
### 💡 Enhancements 💡
182225

CONTRIBUTING.md

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ gh pr create
2525
* Install [Kustomize](https://kubectl.docs.kubernetes.io/installation/kustomize/).
2626
* Install [Operator SDK](https://sdk.operatorframework.io/docs/installation/).
2727
* Have a Kubernetes cluster ready for development. We recommend `minikube` or `kind`.
28+
* Docker version 23.0.0 or greater.
2829

2930
### Adding new components - webhook, API
3031

README.md

+9-5
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,13 @@ spec:
223223
# See https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/blob/888e2cd216c77d12e56b54ee91dafbc4e7452a52/docs/config.md#otlp
224224
- name: OTEL_EXPORTER_OTLP_ENDPOINT
225225
value: http://otel-collector:4318
226+
go:
227+
env:
228+
# Required if endpoint is set to 4317.
229+
# Go autoinstrumentation uses http/proto by default
230+
# so data must be sent to 4318 instead of 4317.
231+
- name: OTEL_EXPORTER_OTLP_ENDPOINT
232+
value: http://otel-collector:4318
226233
EOF
227234
```
228235

@@ -279,9 +286,6 @@ Go auto-instrumentation also requires elevated permissions. The below permission
279286

280287
```yaml
281288
securityContext:
282-
capabilities:
283-
add:
284-
- SYS_PTRACE
285289
privileged: true
286290
runAsUser: 0
287291
```
@@ -534,7 +538,7 @@ OpenTelemetry Operator allows to instrument multiple containers using multiple l
534538
These features can be enabled using `operator.autoinstrumentation.multi-instrumentation` flag when installing the Operator via Helm. By default flag is `disabled`. For example:
535539

536540
```sh
537-
helm install opentelemetry-operator open-telemetry/opentelemetry-operator --set manager.featureGates=operator.autoinstrumentation.multi-instrumentation=enabled
541+
helm install opentelemetry-operator open-telemetry/opentelemetry-operator --set manager.featureGates=operator.autoinstrumentation.multi-instrumentation
538542
```
539543

540544
For more information about multi-instrumentation feature capabilities please see [Multi-container pods with multiple instrumentations](#Multi-container-pods-with-multiple-instrumentations).
@@ -682,6 +686,7 @@ The OpenTelemetry Operator *might* work on versions outside of the given range,
682686

683687
| OpenTelemetry Operator | Kubernetes | Cert-Manager |
684688
|------------------------|----------------------|---------------------|
689+
| v0.89.0 | v1.23 to v1.28 | v1 |
685690
| v0.88.0 | v1.23 to v1.28 | v1 |
686691
| v0.87.0 | v1.23 to v1.28 | v1 |
687692
| v0.86.0 | v1.23 to v1.28 | v1 |
@@ -704,7 +709,6 @@ The OpenTelemetry Operator *might* work on versions outside of the given range,
704709
| v0.69.0 | v1.19 to v1.25 | v1 |
705710
| v0.68.0 | v1.19 to v1.25 | v1 |
706711
| v0.67.0 | v1.19 to v1.25 | v1 |
707-
| v0.66.0 | v1.19 to v1.25 | v1 |
708712

709713
## Contributing and Developing
710714

RELEASE.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ The operator should be released within a week after the [OpenTelemetry collector
3838

3939
| Version | Release manager |
4040
|---------|-----------------|
41-
| v0.89.0 | @frzifus |
4241
| v0.90.0 | @jaronoff97 |
4342
| v0.91.0 | @yuriolisa |
4443
| v0.92.0 | @pavolloffay |
4544
| v0.93.0 | @VineethReddy02 |
4645
| v0.94.0 | @TylerHelmuth |
4746
| v0.95.0 | @swiatekm-sumo |
47+
| v0.96.0 | @frzifus |

apis/v1alpha1/collector_webhook.go

+5
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,11 @@ func (c CollectorWebhook) validate(r *OpenTelemetryCollector) (admission.Warning
295295
}
296296
}
297297

298+
// validate updateStrategy for DaemonSet
299+
if r.Spec.Mode != ModeDaemonSet && len(r.Spec.UpdateStrategy.Type) > 0 {
300+
return warnings, fmt.Errorf("the OpenTelemetry Collector mode is set to %s, which does not support the attribute 'updateStrategy'", r.Spec.Mode)
301+
}
302+
298303
return warnings, nil
299304
}
300305

0 commit comments

Comments
 (0)