How to Re-deploy CoreDNS Pods Only to the Master Nodes.
Problem
Re-deploy CoreDNS pods only to the master nodes as part of performance improvement. Process to achieve this by editing Clusteraddon and by using taints.
Environment
Platform9 Managed Kubernetes - 5.4.0 and Higher.
Procedure
To implement this via the taint and toleration method, the steps to be performed is to set watch flag to false in CoreDNS clusteraddon object and manually edit the CoreDNS deployment to add taints.
Edit watch flag to false in clusteraddon of CoreDNS:
# kubectl edit clusteraddons -n default 91bc678c-7da5-41d0-be51-c295cd0a6453-corednsAfter editing:
# kubectl describe clusteraddons -n default 91bc678c-7da5-41d0-be51-c295cd0a6453-coredns
Name: 91bc678c-7da5-41d0-be51-c295cd0a6453-coredns
Namespace: default
Labels: sunpike.pf9.io/cluster=91bc678c-7da5-41d0-be51-c295cd0a6453
type=coredns
Annotations: <none>
API Version: sunpike.platform9.com/v1alpha2
Kind: ClusterAddon
Spec:
Cluster ID: 91bc678c-7da5-41d0-be51-c295cd0a6453
Override:
Params:
Name: dnsMemoryLimit
Value: 170Mi
Name: dnsDomain
Value: cluster.local
Type: coredns
Version: 1.8.0
Watch: false < ---------------------Add toleration to CoreDNS deployment:
The CoreDNS pods will be re-deploy to master node/s only:
Additional Information
The changes made will not persists across cluster upgrade. The new version CoreDNS yaml post upgrade wipes out the taints and toleration.
PreviousHow to Clean Luigi and Kubevirt Stale Entries After disabling the Luigin Plugins
NextCreate Read-Only Cluster User
Last updated
