Skip to content

Assigning node taints to system nodepool not working anymore, failing with SystemPoolHasRestrictedTaint #2578

@nbusseneau

Description

@nbusseneau

Hello 😄

What happened: Creating system nodepools with node taints is not working since 2021-09-28, failing with the following error:

(SystemPoolHasRestrictedTaint) Operation failed due to insufficient nodes for system pod scheduling. Placing custom taints on system pool is not supported(except 'CriticalAddonsOnly' taint or taint effect is 'PreferNoSchedule'). Please refer to https://aka.ms/aks/system-taints for detail

What you expected to happen: System nodepool is created with the node taint applied.

How to reproduce it (as minimally and precisely as possible): Using the CLI:

az group create --name foo --location westeurope
az aks create --resource-group foo --name bar
az aks nodepool add --name nodepool2 --resource-group foo --cluster-name bar \
  --mode system --node-taints foo=bar:NoSchedule

Anything else we need to know?:

We recommend users to apply taint node.cilium.io/agent-not-ready=true:NoSchedule to nodepools when using cilium/cilium (CNI plugin) to prevent application pods from being managed by the default AKS CNI plugin.

We test this behaviour in our AKS CI, via an automated GitHub Actions workflow using the Azure CLI (see source command lines here).

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions