DynaKube parameters for Dynatrace Operator

  • 57-min read

This page will help you to understand and configure the DynaKube Kubernetes Custom Resource, enabling you to optimize your Dynatrace Operator setup according to your specific requirements.

The table below specifies the required Dynatrace Operator versions corresponding to each DynaKube API version.

DynaKube API versionMinimum Dynatrace Operator versionMaximum Dynatrace Operator version 1
v1beta51.6
v1beta41.5
v1beta31.41.7
v1beta21.21.6
v1beta1All versions1.6
1

The corresponding DynaKube API versions will be removed from the Dynatrace Operator in the subsequent minor or major release.

See the DynaKube YAML samples on GitHub.

Dynatrace Operator version 1.6.0+

.spec

  • apiUrl parameter is required and immutable. Once set, it cannot be modified in an existing DynaKube.
  • All other parameters are optional.
ParameterDescriptionDefault valueData type
apiUrlDynatrace apiUrl, including the /api path at the end.
- For SaaS, set YOUR_ENVIRONMENT_ID to your environment ID.
- For Managed, change the apiUrl address.
For instructions on how to determine the environment ID and how to configure the apiUrl address, see Environment ID
-string
customPullSecretDefines a custom pull secret in case you use a private registry when pulling images from the Dynatrace environment.
To define a custom pull secret and learn about the expected behavior, see Configure customPullSecret.
-string
dynatraceApiRequestThresholdMinimum minutes between Dynatrace API requests.15integer
enableIstioWhen enabled, and if Istio is installed on the Kubernetes environment, Dynatrace Operator will create the corresponding VirtualService and ServiceEntry objects to allow access to the Dynatrace Cluster from the OneAgent or ActiveGate.
Disabled by default.
-boolean
networkZoneSets a network zone for the OneAgent and ActiveGate Pods.-string
proxySet custom proxy settings either directly or from a secret with the field proxy.
Applies to Dynatrace Operator, ActiveGate, and OneAgents.
-DynaKubeProxy
skipCertCheckDisable certificate check for the connection between Dynatrace Operator and the Dynatrace Cluster.
Set to true if you want to skip certification validation checks.
-boolean
tokensName of the secret holding the tokens used for connecting to Dynatrace.-string
trustedCAsAdds custom RootCAs from a configmap.
The key to the data must be certs.
This applies to Dynatrace Operator, OneAgent, and ActiveGate.
-string

.spec.oneAgent

ParameterDescriptionDefault valueData type
hostGroupSpecify the name of the group to which you want to assign the host. This method is preferred over the now obsolete --set-host-group argument. If both settings are used, this field takes precedence over the --set-host-group argument.Not applicablestring

.spec.oneAgent.cloudNativeFullStack

  • All parameters are optional.

recommended

ParameterDescriptionDefault valueData type
annotationsAdd custom OneAgent annotations.Not applicablemap[string]string
argsSet additional arguments to the OneAgent installer.
For available options, see Linux custom installation.
For the list of limitations, see Limitations.
Not applicable[]string
autoUpdate (deprecated)Deprecated field to be removed in a future release. Pin the OneAgent version on your tenant to configure auto-update.
Auto-update is disabled when the version or image fields are set.
trueboolean
codeModulesImageThe OneAgent image that is used to inject into podsNot applicablestring
dnsPolicySet the DNS policy for OneAgent pods.
For details, see Pods DNS Policy.
ClusterFirstWithHostNetstring
envSet additional environment variables for the OneAgent pods.Not applicable[]EnvVar
imageUse a custom OneAgent Docker image.The image from the Dynatrace cluster.string
initResourcesDefine resources requests and limits for the initContainer. For details, see Managing resources for containers.Not applicableResourceRequirements
labelsYour defined labels for OneAgent pods in order to structure workloads as desired.Not applicablemap[string]string
namespaceSelectorThe namespaces where you want Dynatrace Operator to inject.
For more information, see Configure monitoring for namespaces and Pods.
Not applicableLabelSelector
nodeSelectorSpecify the node selector that controls on which nodes OneAgent will be deployed.Not applicablemap[string]string
oneAgentResourcesResource settings for OneAgent container. Consumption of the OneAgent heavily depends on the workload to monitor. You can use the default settings in the CR.
resource.requests shows the values needed to run; resource.limits shows the maximum limits for the Pod.
Not applicableResourceRequirements
priorityClassNameAssign a priority class to the OneAgent pods. By default, no class is set.
For details, see Pod Priority and Preemption.
Not applicablestring
secCompProfileThe SecComp Profile that will be configured in order to run in secure computing mode.-string
storageHostPathWritable directory on the host filesystem where OneAgent configurations will be stored.-string
tolerationsTolerations to include with the OneAgent DaemonSet.
For details, see Taints and Tolerations.
Not applicable[]Toleration
versionThe OneAgent version to be used for host monitoring OneAgents running in the dedicated pod. This setting doesn't affect the OneAgent version used for application monitoring.The latest version is used by default.string

