An Azure service that provides serverless Kubernetes, an integrated continuous integration and continuous delivery experience, and enterprise-grade security and governance.
Hello @Jena, Tapas Kumar (893) (EXT),
Thank you for using Q&A forum.
AKS does not automatically taint system node pools — you have to do it explicitly. Here's how to fix it properly.
Fix 1 — Add the Standard AKS Taint to the System Node Pool (Recommended)
bash
az aks nodepool update \
--resource-group <your-rg> \
--cluster-name <your-cluster> \
--name agentpool \
--node-taints CriticalAddonsOnly=true:NoSchedule
This is the standard AKS taint. System components like CoreDNS already carry the matching toleration, so they won't be affected. Your fipro pods don't have that toleration, so they'll be evicted and move to the user node pool automatically.
Verify the taint was applied:
bash
kubectl describe node aks-agentpool-38991572-vmss000003 | grep Taint
Expected: Taints: CriticalAddonsOnly=true:NoSchedule
- Apply the taint to the system node pool via
az aks nodepool update - Drain
vmss000003manually to evict existing pods immediately (don't wait for natural eviction) - Update the
fiprodeployment withnodeSelectorornodeAffinity - Uncordon the system node
- Do the same taint check on
vmss000002— if it also hasTaints: <none>, apply the same fix preemptively
The taint alone solves the immediate problem.
If this answers your query, do click Accept Answer and Up-Vote for the same. And, if you have any further query do let us know.