I currently have a cluster on EKS in Auto Mode and I'm doing some initial tests.
I want to deploy KEDA to perform horizontal scale, but since it's a critical piece of the infrastructure, it should be in the system nodepool, where critical stuff lives.
Accordingly to this page of documentation https://docs.aws.amazon.com/eks/latest/userguide/critical-workload.html I should add these lines to my deployment:
spec:
nodeSelector:
karpenter.sh/nodepool: system
tolerations:
- key: "CriticalAddonsOnly"
operator: "Exists"
However, since I'm not very experienced, I can't find a way to pass those info while installing KEDA using Helm. I tried to put those lines in a file and then run the following command:
helm upgrade --install keda kedacore/keda --namespace keda --create-namespace -f config.yaml --wait
but regarding all my tests, KEDA is always deployed on a new instance, not on the "main" one.
Any suggestions?