I have a GKE cluster with two node pools. One of those is a tainted node pools for use by specific pods.
After adding the tainted node pool, I realised that Kubernetes was trying to schedule a kube-dns pod on the nodes of the pool, but couldn't.
From what I understood, all nodes should have kube-dns deployed if I want DNS resolution to work. Maybe this is an incorrect assumption?
Since kube-dns (and other things in kube-system) are managed by GKE and not by me, I have no idea how to either:
- if it's needed, tell kube-dns to tolerate my node pool, or
- if it's not needed, tell kube-dns not to be scheduled on it.