Get started with Application observability

This page provides instructions for deploying the Dynatrace Operator in application monitoring configuration to a Kubernetes cluster.

Before you begin

Before installing Dynatrace on your Kubernetes cluster, ensure that you meet the following requirements:

  • Your kubectl CLI is connected to the Kubernetes cluster that you want to monitor.
  • You have sufficient privileges on the monitored cluster to run kubectl or oc commands.

Cluster setup and configuration

Supported versions

See supported Kubernetes/OpenShift platform versions and distributions.

Configuring SCC is required for OpenShift for cloudNativeFullStack and applicationMonitoring with CSI driver deployments.

The combination of hostMonitoring and applicationMonitoring in a Kubernetes cluster in the same environment is not supported.

Installation options

Choose one of the installation methods that best suits your needs.

Helm

Dynatrace Operator version 0.8.0+

New Helm installation and upgrade instructions use our Helm chart available from an OCI registry. Therefore, if the Dynatrace repository is currently added to your local Helm repositories, it can be safely removed.

helm repo remove dynatrace

The installation process is independent of whether you are using Kubernetes or OpenShift. The platform is auto-detected during the installation.

  1. Install Dynatrace Operator

    You have two options:

    The following command works for both default installations and installations using an OCI registry.

    helm install dynatrace-operator oci://public.ecr.aws/dynatrace/dynatrace-operator \
    --create-namespace \
    --namespace dynatrace \
    --atomic \

    Edit the values.yaml sample from GitHub, and then run the install command, passing the YAML file as an argument:

    helm install dynatrace-operator oci://public.ecr.aws/dynatrace/dynatrace-operator \
    --create-namespace \
    --namespace dynatrace \
    --atomic \
    -f values.yaml

    If installCRD is set to false, you need to create the custom resource definition manually before starting the Helm installation:

    kubectl apply -f https://github.com/Dynatrace/dynatrace-operator/releases/download/v1.3.0/dynatrace-operator-crd.yaml

    VMware Tanzu Kubernetes (TKGI) and IBM Kubernetes Service (IKS) require additional configuration.

  2. Create secret for Access tokens

    Create a secret named dynakube for the Dynatrace Operator token and data ingest token obtained in Tokens and permissions required.

    kubectl -n dynatrace create secret generic dynakube --from-literal="apiToken=<OPERATOR_TOKEN>" --from-literal="dataIngestToken=<DATA_INGEST_TOKEN>"
  3. Apply the DynaKube custom resource

    Download the DynaKube custom resource sample for application monitoring from GitHub. In addition, you can review the available parameters or how-to guides, and adapt the DynaKube custom resource according to your requirements.

    Run the command below to apply the DynaKube custom resource, making sure to replace <your-DynaKube-CR> with your actual DynaKube custom resource file name. A validation webhook will provide helpful error messages if there's a problem.

    kubectl apply -f <your-DynaKube-CR>.yaml
  4. optional Verify deployment

    Verify that your DynaKube is running and all pods in your Dynatrace namespace are running and ready.

    > kubectl get dynakube -n dynatrace
    NAME APIURL STATUS AGE
    dynakube https://<ENVIRONMENTID>.live.dynatrace.com/api Running 45s

    In a default DynaKube configuration with CSI driver, you should see the following pods:

    > kubectl get pods -n dynatrace
    NAME READY STATUS RESTARTS AGE
    dynakube-activegate-0 1/1 Running 0 50s
    dynatrace-oneagent-csi-driver-qxfwx 4/4 Running 0 2m49s
    dynatrace-oneagent-csi-driver-xk5c4 4/4 Running 0 2m49s
    dynatrace-oneagent-csi-driver-mz6ch 4/4 Running 0 2m49s
    dynatrace-operator-7dc8dc7d8c-wmh4z 1/1 Running 0 2m59s
    dynatrace-webhook-7bb6957fb5-l8fsq 1/1 Running 0 2m59s
    dynatrace-webhook-7bb6957fb5-rqnqk 1/1 Running 0 2m59s

    CSI driver is optional (see Step 2). If enabled, it gets deployed as DaemonSet and results in a CSI-driver pod on each node.

Manifest

Learn more

After you've successfully installed the Dynatrace Operator, you may find the following resources helpful for further learning and troubleshooting.