The AppDynamics Cluster Agent is a lightweight Agent written in Golang used to monitor Kubernetes and OpenShift clusters. You can use the Cluster Agent to monitor and understand how Kubernetes infrastructure affects your applications and business performance. With the Cluster Agent, you can collect metadata, metrics, and events for a Kubernetes cluster. The Cluster Agent is supported on Red Hat OpenShift and cloud-based Kubernetes platforms, such as Amazon EKS, Azure AKS, and Rancher.
Cluster Monitoring in the Controller
The Cluster Agent monitors events and metrics of Kubernetes or OpenShift clusters. It also tracks the state of most Kubernetes resources: pods, replica sets, deployments, services, persistent volumes, nodes, and so on. The data is received through the Kubernetes API server and is sent to the AppDynamics Controller. See Cluster Metrics.
Cluster Agent and Server Visibility with Docker Monitoring
AppDynamics Server Visibility monitors the worker nodes at a more detailed level. Server Visibility includes the ability to monitor running containers through Docker Monitoring. However, the Cluster Agent also monitors the same containers through the Kubernetes API server. You cannot run Server Visibility with Docker Monitoring enabled, and the Cluster Agent concurrently. Doing so may result in your data being overwritten, and may lead to unpredictable behaviors. See Install Infrastructure Visibility with the Kubernetes CLI.
When you deploy both Agents to the cluster, ensure that you deploy the Machine Agent with Docker Visibility disabled. See Monitor Containers with Docker Visibility.
Cluster Dashboard Metrics
The Cluster Dashboard provides an overview of potential issues with cluster health, grouped by category and severity. It shows error events, evictions, node resource starvation, distribution of pod phases, and issues associated with:
- Cluster configuration
- Image or storage access
- Security access errors
- Quota violations
The dashboard contains cluster resource capacity stats and resource usage data relative to the deployment requests and limits for CPU, Memory, and Storage. The dashboard also provides real-time statistics on the state of monitored objects on the cluster, best-practice violations, and missing dependencies. See Monitor Cluster Health.
Cluster Agent Health Rules
You can create Cluster Agent Health Rules based on cluster metrics. Because Health Rules for clusters are created using server health rules, the health rule violations for clusters show as a server health rule violation. When creating the Health Rule, in the Affected Entities section, select Custom, and then select your Cluster Agent from the list of machines. When setting the Critical/Warning conditions, the entire metric tree displays. Select the Cluster Agent metrics for which to create the Health Rule. To create Health Rules for Cluster Agent metrics, follow the Create a Health Rule procedures.
You can create Health Rules for these metrics:
- Number of error events
- Number of evictions
- Number of threats
- Nodes with disk pressure
- Nodes with memory pressure
- CPU/Memory utilization