Skip to main content
Source

This page is generated from skills/eks-upgrade-check/references/deprecated-apis.md. Edit the source, not this page.

Vendored skill

This skill is sourced from eks-upgrade-check, also maintained by the APEX team.

Deprecated API Detection

Purpose

Scan live cluster resources for usage of deprecated or removed Kubernetes APIs that will break during or after the upgrade.

How to Check

Step 1: Get EKS Upgrade Insights

Use the EKS Insights API with category UPGRADE_READINESS — this is the most reliable source for deprecated API detection as AWS scans the audit logs.

  1. Get EKS Insights → filter for UPGRADE_READINESS
  2. For any non-PASSING insights → get detailed description
  3. Record: insight status, affected resources, recommended action

Step 2: Scan Live Resources

For each resource type below, list resources and check their apiVersion field against the deprecation table.

Resource types to scan:

  • Deployments, DaemonSets, StatefulSets, ReplicaSets
  • CronJobs, Jobs
  • Ingresses
  • NetworkPolicies
  • PodDisruptionBudgets
  • HorizontalPodAutoscalers
  • CustomResourceDefinitions
  • ValidatingWebhookConfigurations, MutatingWebhookConfigurations
  • FlowSchemas, PriorityLevelConfigurations

Step 3: Check for Removed APIs by Target Version

TargetRemoved APIReplacement
1.22networking.k8s.io/v1beta1 Ingressnetworking.k8s.io/v1
1.22rbac.authorization.k8s.io/v1beta1rbac.authorization.k8s.io/v1
1.25policy/v1beta1 PodSecurityPolicyPod Security Standards
1.25policy/v1beta1 PodDisruptionBudgetpolicy/v1
1.25batch/v1beta1 CronJobbatch/v1
1.25discovery.k8s.io/v1beta1 EndpointSlicediscovery.k8s.io/v1
1.26autoscaling/v2beta1 HPAautoscaling/v2
1.26flowcontrol.apiserver.k8s.io/v1beta1flowcontrol.apiserver.k8s.io/v1beta3
1.29flowcontrol.apiserver.k8s.io/v1beta2flowcontrol.apiserver.k8s.io/v1
1.32flowcontrol.apiserver.k8s.io/v1beta3flowcontrol.apiserver.k8s.io/v1

Step 4: Classify Findings

For each deprecated API found:

  • Removed in target version → HIGH severity, action required
  • Deprecated but still available in target → LOW severity, plan migration
  • Removed in future version → INFO, awareness only

Output Format

For each finding, report:

  • API version and kind
  • Resource name and namespace
  • Whether it's removed in the target version or just deprecated
  • Specific migration command (e.g., update apiVersion field)

Score Impact

Canonical scoring is defined in references/report-generation.md §Category 2 (Deprecated APIs).

FindingDeduction
API removed in target version5 pts per API path (max 20)
API deprecated but available1 pt per API path (max 5)