From c1042f4a3bd03bbe6ac9af1382fa91a52dfa72c1 Mon Sep 17 00:00:00 2001 From: DingGGu Date: Thu, 7 Apr 2022 23:23:06 +0900 Subject: [PATCH] Bump NTH 1.16 and add excludeFromLoadBalancers option --- k8s/crds/kops.k8s.io_clusters.yaml | 5 ++ pkg/apis/kops/componentconfig.go | 3 + pkg/apis/kops/v1alpha2/componentconfig.go | 3 + pkg/apis/kops/v1alpha3/componentconfig.go | 3 + .../components/nodeterminationhandler.go | 5 +- ...cket_object_cluster-completed.spec_content | 2 +- ...nimal.example.com-addons-bootstrap_content | 2 +- ...e-termination-handler.aws-k8s-1.11_content | 20 ++++++- ...cket_object_cluster-completed.spec_content | 2 +- ...nimal.example.com-addons-bootstrap_content | 2 +- ...e-termination-handler.aws-k8s-1.11_content | 20 ++++++- ...cket_object_cluster-completed.spec_content | 2 +- ...nimal.example.com-addons-bootstrap_content | 2 +- ...e-termination-handler.aws-k8s-1.11_content | 20 ++++++- ...cket_object_cluster-completed.spec_content | 2 +- ...nimal.example.com-addons-bootstrap_content | 2 +- ...e-termination-handler.aws-k8s-1.11_content | 20 ++++++- ...cket_object_cluster-completed.spec_content | 2 +- ...rname.example.com-addons-bootstrap_content | 4 +- ...e-termination-handler.aws-k8s-1.11_content | 20 ++++++- .../k8s-1.11.yaml.template | 58 ++++++++++++------- 21 files changed, 151 insertions(+), 48 deletions(-) diff --git a/k8s/crds/kops.k8s.io_clusters.yaml b/k8s/crds/kops.k8s.io_clusters.yaml index f280e54255..c3a3902cf1 100644 --- a/k8s/crds/kops.k8s.io_clusters.yaml +++ b/k8s/crds/kops.k8s.io_clusters.yaml @@ -5241,6 +5241,11 @@ spec: description: 'Enabled enables the node termination handler. Default: true' type: boolean + excludeFromLoadBalancers: + description: 'ExcludeFromLoadBalancers makes node termination + handler will mark for exclusion from load balancers before node + are cordoned. Default: false' + type: boolean managedASGTag: description: ManagedASGTag is the tag used to determine which nodes NTH can take action on diff --git a/pkg/apis/kops/componentconfig.go b/pkg/apis/kops/componentconfig.go index ecac369d95..0add5ca5b3 100644 --- a/pkg/apis/kops/componentconfig.go +++ b/pkg/apis/kops/componentconfig.go @@ -921,6 +921,9 @@ type NodeTerminationHandlerConfig struct { // EnableRebalanceDraining makes node termination handler drain nodes when the rebalance recommendation notice is received // Default: false EnableRebalanceDraining *bool `json:"enableRebalanceDraining,omitempty"` + // ExcludeFromLoadBalancers makes node termination handler will mark for exclusion from load balancers before node are cordoned. + // Default: false + ExcludeFromLoadBalancers *bool `json:"excludeFromLoadBalancers,omitempty"` // EnablePrometheusMetrics enables the "/metrics" endpoint. EnablePrometheusMetrics *bool `json:"prometheusEnable,omitempty"` diff --git a/pkg/apis/kops/v1alpha2/componentconfig.go b/pkg/apis/kops/v1alpha2/componentconfig.go index 0447c5798c..92c2fb3a11 100644 --- a/pkg/apis/kops/v1alpha2/componentconfig.go +++ b/pkg/apis/kops/v1alpha2/componentconfig.go @@ -944,6 +944,9 @@ type NodeTerminationHandlerConfig struct { // EnableRebalanceDraining makes node termination handler drain nodes when the rebalance recommendation notice is received // Default: false EnableRebalanceDraining *bool `json:"enableRebalanceDraining,omitempty"` + // ExcludeFromLoadBalancers makes node termination handler will mark for exclusion from load balancers before node are cordoned. + // Default: false + ExcludeFromLoadBalancers *bool `json:"excludeFromLoadBalancers,omitempty"` // EnablePrometheusMetrics enables the "/metrics" endpoint. EnablePrometheusMetrics *bool `json:"prometheusEnable,omitempty"` diff --git a/pkg/apis/kops/v1alpha3/componentconfig.go b/pkg/apis/kops/v1alpha3/componentconfig.go index 6a007456f2..e307d93cc1 100644 --- a/pkg/apis/kops/v1alpha3/componentconfig.go +++ b/pkg/apis/kops/v1alpha3/componentconfig.go @@ -918,6 +918,9 @@ type NodeTerminationHandlerConfig struct { // EnableRebalanceDraining makes node termination handler drain nodes when the rebalance recommendation notice is received // Default: false EnableRebalanceDraining *bool `json:"enableRebalanceDraining,omitempty"` + // ExcludeFromLoadBalancers makes node termination handler will mark for exclusion from load balancers before node are cordoned. + // Default: false + ExcludeFromLoadBalancers *bool `json:"excludeFromLoadBalancers,omitempty"` // EnablePrometheusMetrics enables the "/metrics" endpoint. EnablePrometheusMetrics *bool `json:"prometheusEnable,omitempty"` diff --git a/pkg/model/components/nodeterminationhandler.go b/pkg/model/components/nodeterminationhandler.go index a73da8681f..a1143da298 100644 --- a/pkg/model/components/nodeterminationhandler.go +++ b/pkg/model/components/nodeterminationhandler.go @@ -51,6 +51,9 @@ func (b *NodeTerminationHandlerOptionsBuilder) BuildOptions(o interface{}) error if nth.EnableRebalanceDraining == nil { nth.EnableRebalanceDraining = fi.Bool(false) } + if nth.ExcludeFromLoadBalancers == nil { + nth.ExcludeFromLoadBalancers = fi.Bool(false) + } if nth.EnablePrometheusMetrics == nil { nth.EnablePrometheusMetrics = fi.Bool(false) @@ -75,7 +78,7 @@ func (b *NodeTerminationHandlerOptionsBuilder) BuildOptions(o interface{}) error } if nth.Version == nil { - nth.Version = fi.String("v1.14.0") + nth.Version = fi.String("v1.16.0") } return nil diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_cluster-completed.spec_content index 7de867fd77..28fe5f26e2 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_cluster-completed.spec_content @@ -215,7 +215,7 @@ spec: managedASGTag: aws-node-termination-handler/managed memoryRequest: 64Mi prometheusEnable: false - version: v1.14.0 + version: v1.16.0 nonMasqueradeCIDR: 172.20.0.0/16 podCIDR: 172.20.128.0/17 secretStore: memfs://clusters.example.com/minimal.example.com/secrets diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content index 833e1353be..49654bd71f 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content @@ -60,7 +60,7 @@ spec: version: 9.99.0 - id: k8s-1.11 manifest: node-termination-handler.aws/k8s-1.11.yaml - manifestHash: b0be9a82a9215b10ce4aefa09589e86d754b7484722db7488a8cf3bbaa2ccc3f + manifestHash: 6e62a1c8571cb21128ad340359472875cda7091c13890a813f54c02a2cadeeab name: node-termination-handler.aws prune: kinds: diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content index 2140f3ced8..b595b3b92e 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content @@ -4,10 +4,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -21,7 +23,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler rules: @@ -68,7 +75,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler roleRef: @@ -91,7 +103,7 @@ metadata: app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -170,6 +182,8 @@ spec: value: "false" - name: TAINT_NODE value: "false" + - name: EXCLUDE_FROM_LOAD_BALANCERS + value: "false" - name: JSON_LOGGING value: "true" - name: ENABLE_PROMETHEUS_SERVER @@ -193,7 +207,7 @@ spec: value: arn:aws-test:iam::123456789012:role/aws-node-termination-handler.kube-system.sa.minimal.example.com - name: AWS_WEB_IDENTITY_TOKEN_FILE value: /var/run/secrets/amazonaws.com/token - image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.14.0 + image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.16.0 imagePullPolicy: IfNotPresent name: aws-node-termination-handler resources: diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_cluster-completed.spec_content index 83014d0b9b..9c6cc65fc8 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_cluster-completed.spec_content @@ -225,7 +225,7 @@ spec: managedASGTag: aws-node-termination-handler/managed memoryRequest: 64Mi prometheusEnable: false - version: v1.14.0 + version: v1.16.0 nonMasqueradeCIDR: 172.20.0.0/16 podCIDR: 172.20.128.0/17 secretStore: memfs://clusters.example.com/minimal.example.com/secrets diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content index 4093fd14ff..e715d5167e 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content @@ -67,7 +67,7 @@ spec: version: 9.99.0 - id: k8s-1.11 manifest: node-termination-handler.aws/k8s-1.11.yaml - manifestHash: b0be9a82a9215b10ce4aefa09589e86d754b7484722db7488a8cf3bbaa2ccc3f + manifestHash: 6e62a1c8571cb21128ad340359472875cda7091c13890a813f54c02a2cadeeab name: node-termination-handler.aws prune: kinds: diff --git a/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content b/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content index 2140f3ced8..b595b3b92e 100644 --- a/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content +++ b/tests/integration/update_cluster/many-addons-ccm-irsa23/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content @@ -4,10 +4,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -21,7 +23,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler rules: @@ -68,7 +75,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler roleRef: @@ -91,7 +103,7 @@ metadata: app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -170,6 +182,8 @@ spec: value: "false" - name: TAINT_NODE value: "false" + - name: EXCLUDE_FROM_LOAD_BALANCERS + value: "false" - name: JSON_LOGGING value: "true" - name: ENABLE_PROMETHEUS_SERVER @@ -193,7 +207,7 @@ spec: value: arn:aws-test:iam::123456789012:role/aws-node-termination-handler.kube-system.sa.minimal.example.com - name: AWS_WEB_IDENTITY_TOKEN_FILE value: /var/run/secrets/amazonaws.com/token - image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.14.0 + image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.16.0 imagePullPolicy: IfNotPresent name: aws-node-termination-handler resources: diff --git a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_cluster-completed.spec_content index d87f778fb2..6014a4f06c 100644 --- a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_cluster-completed.spec_content @@ -214,7 +214,7 @@ spec: managedASGTag: aws-node-termination-handler/managed memoryRequest: 64Mi prometheusEnable: false - version: v1.14.0 + version: v1.16.0 nonMasqueradeCIDR: 172.20.0.0/16 podCIDR: 172.20.128.0/17 secretStore: memfs://clusters.example.com/minimal.example.com/secrets diff --git a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content index 03efb40c4c..c7d6896d16 100644 --- a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content @@ -60,7 +60,7 @@ spec: version: 9.99.0 - id: k8s-1.11 manifest: node-termination-handler.aws/k8s-1.11.yaml - manifestHash: bbdad2ac50bd56f8e8c0333fa0e26cea5434fc6621ba981b239ed52f62be2cee + manifestHash: fcddbd34a97f88271341cf1f73c8610094d1daf79771436643a4bbdf2eee61e4 name: node-termination-handler.aws prune: kinds: diff --git a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content index 8d4a6eb79c..5c8349bab1 100644 --- a/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content +++ b/tests/integration/update_cluster/many-addons-ccm/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content @@ -4,10 +4,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -21,7 +23,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler rules: @@ -68,7 +75,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler roleRef: @@ -91,7 +103,7 @@ metadata: app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -175,6 +187,8 @@ spec: value: "false" - name: TAINT_NODE value: "false" + - name: EXCLUDE_FROM_LOAD_BALANCERS + value: "false" - name: JSON_LOGGING value: "true" - name: ENABLE_PROMETHEUS_SERVER @@ -197,7 +211,7 @@ spec: value: "8080" - name: PROBES_SERVER_ENDPOINT value: /healthz - image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.14.0 + image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.16.0 imagePullPolicy: IfNotPresent name: aws-node-termination-handler resources: diff --git a/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_cluster-completed.spec_content b/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_cluster-completed.spec_content index f0b2caa5e8..390c2045b2 100644 --- a/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_cluster-completed.spec_content @@ -205,7 +205,7 @@ spec: managedASGTag: aws-node-termination-handler/managed memoryRequest: 64Mi prometheusEnable: false - version: v1.14.0 + version: v1.16.0 nonMasqueradeCIDR: 172.20.0.0/16 podCIDR: 172.20.128.0/17 secretStore: memfs://clusters.example.com/minimal.example.com/secrets diff --git a/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content b/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content index 68084e59ac..bdb67ae0e7 100644 --- a/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-bootstrap_content @@ -60,7 +60,7 @@ spec: version: 9.99.0 - id: k8s-1.11 manifest: node-termination-handler.aws/k8s-1.11.yaml - manifestHash: bbdad2ac50bd56f8e8c0333fa0e26cea5434fc6621ba981b239ed52f62be2cee + manifestHash: fcddbd34a97f88271341cf1f73c8610094d1daf79771436643a4bbdf2eee61e4 name: node-termination-handler.aws prune: kinds: diff --git a/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content b/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content index 8d4a6eb79c..5c8349bab1 100644 --- a/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content +++ b/tests/integration/update_cluster/many-addons/data/aws_s3_bucket_object_minimal.example.com-addons-node-termination-handler.aws-k8s-1.11_content @@ -4,10 +4,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -21,7 +23,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler rules: @@ -68,7 +75,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler roleRef: @@ -91,7 +103,7 @@ metadata: app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -175,6 +187,8 @@ spec: value: "false" - name: TAINT_NODE value: "false" + - name: EXCLUDE_FROM_LOAD_BALANCERS + value: "false" - name: JSON_LOGGING value: "true" - name: ENABLE_PROMETHEUS_SERVER @@ -197,7 +211,7 @@ spec: value: "8080" - name: PROBES_SERVER_ENDPOINT value: /healthz - image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.14.0 + image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.16.0 imagePullPolicy: IfNotPresent name: aws-node-termination-handler resources: diff --git a/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_cluster-completed.spec_content b/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_cluster-completed.spec_content index 0e0e0d807e..45242614bd 100644 --- a/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_cluster-completed.spec_content +++ b/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_cluster-completed.spec_content @@ -170,7 +170,7 @@ spec: managedASGTag: aws-node-termination-handler/managed memoryRequest: 64Mi prometheusEnable: false - version: v1.14.0 + version: v1.16.0 nonMasqueradeCIDR: 100.64.0.0/10 podCIDR: 100.96.0.0/11 secretStore: memfs://clusters.example.com/nthsqsresources.longclustername.example.com/secrets diff --git a/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-bootstrap_content b/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-bootstrap_content index 87bf8b4c40..cac3c223e0 100644 --- a/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-bootstrap_content +++ b/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-bootstrap_content @@ -47,7 +47,7 @@ spec: version: 9.99.0 - id: k8s-1.11 manifest: node-termination-handler.aws/k8s-1.11.yaml - manifestHash: e8aeccc2a21370e9579e49c153c5e46c92a3bc705bcc2545957133dadd395114 + manifestHash: e37bd0e876b0b811ff0a4ec68e163ad919c16f1ec056bfc9243615f5b8493db4 name: node-termination-handler.aws prune: kinds: @@ -73,8 +73,6 @@ spec: - group: policy kind: PodDisruptionBudget labelSelector: addon.kops.k8s.io/name=node-termination-handler.aws,app.kubernetes.io/managed-by=kops - namespaces: - - kube-system - group: rbac.authorization.k8s.io kind: ClusterRole labelSelector: addon.kops.k8s.io/name=node-termination-handler.aws,app.kubernetes.io/managed-by=kops diff --git a/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-node-termination-handler.aws-k8s-1.11_content b/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-node-termination-handler.aws-k8s-1.11_content index 17c63a762f..f1b60c166a 100644 --- a/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-node-termination-handler.aws-k8s-1.11_content +++ b/tests/integration/update_cluster/nth_sqs_resources/data/aws_s3_bucket_object_nthsqsresources.longclustername.example.com-addons-node-termination-handler.aws-k8s-1.11_content @@ -4,10 +4,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -21,7 +23,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler rules: @@ -68,7 +75,12 @@ metadata: creationTimestamp: null labels: addon.kops.k8s.io/name: node-termination-handler.aws + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws name: aws-node-termination-handler roleRef: @@ -91,7 +103,7 @@ metadata: app.kubernetes.io/instance: aws-node-termination-handler app.kubernetes.io/managed-by: kops app.kubernetes.io/name: aws-node-termination-handler - app.kubernetes.io/version: v1.14.0 + app.kubernetes.io/version: v1.16.0 k8s-addon: node-termination-handler.aws k8s-app: aws-node-termination-handler name: aws-node-termination-handler @@ -186,6 +198,8 @@ spec: value: "false" - name: ENABLE_SQS_TERMINATION_DRAINING value: "true" + - name: EXCLUDE_FROM_LOAD_BALANCERS + value: "false" - name: QUEUE_URL value: https://sqs.us-test-1.amazonaws.com/123456789012/nthsqsresources-longclustername-example-com-nth - name: PROMETHEUS_SERVER_PORT @@ -208,7 +222,7 @@ spec: value: "true" - name: KUBERNETES_EVENTS_EXTRA_ANNOTATIONS value: "" - image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.14.0 + image: public.ecr.aws/aws-ec2/aws-node-termination-handler:v1.16.0 imagePullPolicy: IfNotPresent name: aws-node-termination-handler resources: diff --git a/upup/models/cloudup/resources/addons/node-termination-handler.aws/k8s-1.11.yaml.template b/upup/models/cloudup/resources/addons/node-termination-handler.aws/k8s-1.11.yaml.template index affc2a973a..449a5ba939 100644 --- a/upup/models/cloudup/resources/addons/node-termination-handler.aws/k8s-1.11.yaml.template +++ b/upup/models/cloudup/resources/addons/node-termination-handler.aws/k8s-1.11.yaml.template @@ -1,5 +1,5 @@ {{ with .NodeTerminationHandler }} -# Sourced from https://github.com/aws/aws-node-termination-handler/releases/download/v1.14.0/all-resources.yaml +# Sourced from https://github.com/aws/aws-node-termination-handler/releases/download/v1.16.0/all-resources.yaml --- # Source: aws-node-termination-handler/templates/serviceaccount.yaml apiVersion: v1 @@ -12,53 +12,67 @@ metadata: app.kubernetes.io/instance: aws-node-termination-handler k8s-app: aws-node-termination-handler app.kubernetes.io/version: "{{ .Version }}" + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler --- # Source: aws-node-termination-handler/templates/clusterrole.yaml kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: name: aws-node-termination-handler + labels: + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler + app.kubernetes.io/version: "{{ .Version }}" + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler rules: - apiGroups: - - "" + - "" resources: - - nodes + - nodes verbs: - - get - - list - - patch - - update + - get + - list + - patch + - update - apiGroups: - - "" + - "" resources: - - pods + - pods verbs: - - list - - get + - list + - get - apiGroups: - - "" + - "" resources: - - pods/eviction + - pods/eviction verbs: - - create + - create - apiGroups: - - extensions + - extensions resources: - - daemonsets + - daemonsets verbs: - - get + - get - apiGroups: - - apps + - apps resources: - - daemonsets + - daemonsets verbs: - - get + - get --- # Source: aws-node-termination-handler/templates/clusterrolebinding.yaml kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: aws-node-termination-handler + labels: + app.kubernetes.io/name: aws-node-termination-handler + app.kubernetes.io/instance: aws-node-termination-handler + app.kubernetes.io/version: "{{ .Version }}" + app.kubernetes.io/component: aws-node-termination-handler + app.kubernetes.io/part-of: aws-node-termination-handler subjects: - kind: ServiceAccount name: aws-node-termination-handler @@ -183,6 +197,8 @@ spec: value: "false" - name: ENABLE_SQS_TERMINATION_DRAINING value: "true" + - name: EXCLUDE_FROM_LOAD_BALANCERS + value: "{{ .ExcludeFromLoadBalancers }}" - name: QUEUE_URL value: "{{ DefaultQueueName }}" - name: PROMETHEUS_SERVER_PORT @@ -361,6 +377,8 @@ spec: value: "false" - name: TAINT_NODE value: "false" + - name: EXCLUDE_FROM_LOAD_BALANCERS + value: "{{ .ExcludeFromLoadBalancers }}" - name: JSON_LOGGING value: "true" - name: ENABLE_PROMETHEUS_SERVER