Skip to content

Commit 38aead0

Browse files
authored
Merge pull request #9360 from zalando-incubator/karpenter-v1.4.0
Update Karpenter to v1.4.0
2 parents 5909bda + 45269f4 commit 38aead0

File tree

5 files changed

+27
-11
lines changed

5 files changed

+27
-11
lines changed

cluster/manifests/z-karpenter/01-serviceaccount.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,4 @@ metadata:
1414
{{- else}}
1515
iam.amazonaws.com/role: '{{ .Cluster.LocalID }}-app-karpenter'
1616
{{- end}}
17+
automountServiceAccountToken: false

cluster/manifests/z-karpenter/07-karpenter.k8s.aws_ec2nodeclasses.yaml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
33
kind: CustomResourceDefinition
44
metadata:
55
annotations:
6-
controller-gen.kubebuilder.io/version: v0.17.2
6+
controller-gen.kubebuilder.io/version: v0.17.3
77
name: ec2nodeclasses.karpenter.k8s.aws
88
spec:
99
group: karpenter.k8s.aws
@@ -111,6 +111,9 @@ spec:
111111
Owner is the owner for the ami.
112112
You can specify a combination of AWS account IDs, "self", "amazon", and "aws-marketplace"
113113
type: string
114+
ssmParameter:
115+
description: SSMParameter is the name (or ARN) of the SSM parameter containing the Image ID.
116+
type: string
114117
tags:
115118
additionalProperties:
116119
type: string
@@ -127,8 +130,8 @@ spec:
127130
minItems: 1
128131
type: array
129132
x-kubernetes-validations:
130-
- message: expected at least one, got none, ['tags', 'id', 'name', 'alias']
131-
rule: self.all(x, has(x.tags) || has(x.id) || has(x.name) || has(x.alias))
133+
- message: expected at least one, got none, ['tags', 'id', 'name', 'alias', 'ssmParameter']
134+
rule: self.all(x, has(x.tags) || has(x.id) || has(x.name) || has(x.alias) || has(x.ssmParameter))
132135
- message: '''id'' is mutually exclusive, cannot be set with a combination of other fields in amiSelectorTerms'
133136
rule: '!self.exists(x, has(x.id) && (has(x.alias) || has(x.tags) || has(x.name) || has(x.owner)))'
134137
- message: '''alias'' is mutually exclusive, cannot be set with a combination of other fields in amiSelectorTerms'
@@ -181,7 +184,7 @@ spec:
181184
format: int64
182185
type: integer
183186
kmsKeyID:
184-
description: KMSKeyID (ARN) of the symmetric Key Management Service (KMS) CMK used for encryption.
187+
description: Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for EBS encryption.
185188
type: string
186189
snapshotID:
187190
description: SnapshotID is the ID of an EBS snapshot

cluster/manifests/z-karpenter/08-karpenter.sh_nodeclaims.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
33
kind: CustomResourceDefinition
44
metadata:
55
annotations:
6-
controller-gen.kubebuilder.io/version: v0.17.2
6+
controller-gen.kubebuilder.io/version: v0.17.3
77
name: nodeclaims.karpenter.sh
88
spec:
99
group: karpenter.sh
@@ -51,6 +51,10 @@ spec:
5151
name: NodeClass
5252
priority: 1
5353
type: string
54+
- jsonPath: .status.conditions[?(@.type=="Drifted")].status
55+
name: Drifted
56+
priority: 1
57+
type: string
5458
name: v1
5559
schema:
5660
openAPIV3Schema:
@@ -83,7 +87,7 @@ spec:
8387
before terminating a node, measured from when the node is created. This
8488
is useful to implement features like eventually consistent node upgrade,
8589
memory leak protection, and disruption testing.
86-
pattern: ^(([0-9]+(s|m|h))+)|(Never)$
90+
pattern: ^(([0-9]+(s|m|h))+|Never)$
8791
type: string
8892
nodeClassRef:
8993
description: NodeClassRef is a reference to an object that defines provider specific configuration

cluster/manifests/z-karpenter/09-karpenter.sh_nodepools.yaml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
33
kind: CustomResourceDefinition
44
metadata:
55
annotations:
6-
controller-gen.kubebuilder.io/version: v0.17.2
6+
controller-gen.kubebuilder.io/version: v0.17.3
77
name: nodepools.karpenter.sh
88
spec:
99
group: karpenter.sh
@@ -144,7 +144,7 @@ spec:
144144
ConsolidateAfter is the duration the controller will wait
145145
before attempting to terminate nodes that are underutilized.
146146
Refer to ConsolidationPolicy for how underutilization is considered.
147-
pattern: ^(([0-9]+(s|m|h))+)|(Never)$
147+
pattern: ^(([0-9]+(s|m|h))+|Never)$
148148
type: string
149149
consolidationPolicy:
150150
default: WhenEmptyOrUnderutilized
@@ -222,7 +222,7 @@ spec:
222222
before terminating a node, measured from when the node is created. This
223223
is useful to implement features like eventually consistent node upgrade,
224224
memory leak protection, and disruption testing.
225-
pattern: ^(([0-9]+(s|m|h))+)|(Never)$
225+
pattern: ^(([0-9]+(s|m|h))+|Never)$
226226
type: string
227227
nodeClassRef:
228228
description: NodeClassRef is a reference to an object that defines provider specific configuration
@@ -500,6 +500,12 @@ spec:
500500
- type
501501
type: object
502502
type: array
503+
nodeClassObservedGeneration:
504+
description: |-
505+
NodeClassObservedGeneration represents the observed nodeClass generation for referenced nodeClass. If this does not match
506+
the actual NodeClass Generation, NodeRegistrationHealthy status condition on the NodePool will be reset
507+
format: int64
508+
type: integer
503509
resources:
504510
additionalProperties:
505511
anyOf:

cluster/manifests/z-karpenter/deployment.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ spec:
5050
drop:
5151
- ALL
5252
readOnlyRootFilesystem: true
53-
image: "container-registry.zalando.net/teapot/karpenter:1.3.2-main-36.patched"
53+
image: "container-registry.zalando.net/teapot/karpenter:1.4.0-main-38.patched"
5454
imagePullPolicy: IfNotPresent
5555
env:
5656
- name: KUBERNETES_MIN_VERSION
@@ -88,13 +88,15 @@ spec:
8888
divisor: "0"
8989
resource: limits.memory
9090
- name: FEATURE_GATES
91-
value: "Drift=false,SpotToSpotConsolidation=true"
91+
value: "Drift=false,SpotToSpotConsolidation=true,NodeRepair=false"
9292
- name: BATCH_MAX_DURATION
9393
value: "10s"
9494
- name: BATCH_IDLE_DURATION
9595
value: "1s"
9696
- name: ASSUME_ROLE_DURATION
9797
value: "15m"
98+
- name: PREFERENCE_POLICY
99+
value: "Respect"
98100
- name: CLUSTER_NAME
99101
value: "{{.Cluster.Name }}"
100102
- name: VM_MEMORY_OVERHEAD_PERCENT

0 commit comments

Comments
 (0)