-
Notifications
You must be signed in to change notification settings - Fork 295
Add ability to configure flags for cluster-autoscaler-de.yaml [Small] #1422
Conversation
Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA. It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
987bc3b
to
3531c2b
Compare
Codecov Report
@@ Coverage Diff @@
## master #1422 +/- ##
==========================================
+ Coverage 37.57% 37.58% +0.01%
==========================================
Files 74 74
Lines 4546 4547 +1
==========================================
+ Hits 1708 1709 +1
Misses 2603 2603
Partials 235 235
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM overall! Thanks for the improvement. Hopefully we could find a way to extend this feature to other deployments managed by kube-aws in a consistent manner
# Sensible defaults are already configured in the controller-cloud-config but if you wish to override them simply | ||
# add them here and they'll take presedence. | ||
#options: | ||
# flagName: value |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nit but would flag-name
would better represent that it must be the flag name minus --
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes - makes sense. changing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sry this had been in my merge queue for too long! Just merged. Thanks again for your contribution
3531c2b
to
9708330
Compare
What
Exposing cluster autoscaler options via cluster.yaml
Why
I'd like to be able to configure the cluster-autoscaler to make it more sensitive.
We have a lot of clusters of different shapes/sizes/responsibilities. One cluster in particular runs only 1 app (don’t ask :sadpanda:) which I believe makes it incompatible with the cluster-autoscaler default settings. We recently incurred the following outage:
How
I’ve added an Options map to the Autoscaler struct which will be templated out in the cluster-autoscaler-deployment.yaml. This allows us (hotelscom) to specifically add the options we need but also give others the chance to override any they see fit.
Notes
I’ve chosen to retain the opinionated kube-aws direction by leaving the current default values hardcoded in the deployment.yaml, instead of setting them as defaults in the map.
I’ve tested that these values can still be overridden if duplicated in the ‘options’ map - it appears the libraries used by the autoscaler give precedence to whatever appears/is-resolved last.