Skip to content

Cluster alert runbooks

Use the cluster, namespace and resource named in the notification. For a Kupe-managed platform resource you cannot access, contact support with the alert name and affected resource. Do not change platform applications to clear an alert.

ArgoCDAppOutOfSync means the application’s desired Git configuration and live resources have remained different for the configured alert window.

  1. Open the affected application in your Argo CD instance. Check its resource diff and the most recent sync result.
  2. Check for rejected manifests, missing dependencies, repository access failures or a controller changing fields after sync.
  3. Fix the manifest or dependency in Git. Retry a normal sync after resolving the error, then confirm the application becomes Synced.

A running application can still be out of sync. Avoid force sync or resource replacement until you understand the diff. See the Argo CD out-of-sync FAQ.

ArgoCDAppUnhealthy means Argo CD reports a degraded, missing or unknown resource health state. Sync status and health are separate: a synced application can still have an unavailable workload.

  1. Open the application resource tree and identify the unhealthy resource.
  2. Inspect that resource’s status and events. For pods, check container logs, readiness, image pulls, volumes and scheduling failures.
  3. Correct the workload or its dependencies. Confirm the affected resource and application return to Healthy.

For custom resources, check the resource status and contact support if needed.

KubePodDisruptionBudgetBlocked means the named budget has allowed no voluntary pod disruptions throughout the rule’s observation window. Node drains and planned maintenance can wait on this budget even when the workload is running.

  1. In the affected cluster, inspect the named PodDisruptionBudget and its selected pods. Compare current healthy pods with minAvailable or maxUnavailable.
  2. Restore unhealthy replicas or increase the workload’s replica count when it needs more redundancy to tolerate an eviction.
  3. If the budget cannot allow an eviction at the intended replica count, review the workload’s availability requirements before changing it. Confirm disruptionsAllowed becomes positive before retrying maintenance.

Do not delete the budget or force-delete pods simply to clear the alert. Kubernetes explains budget selectors, health counts and eviction behaviour in Specifying a disruption budget.