Release date: April 13, 2026
On this page, you’ll find an overview of what’s new and improved in Dynatrace Operator version 1.9.0.
applicationMonitoring or cloudNativeFullstack, metadataEnrichment is enabled automatically and does not need to be added explicitly. This ensures Kubernetes metadata is automatically added to all signals, giving full observability context without additional configuration.Legacy dt.kubernetes.* metadata enrichment attributes have been fully replaced by k8s.* attributes. For backward compatibility, the legacy attributes are still emitted by default. If you've migrated your dashboards, alerts, and queries to use k8s.*, you can disable the legacy attributes by setting feature.dynatrace.com/enable-attributes-dt.kubernetes="false" on the DynaKube. For the full list of feature flags, see DynaKube feature flags for Dynatrace Operator.
Affected attributes (with replacement from Semantic dictionary):
dt.kubernetes.cluster.id (replaced by k8s.cluster.uid)dt.kubernetes.workload.kind (replaced by k8s.workload.kind)dt.kubernetes.workload.name (replaced by k8s.workload.name)IfNotPresent for tagged images, Always for :latest or untagged images) instead of being explicitly set to Always. You can configure the image pull policy in the DynaKube for operator managed components or the Helm chart for the operator itself. For configuration options, see DynaKube parameters for Dynatrace Operator.securityContext instead of using annotations. No action is required — the Dynatrace Operator automatically applies the correct method based on your cluster version. If you're on Kubernetes 1.30 or earlier, the existing Helm chart-based AppArmor configuration continues to work but is deprecated and will be removed after Kubernetes 1.30 reaches end of life. For details, see Enable AppArmor for enhanced security.rollingUpdate field. For details, see DynaKube parameters for Dynatrace Operator.kubernetes-version.txt file with the Kubernetes server version of the cluster.replicas field, unless explicitly specified in the DynaKube.customPullSecret is now applied to all components deployed in the Dynatrace namespace.dynatrace.com/inject, otlp-exporter-configuration.dynatrace.com/inject, and the DynaKube feature flag feature.dynatrace.com/automatic-injection is now aligned with the OneAgent and metadata enrichment injection mechanisms. For details about the available settings for these flags, see Pod and container annotations.namespaceSelector for OneAgent injection, metadata enrichment, or OTLP-exporter configuration overlaps with another DynaKube. Ensure that each namespace is assigned to only one DynaKube for injection.<dynakube>-activegate-tls name is now used.automatic-tls-certificate feature flag. Previously, stale secrets were still being mounted into application pods, causing connectivity failures due to an expired ActiveGate TLS certificate.app.kubernetes.io/version label on deployed Extensions Execution Controller (EEC) pods now reflects the version specified in the DynaKube. Previously, the label incorrectly contained the operator version or was empty.securityContext-based AppArmor configuration is not yet supported for EdgeConnect. To set an AppArmor profile on Kubernetes 1.30 or earlier, use the EdgeConnect spec.annotations field. For details, see Enable AppArmor for enhanced security.Error phase during deployment before reconciling successfully.The Helm repository located in dynatrace/helm-charts is deprecated and will stop receiving updates in a future release! If you are still using it,
please update the URL to dynatrace/dynatrace-operator or switch to the OCI registry-based approach. Update the Helm repository URL with the following commands:
helm repo remove dynatracehelm repo add dynatrace https://raw.githubusercontent.com/Dynatrace/dynatrace-operator/main/config/helm/repos/stable
operator.apparmor, webhook.apparmor, and csidriver.apparmor Helm values are deprecated. On Kubernetes version 1.31+, set AppArmor using appArmorProfile in the podSecurityContext instead. These values will continue to work until Kubernetes version 1.30 reaches end of life (August 2026). See Enable AppArmor for enhanced security for details.feature.dynatrace.com/oneagent-max-unavailable flag is deprecated. Use the rollingUpdate field in the DynaKube instead. For details, see DynaKube parameters for Dynatrace Operator.In Dynatrace Operator version 1.9, the DynaKube API version v1beta3 is removed from the CRD. Applying DynaKube resources using this version will fail. Additionally, v1beta4 is now deprecated. Update your DynaKube manifests to v1beta6 before upgrading the Dynatrace Operator. For more information, see Migration guide for DynaKube API versions.
Pods injected via applicationMonitoring or cloudNativeFullStack now automatically receive metadata enrichment. If metadataEnrichment in the DynaKube was enabled only to support OneAgent injection, it can be removed.
The feature flag feature.dynatrace.com/init-container-seccomp-profile is now enabled by default. If you relied on the unspecified seccomp profile on injected init containers, set the flag to false on your DynaKube.