Your are running multiple distinct versions of Tanzu Kubernetes Grid Integrated Edition (TKGI) in your infrastructure. To streamline operations and administration, you wish to utilize a single kubectl client binary that is fully compatible and officially supported across all target environments. You require a generalized framework to determine the correct kubectl version to deploy.
To maintain single-binary compatibility across a diverse environment, you must map the platform versions to their underlying upstream Kubernetes components and evaluate them against the client tool support window.
kube-apiserver) VersionsBefore selecting a client version, you must find the precise upstream Kubernetes minor version (which is as same as kube-apiserver version) bundled with each deployed version of your platform. This mapping can be found dynamically under the Internal Component Versions section within TKGI release note.
kubectl Version Skew PolicyThe official Kubernetes Version Skew Policy states that the kubectl CLI tool is supported when it falls within one minor version (older or newer) of the target cluster's control plane (kube-apiserver).
Example:
In the other word, kubectl 1.33 is compatible with kube-apiserver 1.34, 1.33, 1.32.