integ/kubernetes/kubernetes-1.28.4
Boovan Rajendran 9ec39a1da0 Identify platform pods based on pod/namespace labels
Pods with namespace 'kube-system', or labeled with
'app.starlingx.io/component=platform' are identified as
'platform'. These have isolated cpu affinity cpuset when
kubelet cpu-manager 'static' policy is configured. This
decouples performance of application pods from the platform.

The new patch Identify-platform-pods-based-on-pod-or-namespace-labels
patch is used to identify platform pods using above criteria for
Kubernetes 1.25 and later. The hard-coded list of platform namespaces
is no longer required. The original hard-coded list is still kept
for Kubernetes 1.24 so we can phase in this change.

This will also fix the Kubernetes make test fail issue after merging
the review https://review.opendev.org/c/starlingx/integ/+/907637

This change also include the missed out patch
kubeadm-reduce-UpgradeManifestTimeout.patch for k8s 1.29.

Test Plan:
PASS: Run all Kubelet, kubeadm, kubectl make tests for affected code.
PASS: All affected versions of kubernetes package build successfully.
PASS: Create a pod with the platform label. Pod is classified as
      a platform pod.
PASS: Create a pod without the platform label but in a namespace with
      the platform label. Pod is classified as a platform pod.
PASS: Create a pod without the platform label and in a namespace
      without the platform label. Pod is not classified as a platform
      pod.
PASS: Verify correct cpuset affinity of platform vs application pods
      after host lock/unlock
PASS: Verify kube-system namespace pods are correctly identified
      as Platform

Closes-Bug: 2058042

Story: 2010612
Task: 49910

Change-Id: I0cc05c2e9057b64f9191317e72a1bf4d7b8d0771
Signed-off-by: Boovan Rajendran <boovan.rajendran@windriver.com>
2024-04-26 02:13:49 -04:00
..
debian Identify platform pods based on pod/namespace labels 2024-04-26 02:13:49 -04:00