.spec.oneAgent.classicFullStack

  • All parameters are optional.
ParameterDescriptionDefault valueData type
annotationsAdd custom OneAgent annotations.Not applicablemap[string]string
argsSet additional arguments to the OneAgent installer.
For available options, see Linux custom installation.
For the list of limitations, see Limitations.
Not applicable[]string
autoUpdate (deprecated)Deprecated field to be removed in a future release. Pin the OneAgent version on your tenant to configure auto-update.
Auto-update is disabled when the version or image fields are set.
trueboolean
dnsPolicySet the DNS Policy for OneAgent pods.
For details, see Pods DNS Policy.
ClusterFirstWithHostNetstring
envSet additional environment variables for the OneAgent pods.Not applicable[]EnvVar
imageUse a custom OneAgent Docker image. Defaults to the image from the Dynatrace cluster.Name of the image.string
labelsYour defined labels for OneAgent pods in order to structure workloads as desired.Not applicablemap[string]string
nodeSelectorSpecify the node selector that controls on which nodes OneAgent will be deployed.Not applicablemap[string]string
oneAgentResourcesResource settings for OneAgent container. Consumption of the OneAgent heavily depends on the workload to monitor. You can use the default settings in the CR.
resource.requests shows the values needed to run; resource.limits shows the maximum limits for the pod.
Not applicableResourceRequirements
priorityClassNameAssign a priority class to the OneAgent pods. By default, no class is set.
For details, see Pod Priority and Preemption.
Not applicablestring
secCompProfileThe SecComp Profile that will be configured in order to run in secure computing mode.-string
storageHostPathWriteable directory on the host filesystem where OneAgent configurations will be stored.-string
tolerationsTolerations to include with the OneAgent DaemonSet.
For details, see Taints and Tolerations.
Not applicable[]Toleration
versionThe OneAgent version to be used.The latest version is used by default.string

.spec.oneAgent.applicationMonitoring

  • All parameters are optional.
ParameterDescriptionDefault valueData type
codeModulesImageThe OneAgent image that is used to inject into podsNot applicablestring
initResourcesDefine resources requests and limits for the initContainer. For details, see Managing resources for containers.Not applicableResourceRequirements
namespaceSelectorThe namespaces where you want Dynatrace Operator to inject.
For more information, see Configure monitoring for namespaces and Pods.
-LabelSelector
versionThe OneAgent version to be used.The latest version is used by default.string

.spec.oneAgent.hostMonitoring

  • All parameters are optional.
ParameterDescriptionDefault valueData type
annotationsAdd custom OneAgent annotations.Not applicablemap[string]string
argsSet additional arguments to the OneAgent installer.
For available options, see Linux custom installation.
For the list of limitations, see Limitations.
Not applicable[]string
autoUpdate (deprecated)Deprecated field to be removed in a future release. Pin the OneAgent version on your tenant to configure auto-update.
Auto-update is disabled when the version or image fields are set.
trueboolean
dnsPolicySet the DNS Policy for OneAgent pods.
For details, see Pods DNS Policy.
ClusterFirstWithHostNetstring
envSet additional environment variables for the OneAgent pods.Not applicable[]EnvVar
imageUse a custom OneAgent Docker image.The image from the Dynatrace cluster.string
labelsYour defined labels for OneAgent pods in order to structure workloads as desired.Not applicablemap[string]string
nodeSelectorSpecify the node selector that controls on which nodes OneAgent will be deployed.Not applicablemap[string]string
oneAgentResourcesResource settings for OneAgent container. Consumption of the OneAgent heavily depends on the workload to monitor. You can use the default settings in the CR.
resource.requests shows the values needed to run; resource.limits shows the maximum limits for the pod.
Not applicableResourceRequirements
priorityClassNameAssign a priority class to the OneAgent pods. By default, no class is set.
For details, see Pod Priority and Preemption.
Not applicablestring
secCompProfileThe SecComp Profile that will be configured in order to run in secure computing mode.-string
storageHostPathWriteable directory on the host filesystem where OneAgent configurations will be stored.-string
tolerationsTolerations to include with the OneAgent DaemonSet.
For details, see Taints and Tolerations.
Not applicable[]Toleration
versionThe OneAgent version to be used.The latest version is used by default.string

