PERF(repo): move system pods to master node

- Add nodeSelector for master node placement
- Add tolerations for NoExecute taint
- kube-state-metrics: schedule on master
- goldilocks-controller: schedule on master, reduce to 1 replica
- vpa-recommender: schedule on master, remove anti-affinity
- Free worker node resources for applications
This commit is contained in:
2026-01-08 18:43:18 +09:00
parent bbdd908b27
commit 1c6a9dc491
3 changed files with 27 additions and 10 deletions

View File

@@ -47,7 +47,7 @@ dashboard:
# Controller configuration # Controller configuration
controller: controller:
enabled: true enabled: true
replicaCount: 2 replicaCount: 1
resources: resources:
requests: requests:
@@ -60,6 +60,15 @@ controller:
# Set to false to only monitor namespaces with the label: goldilocks.fairwinds.com/enabled=true # Set to false to only monitor namespaces with the label: goldilocks.fairwinds.com/enabled=true
enableCostRecommendations: true enableCostRecommendations: true
# Schedule on master node
nodeSelector:
node-role.kubernetes.io/master: ""
tolerations:
- key: node-role.kubernetes.io/master
operator: Exists
effect: NoExecute
# VPA configuration (should already be installed) # VPA configuration (should already be installed)
vpa: vpa:
# Set to false since we're installing VPA separately # Set to false since we're installing VPA separately

View File

@@ -14,6 +14,15 @@ resources:
limits: limits:
memory: 150Mi memory: 150Mi
# Schedule on master node
nodeSelector:
node-role.kubernetes.io/master: ""
tolerations:
- key: node-role.kubernetes.io/master
operator: Exists
effect: NoExecute
service: service:
type: ClusterIP type: ClusterIP
clusterIP: None clusterIP: None

View File

@@ -13,15 +13,14 @@ recommender:
limits: limits:
memory: 192Mi memory: 192Mi
affinity: # Schedule on master node
podAntiAffinity: nodeSelector:
preferredDuringSchedulingIgnoredDuringExecution: node-role.kubernetes.io/master: ""
- weight: 100
podAffinityTerm: tolerations:
labelSelector: - key: node-role.kubernetes.io/master
matchLabels: operator: Exists
app: vpa-recommender effect: NoExecute
topologyKey: kubernetes.io/hostname
# Updater - applies recommended resource requests to pods # Updater - applies recommended resource requests to pods
# Disabled because we're using updateMode: Off (recommendations only) # Disabled because we're using updateMode: Off (recommendations only)