Release date: October 1, 2026
On this page, you'll find an overview of what's new and improved in Dynatrace Operator version 1.11.0.
Dynatrace Operator now supports image volume-based code modules injection, a more secure, storage-efficient, and reliable way to instrument application pods that replaces the CSI driver as the recommended approach. Using the native Kubernetes image volume feature, each worker node pulls the code modules image once and shares that single copy with every instrumented pod, requiring neither the dedicated DaemonSet of the CSI driver and its associated elevated privileges, nor a separate copy of the code modules image for every pod.
Switch your application pods to image volume-based injection. See migrate to image volumes for prerequisites and migration steps.
Dynatrace Operator now supports automatic resolution and updates of container images for Dynatrace Kubernetes Node Configuration Collector, Dynatrace OTel Collector, and EdgeConnect, bringing the same seamless update experience to the full set of Dynatrace Operator managed components. This feature requires a newer Dynatrace SaaS version, currently planned for 1.352.
Supported public registries offer multi-arch images adhering to best practices for immutability and signing to strengthen supply chain security. For configuration details and prerequisites, see Use a public registry.
In addition to namespace annotations and labels, the ingest enrichment configuration now supports workload and pod annotations and labels as sources for primary tags and Kubernetes tags. For more information including prerequisites, see Enrich Kubernetes telemetry with primary Grail fields and tags.
volumes and volumeMounts for the ActiveGate defined in the DynaKube are now user-configurable. For details, see Configure ActiveGate persistent volume.runAsUser and runAsGroup of the injected dynatrace-operator init container are now configurable. For details, see Configure init-container user and group identity.spec.resourceAttributes on the DynaKube to all metrics, traces, and logs..webhook.certs in Dynatrace Operator Helm chart.spec.kubernetesMonitoring section lets you size the two ActiveGate StatefulSets independently within a single DynaKube. Existing two-DynaKube setups keep working, and our migration guide walks you through switching to simplify long-term maintenance.metadata.dynatrace.com annotation values could cause the Kubernetes API to reject pods. Dynatrace Operator now enforces a default limit of 24Ki characters on these values unless configured otherwise.DynaKube.status.oneagent.instances, which would trigger a retry loop when sending the mark-for-termination event.Tokens condition would list a missing scope multiple times instead of once.troubleshoot command returned a 401 error for DynaKubes using a customPullSecret. The command now checks all relevant pull secrets in the namespace instead of only one.Since Dynatrace Operator 1.9.0, a RuntimeDefault seccomp profile is applied to the Dynatrace init container by default. On OpenShift, this can interfere with SecurityContextConstraints (SCCs) — such as anyuid, restricted, or nonroot — that prevent seccomp profile usage, causing the system to fall back to a different SCC (for example restricted-v2). This may render application pods unschedulable or cause workload degradation.
Removed DynaKube API version v1beta4: The v1beta4 version has been removed from the DynaKube CRD. Applying DynaKube resources that still use v1beta4 will fail. Migrate your DynaKube resources to v1beta6 before upgrading to this version. For details, see DynaKube API version migration.
To prevent potential disruptions, we strongly advise keeping your DynaKube API version up to date. Once a version is deprecated and removed, updates may become significantly more complex.
The Helm repository located in dynatrace/helm-charts is archived and no longer receives updates. If you still install or upgrade Dynatrace Operator from it, switch to the OCI registry:
helm upgrade dynatrace-operator oci://public.ecr.aws/dynatrace/dynatrace-operator \--version <version> \--namespace dynatrace \--reset-then-reuse-values \--install
If you can't use OCI, point your Helm repository to dynatrace/dynatrace-operator instead:
helm repo remove dynatracehelm repo add dynatrace https://raw.githubusercontent.com/Dynatrace/dynatrace-operator/main/config/helm/repos/stable
For details, see Migrate from the legacy Helm repository.
When upgrading, review the release notes and breaking changes section for each minor version between your current version and this version (1.11), not just this version itself. Skipping this step may cause you to miss a breaking change introduced in an intermediate release.
Direct upgrades from versions older than 1.6.0 are not supported. See Upgrade from older versions for further guidance.
Important: In Dynatrace Operator version 1.11, the DynaKube API version v1beta4 is removed from the CRD. If any DynaKube resource in your cluster still uses v1beta4, applying it will fail after the upgrade, and depending on your current version, upgrading directly to 1.11 may not be possible until the migration is done. Before upgrading, update all DynaKube manifests to v1beta6. For details, see Migration guide for DynaKube API versions.