Skip to content

Commit 063eb8d

Browse files
authored
[chore] prep release 0.138.0 (#4460)
* prep release 0.138.0 * more chlogs
1 parent 949edd7 commit 063eb8d

12 files changed

+88
-139
lines changed

.chloggen/bugfix-autoscaler-replicas-respect-spec.yaml

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

.chloggen/feat_drop-feature-flag-ta.yaml

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

.chloggen/fix_deprecate_VolumeSizeLimit.yaml

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

.chloggen/fix_target-allocator-certificate-ownership.yaml

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

.chloggen/migrate_validation_webhook_to_annotations.yaml

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

.chloggen/pdb-log-level.yaml

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

CHANGELOG.md

Lines changed: 73 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,44 @@
22

33
<!-- next version -->
44

5+
## 0.138.0
6+
7+
8+
### 💡 Enhancements 💡
9+
10+
- `collector`: Migrate simple OpenTelemetryCollector validations from the webhook to CRD annotations so Kubernetes enforces them server-side. ()
11+
12+
### 🛑 Breaking changes 🛑
13+
14+
- `target allocator`: Remove the operator.collector.targetallocatorcr feature flag (#2422)
15+
This behavior has been enabled by default since version 0.127.0.
16+
17+
### 🚩 Deprecations 🚩
18+
19+
- `auto-instrumentation`: Deprecate VolumeSizeLimit in the Instrumentation CRD (#3382)
20+
- The `volumeSizeLimit` field is deprecated.
21+
- Use `spec.<lang>.volume.size` instead of `spec.<lang>.volumeSizeLimit`.
22+
- The validating webhook emits a warning when `volumeSizeLimit` is used.
23+
24+
### 🧰 Bug fixes 🧰
25+
26+
- `target allocator`: Add missing TA ownership watches to cert-manager Certificate and Issuer (#4368)
27+
- `collector`: Set the log level to 4 when default pdb is created. ()
28+
- `collector`: Fix autoscaler not scaling above minReplicas; replicas now respect the scale subresource and never fall below autoscaler.minReplicas. (#4400) Also rename helper `GetInitialReplicas` to `GetDesiredReplicas` to reflect reconcile-time behavior.
29+
30+
31+
### Components
32+
33+
* [OpenTelemetry Collector - v0.138.0](https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.138.0)
34+
* [OpenTelemetry Contrib - v0.138.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.138.0)
35+
* [Java auto-instrumentation - v1.33.6](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/tag/v1.33.6)
36+
* [.NET auto-instrumentation - v1.2.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/tag/v1.2.0)
37+
* [Node.JS - v0.64.1](https://github.com/open-telemetry/opentelemetry-js/releases/tag/experimental%2Fv0.64.1)
38+
* [Python - v0.59b0](https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/v0.59b0)
39+
* [Go - v0.22.1](https://github.com/open-telemetry/opentelemetry-go-instrumentation/releases/tag/v0.22.1)
40+
* [ApacheHTTPD - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)
41+
* [Nginx - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)
42+
543
## 0.137.0
644

745
### 🛑 Breaking changes 🛑
@@ -21,14 +59,14 @@
2159
- This change adds validation for collector ports specified in the configuration file.
2260
- Ports must be within the range of 1 to 65535; otherwise, an error will be raised during CR creation.
2361
- This helps prevent misconfigurations that could lead to runtime errors.
24-
62+
2563

2664
### 🧰 Bug fixes 🧰
2765

2866
- `collector`: Respect telemetry metrics readers when deriving the internal metrics endpoint. (#4049, #4233)
2967
- Fixes monitoring Service and container port mismatches when `.spec.config.service.telemetry.metrics.readers[].pull.exporter.prometheus.port` is set.
3068
- Defaults remain `0.0.0.0:8888` when neither address nor a Prometheus reader is configured.
31-
69+
3270
- `target allocator, opamp`: Fix version not being updated after version upgrade. (#4378)
3371
- `target-allocator`: Fixed potential duplicate scrape targets caused by Prometheus relabeling. (#3617)
3472
- `auto-instrumentation`: Fix nginxCloneScriptTemplate for old shells (#3651)
@@ -55,7 +93,7 @@
5593
This feature introduced two issues:
5694
1. upgrade failure because the default stateful serviceName changed
5795
2. the statefulset serviceName field is mutable, therefore a change of the collector serviceName field is not applied
58-
96+
5997

6098
### Components
6199

@@ -76,7 +114,7 @@
76114
- `collector, target allocator`: Add TrafficDistribution support for OpenTelemetryCollector and TargetAllocator Services (#4285)
77115
The TrafficDistribution field is now available in OpenTelemetryCollector and TargetAllocator.
78116
This field allows setting the traffic distribution policy for Kubernetes Services.
79-
117+
80118

81119
### Components
82120

@@ -218,13 +256,13 @@
218256
- `collector`: Add support for extraLabels in ServiceMonitor creation (#4138)
219257
Added extraLabels field to MetricsConfigSpec in v1beta1 API to allow custom labels on ServiceMonitor resources.
220258
This enables users to add additional labels to ServiceMonitors created by the operator for better organization and filtering.
221-
259+
222260
- `manager, target-allocator, opamp-bridge, must-gather`: add -trimpath when building binaries (#4078)
223261
- `collector, targer allocator, opamp`: Require Go 1.24+ to build the collector, target allocator, and opamp. (#4173)
224262
- `collector`: Added RBAC permissions for config.extensions.k8s_observer. (#4113)
225263
Generating RBAC rules for the k8s_observer extension in the OpenTelemetry Collector when used in the operator.
226264
The change addresses the issue where the collector lacked necessary permissions to list and watch Kubernetes resources.
227-
265+
228266
- `auto-instrumentation`: Upgrade urllib3 upper limit following Python 3.8 support drop (#3712)
229267

230268
### 🧰 Bug fixes 🧰
@@ -234,7 +272,7 @@
234272
- `target allocator`: check CRD availability before registering informers (#3987)
235273
- `target allocator`: Allow collector to use TLS Config from Target Allocator with ScrapeConfig (#3724)
236274
This change allows the target allocator to configure TLS Config for a collector using the ScrapeConfig.
237-
275+
238276

239277
### Components
240278

@@ -259,7 +297,7 @@
259297

260298
- `controller`: Harmonize CLI and env var configuration to allow setting all configuration (#3565)
261299
In order of priority, the default configuration is assigned first, overwritten by environment variables and CLI arguments successively.
262-
300+
263301
- `managementState`: managementState property on resources is no longer a required field since it has a default value as managed (#4076)
264302
- `operator`: Support for Kubernetes `1.33` version. (#4048)
265303
- `target allocator`: Adds support for HTML output in the target allocator. (#3622)
@@ -297,23 +335,23 @@
297335

298336
- `collector`: Move validation to be part of the CRD for sidecar mode (#3319)
299337
- `target allocator`: Promote the operator.collector.targetallocatorcr feature flag to Beta (#2422)
300-
301-
As a result of this change, when the target allocator section is enabled in the Collector CR,
338+
339+
As a result of this change, when the target allocator section is enabled in the Collector CR,
302340
this now creates a TargetAllocator CR instead of generating the manifests directly. Behavior should otherwise be
303-
unchanged. You can go back to the previous behaviour by passing the
341+
unchanged. You can go back to the previous behaviour by passing the
304342
`--feature-gates=-operator.collector.targetallocatorcr` command-line option to the operator.
305-
343+
306344
- `collector`: Set the default spec.replicas to 1 in the OpenTelemetryCollector CRD. (#4042)
307-
345+
308346
This default no longer relies on the admission webhook.
309-
347+
310348

311349
### 🧰 Bug fixes 🧰
312350

313351
- `collector, target allocator`: Fix operator RBAC for managing targetallocator finalizers on OpenShift. (#4069)
314352
On OpenShift `OwnerReferencesPermissionEnforcement` is enabled by default, which requires the operator to have permissions to remove finalizers from resources it owns.
315353
https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#ownerreferencespermissionenforcement
316-
354+
317355
- `target allocator`: Add app.kubernetes.io/managed-by label to Target Allocator CRs created by the Collector CR (#4025)
318356
- `target allocator`: Fixes an issue where the same target from two different jobs was being allocated for only one job (#4044)
319357

@@ -366,21 +404,21 @@
366404

367405
- `webhook`: Allow to run the operator without the OpenTelemetry CRDs present (#3568)
368406
Skip registering the webhook and keep the operator working in case the OpenTelemetryCollector CRDs are not deployed.
369-
407+
370408

371409
### 🧰 Bug fixes 🧰
372410

373411
- `collector`: Fixes container port duplication for user-provided and operator inferred ports (#3950)
374412
This patch improves container port collisions when the user defines additional ports in the CR.
375-
413+
376414
When ports are specified in the CR:
377415
- If a port number from the CR matches a port inferred from the config, the inferred port is removed
378416
- If a port name from the CR matches an inferred port name, the inferred port is renamed to "port-{number}"
379-
417+
380418
- `collector`: Prevent the operator from overriding the env vars defined by the user in the OpenTelemetryCollector spec. (#3963)
381419
This change ensures that the operator does not override the environment variables defined by the user in the OpenTelemetryCollector spec.
382420
It combines user-defined environment variables with automatically inferred ones, giving precedence to user-defined ones.
383-
421+
384422
- `opamp`: Fix config loading priority (#3928)
385423
- `target allocator`: Fix config loading priority (#3928)
386424
- `collector`: Set the `statusReplicas` field for the `DaemonSet` (#3930)
@@ -397,14 +435,14 @@
397435
host: '0.0.0.0'
398436
port: 8888
399437
```
400-
438+
401439
The following settings exposes metrics without `_total` suffix:
402440
```yaml
403441
service:
404442
telemetry:
405443
address: 0.0.0.0:8888
406444
````
407-
445+
408446
- `targetallocator`: Do not override the collector namespace from the config file if the environment variable is not set. (#3976)
409447

410448
### Components
@@ -426,7 +464,7 @@
426464
- `collector`: Re-try failed upgrades (#3515)
427465
The upgrade process runs now in the reconcile loop.
428466
In case of an error, the operator re-tries the upgrade with exponential backoff.
429-
467+
430468

431469
### Components
432470

@@ -452,7 +490,7 @@
452490
- `collector`: Fix Jaeger query extension default endpoint (#3906)
453491
The operator 0.122.0 introduced a fix to add a default endpoint. However, for Jaeger query extension the endpoint
454492
was put in the wrong place, causing collector to fail to start due to an incorrect config.
455-
493+
456494

457495
### Components
458496

@@ -477,15 +515,15 @@
477515
- the well-known label `app.kubernetes.io/part-of` for `service.namespace` has been removed
478516
- the well-known label `app.kubernetes.io/instance` has been added (translates to `service.name`)
479517
- `service.namespace` now also uses the Kubernetes namespace name (if `resource.opentelemetry.io/service.namespace` is not set)
480-
518+
481519
**You can do the following to avoid breaking changes**:
482-
- `service.version`: Set the version explicitly using `resource.opentelemetry.io/service.version`
520+
- `service.version`: Set the version explicitly using `resource.opentelemetry.io/service.version`
483521
(not recommended, the version has only been made more specific)
484-
- `service.namespace`: Set the namespace explicitly using `resource.opentelemetry.io/service.namespace` -
522+
- `service.namespace`: Set the namespace explicitly using `resource.opentelemetry.io/service.namespace` -
485523
or just rely on the Kubernetes namespace name, which is now the default
486524
- `service.name`: If you have enabled `useLabelsForResourceAttributes`:
487-
Set the name explicitly using `resource.opentelemetry.io/service.name` if `app.kubernetes.io/instance` is used for another purpose
488-
525+
Set the name explicitly using `resource.opentelemetry.io/service.name` if `app.kubernetes.io/instance` is used for another purpose
526+
489527

490528
### 💡 Enhancements 💡
491529

@@ -525,12 +563,12 @@
525563
- `auto-instrumentation`: Enhanced Java auto-instrumentation with improved volume mount paths and configuration options (#3843)
526564
- Added support for unique volume mount paths for Java instrumentation
527565
- Improved configuration options for Java auto-instrumentation
528-
- Enhanced stability and reliability of Java instrumentation process
566+
- Enhanced stability and reliability of Java instrumentation process
529567
- `target allocator`: Add support for setting the allowNamespaces and denyNamespaces in the target allocator.
530568
(#3086)
531569
allowNamespaces can be set to an empty list to watch all namespaces (default) or to list of namespaces to watch.
532570
denyNamespaces can be set to an empty list to deny watching any namespaces (default) or to a list of namespaces to deny watching.
533-
571+
534572
- `target allocator`: Do not assign targets to a collector pod that is not Ready for longer than a non-zero grace period (#3781)
535573

536574
### 🧰 Bug fixes 🧰
@@ -604,7 +642,7 @@ No changes.
604642

605643
- `collector`: Fix config handling with null values. (#3452)
606644
Fix the defaulting webhook error `src and dst must not be nil` caused by defaulting a known component with a null value:
607-
e.g.
645+
e.g.
608646
```yaml
609647
receivers:
610648
zipkin:
@@ -651,19 +689,19 @@ No changes.
651689
### 💡 Enhancements 💡
652690

653691
- `target allocator`: Process discovered targets asyncchronously (#1842)
654-
This change enables the target allocator to process discovered targets asynchronously.
655-
This is a significant performance improvement for the target allocator, as it allows it to process targets in parallel, rather than sequentially.
692+
This change enables the target allocator to process discovered targets asynchronously.
693+
This is a significant performance improvement for the target allocator, as it allows it to process targets in parallel, rather than sequentially.
656694
This change also introduces new metrics to track the performance of the target allocator.
657695
- opentelemetry_allocator_process_targets_duration_seconds: The duration of the process targets operation.
658696
- opentelemetry_allocator_process_target_groups_duration_seconds: The duration of the process target groups operation.
659-
697+
660698

661699
### 🧰 Bug fixes 🧰
662700

663701
- `operator`: Fix the admission webhook to when metrics service address host uses env var expansion (#3513)
664702
This should allow the metrics service address to have the host portion expanded from an environment variable,
665703
like `$(env:POD_IP)` instead of using `0.0.0.0`, which is the [recommended by the Collector](https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/security-best-practices.md#safeguards-against-denial-of-service-attacks).
666-
704+
667705
- `auto-instrumentation`: Apache instrumentation sidecar fails to start if target container define lifecycle (#3547)
668706
- `collector`: Fix deletion of optional resources for OpenTelemetryCollector CRs (#3454)
669707

RELEASE.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,10 @@ The operator should be released within a week after the [OpenTelemetry collector
4444

4545
| Version | Release manager |
4646
|----------|-----------------|
47-
| v0.138.0 | @jaronoff97 |
48-
| v0.149.0 | @yuriolisa |
47+
| v0.139.0 | @yuriolisa |
4948
| v0.140.0 | @TylerHelmuth |
5049
| v0.141.0 | @frzifus |
5150
| v0.142.0 | @pavolloffay |
5251
| v0.143.0 | @swiatekm |
53-
| v0.144.0 | @iblancasa |
52+
| v0.144.0 | @iblancasa |
53+
| v0.145.0 | @jaronoff97 |

0 commit comments

Comments
 (0)