.spec.activeGate

  • capabilities parameter is required.
  • resources and group parameters are recommended.
  • All other parameters are optional.
ParameterDescriptionDefault valueData type
annotationsAdd custom ActiveGate annotations.Not applicablemap[string]string
capabilitiesDefines the ActiveGate pod capabilities: what functionality should be enabled.
Possible values:
- routing enables OneAgent routing.
- kubernetes-monitoring enables Kubernetes API monitoring.
- metrics-ingest1 opens the metrics ingest endpoint on the DynaKube ActiveGate and redirects all pods to it.
- dynatrace-api1 enables calling the Dynatrace API via ActiveGate.
- debugging enables the Live Debugging module in ActiveGate.
Not applicablestring
customPropertiesAdd a custom properties file by providing it as a value or by referencing it from a secret.
When referencing a custom properties file from a secret, make sure that the key is named customProperties. See How to add a custom properties file for details.
Not applicablestring
dnsPolicySet the DNS policy for ActiveGate pods.ClusterFirstWithHostNetstring
envSet additional environment variables for the ActiveGate pods.Not applicable[]EnvVar
groupSet activation group for ActiveGate. See Customize ActiveGate properties for details.Not applicablestring
imageUse a custom ActiveGate image. Defaults to the latest ActiveGate image from the Dynatrace cluster.Not applicablestring
labelsYour defined labels for ActiveGate pods in order to structure workloads as desired.Not applicablemap[string]string
nodeSelectorSpecify the node selector that controls on which nodes ActiveGate will be deployed.Not applicablemap[string]string
priorityClassNameAssign a priority class to the ActiveGate pods. By default, no class is set.
For details, see Pod Priority and Preemption.
Not applicablestring
replicasNumber of replicas of ActiveGate pods.1int
resourcesResource settings for ActiveGate container. Consumption of the ActiveGate heavily depends on the workload to monitor; adjust values accordingly.Not applicableResourceRequirements
terminationGracePeriodSecondsConfigures the terminationGracePeriodSeconds parameter of the ActiveGate pod. Kubernetes defaults and rules apply.Not applicableint
tlsSecretNameName of a secret containing ActiveGate TLS certificate, key, and password. If not set, a self-signed certificate is used. For details, see How to add a custom certificate for ActiveGate.Not applicablestring
tolerationsSet tolerations for the ActiveGate pods.
For details, see Taints and Tolerations.
Not applicable[]Toleration
topologySpreadConstraintsAdds topology spread constraints to the ActiveGate pods.Not applicable[]corev1.TopologySpreadConstraint
useEphemeralVolumeIndicates whether to use ephemeral volume for storage.Not applicableboolean
volumeClaimTemplateDescribes the common attributes of storage devices and allows a Source for provider-specific attributes.Not applicablecorev1.PersistentVolumeClaimSpec
1

A custom certificate is required for this capability. See the tlsSecretName parameter for details.

.spec.metadataEnrichment

  • All parameters are optional.
ParameterDescriptionDefault valueData type
enabledEnables MetadataEnrichment, false by default.falseboolean
namespaceSelectorThe namespaces where you want Dynatrace Operator to inject. For more information, see Configure monitoring for namespaces and Pods.Not applicableLabelSelector

.spec.extensions

Available with a future Dynatrace version.

Adding this section enables extension support in Kubernetes. To use extensions

  • kubernetes-monitoring is mandatory and has to be added to the list of ActiveGate capabilities in .spec.activeGate.capabilities and
  • The feature flag feature.dynatrace.com/automatic-kubernetes-api-monitoring must not be set to false.

