OpenShift Control Plane extension

  • Latest Dynatrace
  • Extension
  • Published Oct 27, 2025

Get insights into your OpenShift control plane with metrics from its components.

Get insights into your OpenShift control plane with metrics from its components.

Get started

Overview

This is an extension for monitoring the OpenShift control plane and comes with an out-of-the-box dashboard and pre-configured alerts. The OpenShift Control Plane extension only requires metrics already ingested into Dynatrace via Prometheus integration.

Use cases

Use this extension to:

  • Alert on control plane components not being ready.
  • Inspect the control plane using out-of-the-box dashboards.
  • Create custom dashboards and alerts using metrics exposed by components of the control plane.

Requirements

  • Active OpenShift Control Plane extension in your environment
  • ActiveGate version 1.249+ running within the Kubernetes cluster. To use ActiveGate in your Kubernetes cluster, deploy Dynatrace using Dynatrace Operator. Alternatively, you can deploy an ActiveGate as a StatefulSet.

Compatibility information

The extension supports:

  • OpenShift 3 or OpenShift 4 (self-managed).
  • Cluster version 1.252+.
  • AG version 1.249+.

Activation and setup

To set up the extension

  1. Enable Prometheus monitoring in Dynatrace. For more information see Monitor Prometheus metrics.

  2. Start ingesting control plane metrics.

    To ingest metrics exposed by the OpenShift control plane, the related services need to be annotated with specific Dynatrace annotations. Based on the used OpenShift version, the YAML files referenced in the commands below define a default set of annotations, enabling the ingestion of all metrics used by the OpenShift control plane extension. Before executing any of the instructions below, ensure your kubectl is configured to use the Kubernetes cluster you want to monitor. If the default set of annotations fits your needs, use the corresponding instructions below. Otherwise, download the files first and adapt them accordingly.

    • OpenShift 4
    kubectl apply -f https://raw.githubusercontent.com/dynatrace-extensions/kubernetes-control-plane/main/scripts/control-plane-monitoring-annotations-ocp4.yaml
    • OpenShift 3
    kubectl apply -f https://raw.githubusercontent.com/dynatrace-extensions/kubernetes-control-plane/main/scripts/control-plane-monitoring-annotations-ocp3.yaml
  3. Ensure that you have an active OpenShift Control Plane extension in your environment.

After some minutes, you can verify if everything works as expected by finding control plane related metrics using Dynatrace metrics browser. kube_pod_status_ready is one of the metrics to search for.

Additionally, the extension comes with multiple pre-configured metric events for alerting. To activate them:

  1. Go to Settings > Anomaly detection > Metric events.
  2. Find and configure the following events:
    • OpenShift control plane: cluster not ready: notifies you if the cluster is not ready (based on the readyz API health endpoint).
    • OpenShift control plane: etcd pod not ready: notifies you if any etcd pod is not ready.
    • OpenShift control plane: API server pod not ready: notifies you if any API server pod is not ready.
    • OpenShift 4 specific events:
      • OpenShift control plane: low number of master nodes: notifies you if the number of master nodes is below a specified threshold.
      • OpenShift control plane: DNS pod not ready: notifies you if any DNS pod is not ready.
      • OpenShift control plane: scheduler pod not ready: notifies you if any scheduler pod is not ready.
      • OpenShift control plane: controller manager pod not ready: notifies you if any controller manager pod is not ready.
    • OpenShift 3 specific events:
      • OpenShift control plane: low number of master nodes: notifies you if the number of master nodes is below a specified threshold.
      • OpenShift control plane: controller pod not ready: notifies you if any controller pod is not ready.
  3. Optional Select the Edit button to customize the event conditions.
  4. Move the switch next an event to the On position to activate it.

To uninstall the extension

  1. Stop ingesting control plane metrics and remove the metric annotations from the related services. If you followed the instructions described in the "Start ingesting control plane metrics" section, you can use kubectl to remove the annotations, by referencing the previously applied file in a kubectl delete -f command, as shown below for the default YAML files. Before executing any of the instructions below, ensure your kubectl is configured to use the right Kubernetes cluster.

    • OpenShift 4
    kubectl delete -f https://raw.githubusercontent.com/dynatrace-extensions/kubernetes-control-plane/main/scripts/control-plane-monitoring-annotations-ocp4.yaml
    • OpenShift 3
    kubectl delete -f https://raw.githubusercontent.com/dynatrace-extensions/kubernetes-control-plane/main/scripts/control-plane-monitoring-annotations-ocp3.yaml
  2. Deactivate the extension via the Dynatrace Hub.

Feature sets

When activating your extension using monitoring configuration, you can limit monitoring to one of the feature sets. To work properly the extension has to collect at least one metric after the activation.

In highly segmented networks, feature sets can reflect the segments of your environment. Then, when you create a monitoring configuration, you can select a feature set and a corresponding ActiveGate group that can connect to this particular segment.

All metrics that aren't categorized into any feature set are considered to be the default and are always reported.

A metric inherits the feature set of a subgroup, which in turn inherits the feature set of a group. Also, the feature set defined on the metric level overrides the feature set defined on the subgroup level, which in turn overrides the feature set defined on the group level.

Troubleshooting

For troubleshooting and further annotation methods, see Monitor Prometheus metrics in Dynatrace documentation.

Related tags
ComputePrometheusKuberenetesRed HatInfrastructure Observability