⌂ Home

Kubernetes Version Skew Policy Matrix

Interactive Compatibility Reference Guide

kube-apiserver

N (Baseline)
Central API server - always upgrade first

kubelet

N to N-2
Worker node agent - gradual upgrade

kubectl

N+1 to N-1
CLI tool - flexible versioning

kube-controller-manager
kube-scheduler

N to N-1
Control plane components

Compatibility Matrix

Component
kube-apiserver
kubelet
kubectl
kube-controller-manager
kube-scheduler
Compatible (Supported)
Incompatible (Not Supported)
Interactive Version Compatibility Grid kube-apiserver v1.28.x as baseline (N) Component v1.26 (N-2) v1.27 (N-1) v1.28 (N baseline) v1.29 (N+1) kube-apiserver kubelet kubectl kube-controller- manager kube-scheduler Key Skew Policy Rules ✓ Supported Combinations • kubelet: N to N-2 (2 versions behind) • kubectl: N+1 to N-1 (±1 version) • controller/scheduler: N to N-1 ✗ Unsupported Combinations • kubelet ahead of API server • Any component >2 versions behind • kubectl >1 version difference Click table cells above for detailed explanations

Version Combination Examples

✓ Valid Combinations

  • Scenario 1: API v1.28, kubelet v1.27, kubectl v1.28
  • Scenario 2: API v1.28, kubelet v1.26, kubectl v1.29
  • Scenario 3: API v1.28, all components v1.28

✗ Invalid Combinations

  • Error 1: API v1.28, kubelet v1.29 (kubelet ahead)
  • Error 2: API v1.28, kubelet v1.25 (3 versions behind)
  • Error 3: API v1.28, kubectl v1.25 (2 versions behind)

Best Practices for Kubernetes Upgrades