.spec.kspm

Adding this section enables Kubernetes Security Posture Management (KSPM). To use KSPM

  • kubernetes-monitoring is mandatory and has to be added to the list of ActiveGate capabilities in .spec.activeGate.capabilities and

  • The feature flag feature.dynatrace.com/automatic-kubernetes-api-monitoring must not be set to false.

  • All parameters in .spec.kspm are optional.

ParameterDescriptionDefault valueData type
mappedHostPathsSpecifies the host paths that are mounted to the NCC container.Not applicable[[]string ](#kspm-mappedHostPaths)

.spec.logMonitoring

Available with Dynatrace version 1.306 and OneAgent 1.305

To use Log Monitoring

  • kubernetes-monitoring is mandatory and has to be added to the list of ActiveGate capabilities in .spec.activeGate.capabilities

  • The feature flag feature.dynatrace.com/automatic-kubernetes-api-monitoring must not be set to false.

  • All parameters in .spec.logMonitoring are optional.

ParameterDescriptionDefault valueData type
ingestRuleMatchersSpecifies the rules and conditions for matching ingest attributes.Not applicable[]IngestRuleMatchers

.spec.logMonitoring.ingestRuleMatchers

This field is immutable. Once set, it will no longer be updated.

ParameterDescriptionDefault valueData type
attributeSpecifies the attribute name for matching ingest rules.Not applicablestring
valuesLists the values that the attribute must match for an ingest rule to apply.Not applicable[]string

Example:

ingestRuleMatchers:
- attribute: "k8s.namespace.name"
values:
- "kube-system"
- "dynatrace"
- "default"
- attribute: "k8s.pod.annotation"
values:
- "logs.dynatrace.com/ingest=true"
- "category=security"

.spec.telemetryIngest

Dynatrace Operator version 1.6.0+

Enable Dynatrace telemetry endpoints in Kubernetes for cluster-local data ingest. Adding this section deploys the OpenTelemetry collector by the Operator.

ParameterDescriptionDefault valueData type
protocolsSpecifies the protocols that will be ingested by the OpenTelemetry collector."otlp, jaeger, statsd, zipkin"[]string
serviceNameSpecifies the name of the service to be used. If not specified the serviceName is set to a default."dynakube.name-telemetry-ingest"string
tlsRefNameSecret containing a TLS certificate used by telemetryIngest.Not applicablestring

.spec.templates

.spec.templates.kspmNodeConfigurationCollector

ParameterDescriptionDefault valueData type
updateStrategyDefine the Node Configuration Collector daemonSet updateStrategyNot applicableDaemonSetUpdateStrategy
labelsAdd custom labels to the Node Configuration Collector pods.Not applicablemap[string]string
annotationsAdd custom annotations to the Node Configuration Collector pods.Not applicablemap[string]string
nodeSelectorSpecify the node selector that controls on which nodes the Node Configuration Collector pods will be deployed.Not applicablemap[string]string
imageRefOverrides the default image.Not applicableimageRef
priorityClassNameIf specified, indicates the Pod's priority. Name must be defined by creating a PriorityClass object wiht that name. If not specified the setting will be removed from the DaemonSet.Not applicablestring
resourcesDefine resource requests and limits for Node Configuration Collector Pods.Not applicableResourceRequirements
nodeAffinityDefine the nodeAffinity for the DaemonSet of the Node Configuration CollectorNot applicableNodeAffinity
tolerationsSet tolerations for the Node Configuration Collector pods.
For details, see Taints and Tolerations.
Not applicable[]Toleration
argsSet additional arguments for the Node Configuration Collector main container.Not applicable[]string
envSet additional environment variables for the Node Configuration Collector main container.Not applicable[]string

.spec.templates.kspmNodeConfigurationCollector.imageRef

ParameterDescriptionDefault valueData type
repositoryURL of Node Configuration Collector image.Not applicablestring
tagTag for Node Configuration Collector image.Not applicablestring

.spec.templates.logMonitoring

Available with Dynatrace version 1.306 and OneAgent 1.305

  • imageRef parameter is required.
ParameterDescriptionDefault valueData type
annotationsAdd custom annotations to the LogMonitoring pods.Not applicablemap[string]string
labelsAdd custom labels to the LogMonitoring pods.Not applicablemap[string]string
nodeSelectorSpecify the node selector that controls on which nodes the LogMonitoring pods will be deployed.Not applicablemap[string]string
imageRefOverrides the default image for the LogMonitoring pods.Not applicableimageRef
dnsPolicySet the DNS policy for LogMonitoring pods.ClusterFirststring
priorityClassNameAssign a priority class to the LogMonitoring pods. By default, no class is set.Not applicablestring
secCompProfileConfigures a SecComp profile to enable secure computing mode for the LogMonitoring pods.Not applicablestring
resourcesDefine resource requests and limits for LogMonitoring's main and init-container.Not applicableResourceRequirements
tolerationsSet tolerations for the LogMonitoring pods.
For details, see Taints and Tolerations.
Not applicable[]Toleration
argsSet additional arguments for the LogMonitoring main container.Not applicable[]string

.spec.templates.logMonitoring.imageRef

Available with Dynatrace version 1.306 and OneAgent 1.305

ParameterDescriptionDefault valueData type
repositoryURL of LogMonitoring image.Not applicablestring
tagTag for LogMonitoring image.Not applicablestring

.spec.templates.extensionExecutionController

Available with a future Dynatrace version.

  • imageRef parameter is required.
  • All other parameters are optional.
ParameterDescriptionDefault valueData type
imageRefImage that is used for Extension Execution Controller. This field is mandatory.Not applicableimageRef
persistentVolumeClaimPVC for the Extension Execution Controller. If not specified, a default PVC is used.Not applicablePersistentVolumeClaim
labelsLabels applied to Extension Execution Controller pod.Not applicablemap[string]string
annotationsAnnotations applied to Extension Execution Controller pod.Not applicablemap[string]string
tlsRefNameSecret containing a TLS certificate for communication between Extension Execution Controller and OpenTelemetry Collector.Not applicablestring
customConfigConfigMap holding a custom Extension Execution Controller configuration.Not applicablestring
customExtensionCertificatesSecret holding certificates that have been used to sign custom extensions. Needed for extensions signature validation by Extension Execution Controller.Not applicablestring
resourcesResource settings for Extension Execution Controller pod.Not applicableResourceRequirements
tolerationsTolerations for Extension Execution Controller pod.
For details, see Taints and Tolerations.
Not applicable[]Toleration
topologySpreadConstraintsTopology spread constraints for Extension Execution Controller pod.Not applicable[]corev1.TopologySpreadConstraint
useEphemeralVolumeIndicates whether to use ephemeral volume for storage.Not applicableboolean

.spec.templates.extensionExecutionController.imageRef

Available with a future Dynatrace version.

ParameterDescriptionDefault valueData type
repositoryURL of Extension Execution Controller image.Not applicablestring
tagTag for Extension Execution Controller image.Not applicablestring

.spec.templates.otelCollector

Dynatrace Operator version 1.6.0+

  • All parameters are optional.
ParameterDescriptionDefault valueData type
imageRefImage that is used for OpenTelemetry Collector.Not applicableimageRef
replicasNumber of OpenTelemetry Collector replicas.1int32
labelsLabels applied to OpenTelemetry Collector pod.Not applicablemap[string]string
annotationsAnnotations applied to OpenTelemetry Collector pod.Not applicablemap[string]string
tlsRefNameSecret containing a TLS certificate used by OpenTelemetry Collector to verify connections to endpoints of other components.Not applicablestring
resourcesResource settings for OpenTelemetry Collector pod.Not applicableResourceRequirements
tolerationsTolerations for OpenTelemetry Collector pod.
For details, see Taints and Tolerations.
Not applicable[]Toleration
topologySpreadConstraintsTopology spread constraints for OpenTelemetry Collector pod.Not applicable[]corev1.TopologySpreadConstraint

.spec.templates.otelCollector.imageRef

Dynatrace Operator version 1.6.0+

ParameterDescriptionDefault valueData type
repositoryURL of OpenTelemetry Collector image.public.ecr.aws/dynatrace/dynatrace-otel-collectorstring
tagTag for OpenTelemetry Collector image.lateststring