Networking add-ons, specifically Multus and Whereabouts, are deployed with a default priority of 0 in TKGm environments. Resource pressure on nodes can cause these critical system components to be preempted by other workloads, leading to instability or service failure.
TCA: 3.4, TCP:5.1
Networking add-ons (Multus, Whereabouts) are configured with default Priority 0. Assigning higher PriorityClass values to custom workloads triggers the Kubernetes scheduler to preempt these lower-priority system pods during resource contention.
To prioritize large, resource-intensive workloads without risking the eviction of Multus or Whereabouts, implement a custom PriorityClass using the preemptionPolicy: Never setting. This configuration ensures workloads are placed at the front of the scheduling queue without actively terminating running pods that have lower priority.
Apply the following PriorityClass configuration to your cluster:
yaml
apiVersion: scheduling.k8s.io/v1kind: PriorityClassmetadata: name: high-priority-non-preemptingvalue: 1000000preemptionPolicy: NeverglobalDefault: falsedescription: "Places pods at the front of the queue without preempting running pods."
Benefits
preemptionPolicy: Never setting prevents these workloads from preempting critical infrastructure pods (Priority=0).
For future architectural planning, migrating to VCF 9.x vSphere Kubernetes Service (VKS) provides native PriorityClass alignments by default. Broadcom currently has no plans to modify the default PriorityClass for these specific add-ons in TKGm.