From cdc645aba0e9d15d7c8181200b5cdb18c91049c8 Mon Sep 17 00:00:00 2001 From: Alexandre Savicki Date: Fri, 19 Jul 2024 12:34:09 -0300 Subject: [PATCH] feat(cluster-autoscaler) Implement emitPerNodegroupMetrics parameter --- docs/addons.md | 1 + docs/releases/1.29-NOTES.md | 2 ++ k8s/crds/kops.k8s.io_clusters.yaml | 5 +++++ pkg/apis/kops/componentconfig.go | 3 +++ pkg/apis/kops/v1alpha2/componentconfig.go | 3 +++ pkg/apis/kops/v1alpha2/zz_generated.conversion.go | 2 ++ pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go | 5 +++++ pkg/apis/kops/v1alpha3/componentconfig.go | 3 +++ pkg/apis/kops/v1alpha3/zz_generated.conversion.go | 2 ++ pkg/apis/kops/v1alpha3/zz_generated.deepcopy.go | 5 +++++ pkg/apis/kops/zz_generated.deepcopy.go | 5 +++++ pkg/model/components/clusterautoscaler.go | 3 +++ ...rity-expander-custom.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + ...as-priority-expander.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + ...ws_s3_object_minimal.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + ...ws_s3_object_minimal.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + ...ws_s3_object_minimal.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + ...ws_s3_object_minimal.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + ...ws_s3_object_minimal.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../data/aws_s3_object_cluster-completed.spec_content | 1 + ...3_object_many-addons.example.com-addons-bootstrap_content | 2 +- ...-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content | 1 + .../cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml.template | 1 + 37 files changed, 64 insertions(+), 8 deletions(-) diff --git a/docs/addons.md b/docs/addons.md index 587bbe0ece220..16655d6528fb9 100644 --- a/docs/addons.md +++ b/docs/addons.md @@ -71,6 +71,7 @@ spec: enabled: true expander: least-waste balanceSimilarNodeGroups: false + emitPerNodegroupMetrics: false awsUseStaticInstanceList: false scaleDownUtilizationThreshold: 0.5 skipNodesWithCustomControllerPods: true diff --git a/docs/releases/1.29-NOTES.md b/docs/releases/1.29-NOTES.md index 334f5b58f9240..d5b8f482c67fd 100644 --- a/docs/releases/1.29-NOTES.md +++ b/docs/releases/1.29-NOTES.md @@ -2,6 +2,8 @@ # Significant changes +* Add support to --emit-per-nodegroup-metrics on the cluster autoscaler addon (emitPerNodegroupMetrics) [PR#16693](https://github.com/kubernetes/kops/pull/16693/) + ## Deferred deletion / pruning phase Some infrastructure changes are potentially disruptive to the continued diff --git a/k8s/crds/kops.k8s.io_clusters.yaml b/k8s/crds/kops.k8s.io_clusters.yaml index 6eaa4d4f91843..b1eb279913daa 100644 --- a/k8s/crds/kops.k8s.io_clusters.yaml +++ b/k8s/crds/kops.k8s.io_clusters.yaml @@ -769,6 +769,11 @@ spec: CustomPriorityExpanderConfig overides the priority-expander ConfigMap with the provided configuration. Any InstanceGroup configuration will be ignored if this is set. This could be useful in order to use regex on priorities configuration type: object + emitPerNodegroupMetrics: + description: |- + EmitPerNodegroupMetrics If true, publishes the node groups min and max metrics count set on the cluster autoscaler. + Default: false + type: boolean enabled: description: |- Enabled enables the cluster autoscaler. diff --git a/pkg/apis/kops/componentconfig.go b/pkg/apis/kops/componentconfig.go index 4cb04f5c1fa6c..e99ca712d4c33 100644 --- a/pkg/apis/kops/componentconfig.go +++ b/pkg/apis/kops/componentconfig.go @@ -1088,6 +1088,9 @@ type ClusterAutoscalerConfig struct { // BalanceSimilarNodeGroups makes the cluster autoscaler treat similar node groups as one. // Default: false BalanceSimilarNodeGroups *bool `json:"balanceSimilarNodeGroups,omitempty"` + // EmitPerNodegroupMetrics If true, publishes the node groups min and max metrics count set on the cluster autoscaler. + // Default: false + EmitPerNodegroupMetrics *bool `json:"emitPerNodegroupMetrics,omitempty"` // AWSUseStaticInstanceList makes cluster autoscaler to use statically defined set of AWS EC2 Instance List. // Default: false AWSUseStaticInstanceList *bool `json:"awsUseStaticInstanceList,omitempty"` diff --git a/pkg/apis/kops/v1alpha2/componentconfig.go b/pkg/apis/kops/v1alpha2/componentconfig.go index 76274f1ac0a11..52f495c6f1be4 100644 --- a/pkg/apis/kops/v1alpha2/componentconfig.go +++ b/pkg/apis/kops/v1alpha2/componentconfig.go @@ -1151,6 +1151,9 @@ type ClusterAutoscalerConfig struct { // BalanceSimilarNodeGroups makes the cluster autoscaler treat similar node groups as one. // Default: false BalanceSimilarNodeGroups *bool `json:"balanceSimilarNodeGroups,omitempty"` + // EmitPerNodegroupMetrics If true, publishes the node groups min and max metrics count set on the cluster autoscaler. + // Default: false + EmitPerNodegroupMetrics *bool `json:"emitPerNodegroupMetrics,omitempty"` // AWSUseStaticInstanceList makes the cluster autoscaler to use statically defined set of AWS EC2 Instance List. // Default: false AWSUseStaticInstanceList *bool `json:"awsUseStaticInstanceList,omitempty"` diff --git a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go index 60dc3f7f64be0..9afeef7900a8a 100644 --- a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go +++ b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go @@ -2313,6 +2313,7 @@ func autoConvert_v1alpha2_ClusterAutoscalerConfig_To_kops_ClusterAutoscalerConfi out.Enabled = in.Enabled out.Expander = in.Expander out.BalanceSimilarNodeGroups = in.BalanceSimilarNodeGroups + out.EmitPerNodegroupMetrics = in.EmitPerNodegroupMetrics out.AWSUseStaticInstanceList = in.AWSUseStaticInstanceList out.IgnoreDaemonSetsUtilization = in.IgnoreDaemonSetsUtilization out.ScaleDownUtilizationThreshold = in.ScaleDownUtilizationThreshold @@ -2343,6 +2344,7 @@ func autoConvert_kops_ClusterAutoscalerConfig_To_v1alpha2_ClusterAutoscalerConfi out.Enabled = in.Enabled out.Expander = in.Expander out.BalanceSimilarNodeGroups = in.BalanceSimilarNodeGroups + out.EmitPerNodegroupMetrics = in.EmitPerNodegroupMetrics out.AWSUseStaticInstanceList = in.AWSUseStaticInstanceList out.IgnoreDaemonSetsUtilization = in.IgnoreDaemonSetsUtilization out.ScaleDownUtilizationThreshold = in.ScaleDownUtilizationThreshold diff --git a/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go b/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go index dbc6565237f58..8ff8ec0de024f 100644 --- a/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go +++ b/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go @@ -935,6 +935,11 @@ func (in *ClusterAutoscalerConfig) DeepCopyInto(out *ClusterAutoscalerConfig) { *out = new(bool) **out = **in } + if in.EmitPerNodegroupMetrics != nil { + in, out := &in.EmitPerNodegroupMetrics, &out.EmitPerNodegroupMetrics + *out = new(bool) + **out = **in + } if in.AWSUseStaticInstanceList != nil { in, out := &in.AWSUseStaticInstanceList, &out.AWSUseStaticInstanceList *out = new(bool) diff --git a/pkg/apis/kops/v1alpha3/componentconfig.go b/pkg/apis/kops/v1alpha3/componentconfig.go index 618d4105d5c81..ae7b5205d3622 100644 --- a/pkg/apis/kops/v1alpha3/componentconfig.go +++ b/pkg/apis/kops/v1alpha3/componentconfig.go @@ -1080,6 +1080,9 @@ type ClusterAutoscalerConfig struct { // BalanceSimilarNodeGroups makes the cluster autoscaler treat similar node groups as one. // Default: false BalanceSimilarNodeGroups *bool `json:"balanceSimilarNodeGroups,omitempty"` + // EmitPerNodegroupMetrics If true, publishes the node groups min and max metrics count set on the cluster autoscaler. + // Default: false + EmitPerNodegroupMetrics *bool `json:"emitPerNodegroupMetrics,omitempty"` // AWSUseStaticInstanceList makes the cluster autoscaler to use statically defined set of AWS EC2 Instance List. // Default: false AWSUseStaticInstanceList *bool `json:"awsUseStaticInstanceList,omitempty"` diff --git a/pkg/apis/kops/v1alpha3/zz_generated.conversion.go b/pkg/apis/kops/v1alpha3/zz_generated.conversion.go index 054d95b16c4b3..018dedabd22dc 100644 --- a/pkg/apis/kops/v1alpha3/zz_generated.conversion.go +++ b/pkg/apis/kops/v1alpha3/zz_generated.conversion.go @@ -2559,6 +2559,7 @@ func autoConvert_v1alpha3_ClusterAutoscalerConfig_To_kops_ClusterAutoscalerConfi out.Enabled = in.Enabled out.Expander = in.Expander out.BalanceSimilarNodeGroups = in.BalanceSimilarNodeGroups + out.EmitPerNodegroupMetrics = in.EmitPerNodegroupMetrics out.AWSUseStaticInstanceList = in.AWSUseStaticInstanceList out.IgnoreDaemonSetsUtilization = in.IgnoreDaemonSetsUtilization out.ScaleDownUtilizationThreshold = in.ScaleDownUtilizationThreshold @@ -2589,6 +2590,7 @@ func autoConvert_kops_ClusterAutoscalerConfig_To_v1alpha3_ClusterAutoscalerConfi out.Enabled = in.Enabled out.Expander = in.Expander out.BalanceSimilarNodeGroups = in.BalanceSimilarNodeGroups + out.EmitPerNodegroupMetrics = in.EmitPerNodegroupMetrics out.AWSUseStaticInstanceList = in.AWSUseStaticInstanceList out.IgnoreDaemonSetsUtilization = in.IgnoreDaemonSetsUtilization out.ScaleDownUtilizationThreshold = in.ScaleDownUtilizationThreshold diff --git a/pkg/apis/kops/v1alpha3/zz_generated.deepcopy.go b/pkg/apis/kops/v1alpha3/zz_generated.deepcopy.go index a51e80a2be3da..da0210f460443 100644 --- a/pkg/apis/kops/v1alpha3/zz_generated.deepcopy.go +++ b/pkg/apis/kops/v1alpha3/zz_generated.deepcopy.go @@ -897,6 +897,11 @@ func (in *ClusterAutoscalerConfig) DeepCopyInto(out *ClusterAutoscalerConfig) { *out = new(bool) **out = **in } + if in.EmitPerNodegroupMetrics != nil { + in, out := &in.EmitPerNodegroupMetrics, &out.EmitPerNodegroupMetrics + *out = new(bool) + **out = **in + } if in.AWSUseStaticInstanceList != nil { in, out := &in.AWSUseStaticInstanceList, &out.AWSUseStaticInstanceList *out = new(bool) diff --git a/pkg/apis/kops/zz_generated.deepcopy.go b/pkg/apis/kops/zz_generated.deepcopy.go index 4e65dc86b78c7..6ab3ed067bfdb 100644 --- a/pkg/apis/kops/zz_generated.deepcopy.go +++ b/pkg/apis/kops/zz_generated.deepcopy.go @@ -994,6 +994,11 @@ func (in *ClusterAutoscalerConfig) DeepCopyInto(out *ClusterAutoscalerConfig) { *out = new(bool) **out = **in } + if in.EmitPerNodegroupMetrics != nil { + in, out := &in.EmitPerNodegroupMetrics, &out.EmitPerNodegroupMetrics + *out = new(bool) + **out = **in + } if in.AWSUseStaticInstanceList != nil { in, out := &in.AWSUseStaticInstanceList, &out.AWSUseStaticInstanceList *out = new(bool) diff --git a/pkg/model/components/clusterautoscaler.go b/pkg/model/components/clusterautoscaler.go index e8d2e01b7a8cc..36e9adbd0437e 100644 --- a/pkg/model/components/clusterautoscaler.go +++ b/pkg/model/components/clusterautoscaler.go @@ -83,6 +83,9 @@ func (b *ClusterAutoscalerOptionsBuilder) BuildOptions(o interface{}) error { if cas.BalanceSimilarNodeGroups == nil { cas.BalanceSimilarNodeGroups = fi.PtrTo(false) } + if cas.EmitPerNodegroupMetrics == nil { + cas.EmitPerNodegroupMetrics = fi.PtrTo(false) + } if cas.AWSUseStaticInstanceList == nil { cas.AWSUseStaticInstanceList = fi.PtrTo(false) } diff --git a/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-bootstrap_content b/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-bootstrap_content index 0e98d5c643a80..f0d4071af08f2 100644 --- a/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-bootstrap_content @@ -41,7 +41,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: 963767d82e85200787e166f3cc6e7b3b9e60d2383c9fef71a562d9e4eedd7086 + manifestHash: e4817b8481df3f556c19999b552e60c6305ce8063481c6ec5d987f225aa686ad name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index 08a8b78c01896..d7205fcbe42fc 100644 --- a/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cas-priority-expander-custom.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -350,6 +350,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=aws - --aws-use-static-instance-list=false - --expander=priority diff --git a/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cluster-completed.spec_content index 91222cd739bd4..2105f7fc1c90b 100644 --- a/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/cluster-autoscaler-priority-expander-custom/data/aws_s3_object_cluster-completed.spec_content @@ -34,6 +34,7 @@ spec: - .*low.* "100": - .*high.* + emitPerNodegroupMetrics: false enabled: true expander: priority ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-bootstrap_content b/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-bootstrap_content index ef91c985f7416..3c3192c2e3d08 100644 --- a/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-bootstrap_content @@ -41,7 +41,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: d28605db2e6ade6fee371d462c0e9893871ea73a35ad598fa616a2657290d319 + manifestHash: 8c697d6e92263502eeeb637b47669c5fbb3ba11cd82c90a653cddb42060e7fe5 name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index 20391ec29a9db..3a6c1d387b8d8 100644 --- a/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cas-priority-expander.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -350,6 +350,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=aws - --aws-use-static-instance-list=false - --expander=priority diff --git a/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cluster-completed.spec_content index cbd05c58eba85..7402134dcecd4 100644 --- a/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/cluster-autoscaler-priority-expander/data/aws_s3_object_cluster-completed.spec_content @@ -27,6 +27,7 @@ spec: awsUseStaticInstanceList: false balanceSimilarNodeGroups: false createPriorityExpanderConfig: true + emitPerNodegroupMetrics: false enabled: true expander: priority ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_cluster-completed.spec_content index b64ed14bfec94..6db2bc32363f6 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_cluster-completed.spec_content @@ -30,6 +30,7 @@ spec: clusterAutoscaler: awsUseStaticInstanceList: false balanceSimilarNodeGroups: false + emitPerNodegroupMetrics: false enabled: true expander: random ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-bootstrap_content index bfb1ff5bfa704..fcfb54d592ac9 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-bootstrap_content @@ -41,7 +41,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: 10a6f07c81b4244162cf161255fd1aae420c1eada3e262aabe4f6930b2f5a65f + manifestHash: 3764bb2698fcd6ad15853cf437c1664e7f46acfee77fdc3c686f1aa000ab4006 name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index 62edcfe5edc57..61f8f442f9d8b 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -321,6 +321,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=aws - --aws-use-static-instance-list=false - --expander=random diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_cluster-completed.spec_content index d86e71348573b..f8c612068e496 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_cluster-completed.spec_content @@ -30,6 +30,7 @@ spec: clusterAutoscaler: awsUseStaticInstanceList: false balanceSimilarNodeGroups: false + emitPerNodegroupMetrics: false enabled: true expander: random ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-bootstrap_content index 80a11e401f5c6..51c9af1072fc5 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-bootstrap_content @@ -48,7 +48,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: 114e13595bf4571c767f786144e013bc2b100fa35d23c83ecc8af940c4455cf4 + manifestHash: c03c6c1e8806b7e572506d2018bdbb9c314f5bc207473d85e95e7308af4d5193 name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index f90bec89b989d..2f1927d79ec50 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa25/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -321,6 +321,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=aws - --aws-use-static-instance-list=false - --expander=random diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_cluster-completed.spec_content index f4260f77e3715..29cd00a6bd98c 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_cluster-completed.spec_content @@ -30,6 +30,7 @@ spec: clusterAutoscaler: awsUseStaticInstanceList: false balanceSimilarNodeGroups: false + emitPerNodegroupMetrics: false enabled: true expander: random ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-bootstrap_content index 0c1678bf1a730..779450c0230b4 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-bootstrap_content @@ -49,7 +49,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: 10a6f07c81b4244162cf161255fd1aae420c1eada3e262aabe4f6930b2f5a65f + manifestHash: 3764bb2698fcd6ad15853cf437c1664e7f46acfee77fdc3c686f1aa000ab4006 name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index 62edcfe5edc57..61f8f442f9d8b 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa26/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -321,6 +321,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=aws - --aws-use-static-instance-list=false - --expander=random diff --git a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_cluster-completed.spec_content index d919b067e1403..fe316e64e4a88 100644 --- a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_cluster-completed.spec_content @@ -31,6 +31,7 @@ spec: clusterAutoscaler: awsUseStaticInstanceList: false balanceSimilarNodeGroups: false + emitPerNodegroupMetrics: false enabled: true expander: random ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-bootstrap_content index 72c9b076bfdd5..5651386dd4566 100644 --- a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-bootstrap_content @@ -41,7 +41,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: 39af22339588beb7c2fd4b2b5c9e060a6c84a9fc2d8efac9b078a9ffff64753f + manifestHash: 45d2bf5133e21bd182463572db9f524648214e3123c8273609d0112cd9ca925a name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index d68f375925e78..8ee1951ec6bd4 100644 --- a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -327,6 +327,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=aws - --aws-use-static-instance-list=false - --expander=random diff --git a/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_cluster-completed.spec_content index 4ee0fdc228309..a77f3cc8fb702 100644 --- a/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_cluster-completed.spec_content @@ -31,6 +31,7 @@ spec: clusterAutoscaler: awsUseStaticInstanceList: false balanceSimilarNodeGroups: false + emitPerNodegroupMetrics: false enabled: true expander: random ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-bootstrap_content index 61ba157b9ff9c..5f415d3fe3afd 100644 --- a/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-bootstrap_content @@ -41,7 +41,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: 83138df304119f6137709766b9f76c23743f5cfc2a0d9400fb6e51444e15fde4 + manifestHash: a60534cf6f674d86d17a32490fef182ebf5d821523402ea8cbb1d589eaec5031 name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index 5915edfd7dad0..c965962623ef0 100644 --- a/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/many-addons-gce/data/aws_s3_object_minimal.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -327,6 +327,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=gce - --expander=random - --nodes=1:1:https://www.googleapis.com/compute/v1/projects/testproject/zones/us-test1-a/instanceGroups/a-nodes-minimal-example-com diff --git a/tests/integration/update_cluster/many-addons/data/aws_s3_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons/data/aws_s3_object_cluster-completed.spec_content index 75d05cf3ad330..01d9f6eeda019 100644 --- a/tests/integration/update_cluster/many-addons/data/aws_s3_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons/data/aws_s3_object_cluster-completed.spec_content @@ -31,6 +31,7 @@ spec: clusterAutoscaler: awsUseStaticInstanceList: false balanceSimilarNodeGroups: false + emitPerNodegroupMetrics: false enabled: true expander: random ignoreDaemonSetsUtilization: false diff --git a/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-bootstrap_content index f8964f7ebc412..7f58f6d3cd79b 100644 --- a/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-bootstrap_content @@ -41,7 +41,7 @@ spec: version: 9.99.0 - id: k8s-1.15 manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml - manifestHash: 48d9a078fde2ad3617492f8bae23edac27fdf0d9b6102d298623b8ccf010a708 + manifestHash: 44be0298541ea2f643250d74df219ea0846304d14bbb49529773830e028106e9 name: cluster-autoscaler.addons.k8s.io selector: k8s-addon: cluster-autoscaler.addons.k8s.io diff --git a/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content b/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content index 19cbf78da82d9..8d447eee7a801 100644 --- a/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content +++ b/tests/integration/update_cluster/many-addons/data/aws_s3_object_many-addons.example.com-addons-cluster-autoscaler.addons.k8s.io-k8s-1.15_content @@ -328,6 +328,7 @@ spec: - command: - ./cluster-autoscaler - --balance-similar-node-groups=false + - --emit-per-nodegroup-metrics=false - --cloud-provider=aws - --aws-use-static-instance-list=false - --expander=random diff --git a/upup/models/cloudup/resources/addons/cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml.template b/upup/models/cloudup/resources/addons/cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml.template index eda1be96c5f8b..a3119ccc8343a 100644 --- a/upup/models/cloudup/resources/addons/cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml.template +++ b/upup/models/cloudup/resources/addons/cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml.template @@ -333,6 +333,7 @@ spec: command: - ./cluster-autoscaler - --balance-similar-node-groups={{ .BalanceSimilarNodeGroups }} + - --emit-per-nodegroup-metrics={{ .EmitPerNodegroupMetrics }} - --cloud-provider={{ GetCloudProvider }} {{ if (eq GetCloudProvider "aws") }} - --aws-use-static-instance-list={{ .AWSUseStaticInstanceList }}