diff --git a/.chloggen/2833-fix-detector-resourcedetectionprocessor.yaml b/.chloggen/2833-fix-detector-resourcedetectionprocessor.yaml deleted file mode 100755 index effa51536f..0000000000 --- a/.chloggen/2833-fix-detector-resourcedetectionprocessor.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: bug_fix - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: "Use the k8snode detector instead of kubernetes for the automatic RBAC creation for the resourcedetector" - -# One or more tracking issues related to the change -issues: [2833] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/.chloggen/2862-fix-clusterrolebinding-names.yaml b/.chloggen/2862-fix-clusterrolebinding-names.yaml deleted file mode 100755 index 44307f7670..0000000000 --- a/.chloggen/2862-fix-clusterrolebinding-names.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: bug_fix - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: "When two Collectors are created with the same name but different namespaces, the ClusterRoleBinding created by the first will be overriden by the second one." - -# One or more tracking issues related to the change -issues: [2862] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/.chloggen/add-collector-pool-healthy.yaml b/.chloggen/add-collector-pool-healthy.yaml deleted file mode 100755 index 1bc8ca48ed..0000000000 --- a/.chloggen/add-collector-pool-healthy.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: enhancement - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: opamp - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Add healthy field at collector pool level in opamp bridge heartbeat - -# One or more tracking issues related to the change -issues: [2936] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/.chloggen/bug_2877.yaml b/.chloggen/bug_2877.yaml deleted file mode 100755 index 0ca822551d..0000000000 --- a/.chloggen/bug_2877.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: bug_fix - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Create a Service Monitor for the monitoring service and another one for the collector service when the Prometheus exporter is used. - -# One or more tracking issues related to the change -issues: [2877] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: | - Create a Service Monitor for the collector Service when Prometheus exporter is used. A different Service Monitor is created for the monitoring service. - This helps excluding the headless service (duplicating the metrics collection) and splits responsibilities between the two Service Monitors. - Now, the operator.opentelemetry.io/collector-service-type label is used to differentiate the services. - operator.opentelemetry.io/collector-monitoring-service and operator.opentelemetry.io/collector-headless-service are deprecated now. \ No newline at end of file diff --git a/.chloggen/cleanup-roles.yaml b/.chloggen/cleanup-roles.yaml deleted file mode 100755 index 51be6f2675..0000000000 --- a/.chloggen/cleanup-roles.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: bug_fix - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Cleanup ClusterRoles and ClusterRoleBindings created by the operator - -# One or more tracking issues related to the change -issues: [2938] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: The operator uses finalizer on the collector to run the cleanup diff --git a/.chloggen/collector-readiness-support.yaml b/.chloggen/collector-readiness-support.yaml deleted file mode 100644 index e27a8d00d6..0000000000 --- a/.chloggen/collector-readiness-support.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: enhancement - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Add support for readinessProbe on OpenTelemetryCollector CRD. - -# One or more tracking issues related to the change -issues: [2943] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: | - Add support for readinessProbe on `OpenTelemetryCollector` and its default similar to the already supported livenessProbe. diff --git a/.chloggen/customized-log-encoder.yaml b/.chloggen/customized-log-encoder.yaml deleted file mode 100755 index b51a8bc593..0000000000 --- a/.chloggen/customized-log-encoder.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: 'enhancement' - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: operator - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Enabling new Logs Enconder Configuration parameters. - -# One or more tracking issues related to the change -issues: [268] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/.chloggen/fix-collector-node-selector.yaml b/.chloggen/fix-collector-node-selector.yaml deleted file mode 100644 index 3674ea046c..0000000000 --- a/.chloggen/fix-collector-node-selector.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: bug_fix - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Fix to reflect changes of OpenTelemetryCollector.spec.nodeSelector in the collector Pods - -# One or more tracking issues related to the change -issues: [2940] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: | - When updating `OpenTelemetryCollector.spec.nodeSelector` it was not removing previous selector from the final collector pod (Deployment/Daemonset/Statefulset). diff --git a/.chloggen/fix-labels-annotations-filter.yaml b/.chloggen/fix-labels-annotations-filter.yaml deleted file mode 100755 index bde0808c84..0000000000 --- a/.chloggen/fix-labels-annotations-filter.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: 'bug_fix' - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Fix of Labels and Annotations filter - -# One or more tracking issues related to the change -issues: [2770] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/.chloggen/fix-ta-check-policy.yaml b/.chloggen/fix-ta-check-policy.yaml deleted file mode 100755 index bb35c6d77a..0000000000 --- a/.chloggen/fix-ta-check-policy.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: 'bug_fix' - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: target-allocator - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Fixed non-expected warnings on TA webhook. - -# One or more tracking issues related to the change -issues: [2685] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/.chloggen/fix_load-initial-servicemonitors.yaml b/.chloggen/fix_load-initial-servicemonitors.yaml deleted file mode 100755 index 7466a937e2..0000000000 --- a/.chloggen/fix_load-initial-servicemonitors.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: bug_fix - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: target allocator - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Fix target allocator readiness check - -# One or more tracking issues related to the change -issues: [2903] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/.chloggen/replace-create-rbac-permissions-by-checking-the-sa-permissions.yaml b/.chloggen/replace-create-rbac-permissions-by-checking-the-sa-permissions.yaml deleted file mode 100755 index ab5895bb16..0000000000 --- a/.chloggen/replace-create-rbac-permissions-by-checking-the-sa-permissions.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: enhancement - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: operator - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Automatically enable RBAC creation if operator SA can create clusterroles and bindings. --create-rbac-permissions flag is noop and deprecated now. - -# One or more tracking issues related to the change -issues: [2588] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: \ No newline at end of file diff --git a/.chloggen/ta-add-https.yaml b/.chloggen/ta-add-https.yaml deleted file mode 100755 index 1c231c3c18..0000000000 --- a/.chloggen/ta-add-https.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: enhancement - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: target allocator - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Added option for creating an mTLS-configured HTTPS server to fetch scrape config with real secret values. - -# One or more tracking issues related to the change -issues: [1669] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: | - The change introduces an option to create an additional HTTPS server with mTLS configuration. - This server is specifically utilized for obtaining the scrape configuration with actual secret values. diff --git a/.chloggen/verify-prom-crd-resources.yaml b/.chloggen/verify-prom-crd-resources.yaml deleted file mode 100755 index 1adfe693f9..0000000000 --- a/.chloggen/verify-prom-crd-resources.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' -change_type: bug_fix - -# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action) -component: collector - -# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Ensure all Prometheus CRDs are installed - -# One or more tracking issues related to the change -issues: [2964] - -# (Optional) One or more lines of additional information to render under the primary note. -# These lines will be padded with 2 spaces and then inserted directly into the document. -# Use pipe (|) for multiline entries. -subtext: diff --git a/CHANGELOG.md b/CHANGELOG.md index a874f6d2ec..66a9ffc1b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,52 @@ +## 0.100.0 + +### 💡 Enhancements 💡 + +- `opamp`: Add healthy field at collector pool level in opamp bridge heartbeat (#2936) +- `collector`: Add support for readinessProbe on OpenTelemetryCollector CRD. (#2943) + Add support for readinessProbe on `OpenTelemetryCollector` and its default similar to the already supported livenessProbe. + +- `operator`: Enabling new Logs Enconder Configuration parameters. (#268) +- `operator`: Automatically enable RBAC creation if operator SA can create clusterroles and bindings. --create-rbac-permissions flag is noop and deprecated now. (#2588) +- `target allocator`: Added option for creating an mTLS-configured HTTPS server to fetch scrape config with real secret values. (#1669) + The change introduces an option to create an additional HTTPS server with mTLS configuration. + This server is specifically utilized for obtaining the scrape configuration with actual secret values. + + +### 🧰 Bug fixes 🧰 + +- `collector`: Create a Service Monitor for the monitoring service and another one for the collector service when the Prometheus exporter is used. (#2877) + Create a Service Monitor for the collector Service when Prometheus exporter is used. A different Service Monitor is created for the monitoring service. + This helps excluding the headless service (duplicating the metrics collection) and splits responsibilities between the two Service Monitors. + Now, the operator.opentelemetry.io/collector-service-type label is used to differentiate the services. + operator.opentelemetry.io/collector-monitoring-service and operator.opentelemetry.io/collector-headless-service are deprecated now. +- `target-allocator`: Fixed non-expected warnings on TA webhook. (#2685) +- `collector`: Ensure all Prometheus CRDs are installed (#2964) +- `collector`: Cleanup ClusterRoles and ClusterRoleBindings created by the operator (#2938) + The operator uses finalizer on the collector to run the cleanup +- `collector`: Use the k8snode detector instead of kubernetes for the automatic RBAC creation for the resourcedetector (#2833) +- `collector`: When two Collectors are created with the same name but different namespaces, the ClusterRoleBinding created by the first will be overriden by the second one. (#2862) +- `collector`: Fix to reflect changes of OpenTelemetryCollector.spec.nodeSelector in the collector Pods (#2940) + When updating `OpenTelemetryCollector.spec.nodeSelector` it was not removing previous selector from the final collector pod (Deployment/Daemonset/Statefulset). + +- `collector`: Fix of Labels and Annotations filter (#2770) +- `target allocator`: Fix target allocator readiness check (#2903) + +### Components + +* [OpenTelemetry Collector - v0.100.0](https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.100.0) +* [OpenTelemetry Contrib - v0.100.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.100.0) +* [Java auto-instrumentation - v1.32.1](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/tag/v1.32.1) +* [.NET auto-instrumentation - v1.2.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/tag/{AUTO_INSTRUMENTATION_DOTNET_VERSION}) +* [Node.JS - v0.51.0](https://github.com/open-telemetry/opentelemetry-js/releases/tag/experimental%2Fv0.51.0) +* [Python - v0.44b0](https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/v0.44b0) +* [Go - v0.12.0-alpha](https://github.com/open-telemetry/opentelemetry-go-instrumentation/releases/tag/v0.12.0-alpha) +* [ApacheHTTPD - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4) +* [Nginx - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4) + ## 0.99.0 ### 🛑 Breaking changes 🛑 diff --git a/README.md b/README.md index 8b175b9c08..48e4cc7ffb 100644 --- a/README.md +++ b/README.md @@ -730,6 +730,7 @@ The OpenTelemetry Operator _might_ work on versions outside of the given range, | OpenTelemetry Operator | Kubernetes | Cert-Manager | |------------------------| -------------- | ------------ | +| v0.100.0 | v1.23 to v1.29 | v1 | | v0.99.0 | v1.23 to v1.29 | v1 | | v0.98.0 | v1.23 to v1.29 | v1 | | v0.97.0 | v1.23 to v1.29 | v1 | @@ -752,7 +753,6 @@ The OpenTelemetry Operator _might_ work on versions outside of the given range, | v0.80.0 | v1.19 to v1.27 | v1 | | v0.79.0 | v1.19 to v1.27 | v1 | | v0.78.0 | v1.19 to v1.27 | v1 | -| v0.77.0 | v1.19 to v1.26 | v1 | ## Contributing and Developing diff --git a/RELEASE.md b/RELEASE.md index 94cfcbd777..99ea090f88 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -2,7 +2,7 @@ Steps to release a new version of the OpenTelemetry Operator: -1. Create a `Prepare relese x.y.z` pull request with the following content: +1. Create a `Prepare release x.y.z` pull request with the following content: 1. Set the version you're releasing as an environment variable for convenience: `export VERSION=0.n+1.0` 1. Update `versions.txt` - Operator, target allocator and opamp-bridge should be `$VERSION`. @@ -44,9 +44,9 @@ The operator should be released within a week after the [OpenTelemetry collector | Version | Release manager | |----------|-----------------| -| v0.100.0 | @TylerHelmuth | | v0.101.0 | @swiatekm-sumo | | v0.102.0 | @frzifus | | v0.103.0 | @jaronoff97 | | v0.104.0 | @pavolloffay | | v0.105.0 | @yuriolisa | +| v0.106.0 | @TylerHelmuth | \ No newline at end of file diff --git a/bundle/manifests/opentelemetry-operator.clusterserviceversion.yaml b/bundle/manifests/opentelemetry-operator.clusterserviceversion.yaml index c14ddf4e76..fcfd593ee7 100644 --- a/bundle/manifests/opentelemetry-operator.clusterserviceversion.yaml +++ b/bundle/manifests/opentelemetry-operator.clusterserviceversion.yaml @@ -99,13 +99,13 @@ metadata: categories: Logging & Tracing,Monitoring certified: "false" containerImage: ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator - createdAt: "2024-05-03T15:21:44Z" + createdAt: "2024-05-15T17:31:49Z" description: Provides the OpenTelemetry components, including the Collector operators.operatorframework.io/builder: operator-sdk-v1.29.0 operators.operatorframework.io/project_layout: go.kubebuilder.io/v3 repository: github.com/open-telemetry/opentelemetry-operator support: OpenTelemetry Community - name: opentelemetry-operator.v0.99.0 + name: opentelemetry-operator.v0.100.0 namespace: placeholder spec: apiservicedefinitions: {} @@ -504,7 +504,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.serviceAccountName - image: ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator:0.99.0 + image: ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator:0.100.0 livenessProbe: httpGet: path: /healthz @@ -612,7 +612,7 @@ spec: minKubeVersion: 1.23.0 provider: name: OpenTelemetry Community - version: 0.99.0 + version: 0.100.0 webhookdefinitions: - admissionReviewVersions: - v1alpha1 diff --git a/versions.txt b/versions.txt index 0d32fe228e..76dd1c2098 100644 --- a/versions.txt +++ b/versions.txt @@ -2,16 +2,16 @@ # by default with the OpenTelemetry Operator. This would usually be the latest # stable OpenTelemetry version. When you update this file, make sure to update the # the docs as well. -opentelemetry-collector=0.99.0 +opentelemetry-collector=0.100.0 # Represents the current release of the OpenTelemetry Operator. -operator=0.99.0 +operator=0.100.0 # Represents the current release of the Target Allocator. -targetallocator=0.99.0 +targetallocator=0.100.0 # Represents the current release of the Operator OpAMP Bridge. -operator-opamp-bridge=0.99.0 +operator-opamp-bridge=0.100.0 # Represents the current release of Java instrumentation. # Should match autoinstrumentation/java/version.txt @@ -19,7 +19,7 @@ autoinstrumentation-java=1.32.1 # Represents the current release of NodeJS instrumentation. # Should match value in autoinstrumentation/nodejs/package.json -autoinstrumentation-nodejs=0.49.1 +autoinstrumentation-nodejs=0.51.0 # Represents the current release of Python instrumentation. # Should match value in autoinstrumentation/python/requirements.txt