diff --git a/karpenter/addon/custom-values.yaml b/karpenter/addon/custom-values.yaml index 0d58a11..93cdf5e 100644 --- a/karpenter/addon/custom-values.yaml +++ b/karpenter/addon/custom-values.yaml @@ -14,6 +14,8 @@ controller: additionalAnnotations: a8r.io/owner: "user@k8s.com" a8r.io/runbook: "http://www.k8s.com" +nodeSelector: + node: infra replicas: 1 tolerations: - key: nodeInfra diff --git a/karpenter/addon/karpenter-addon.yaml b/karpenter/addon/karpenter-addon.yaml index 1bfa3a1..c668a55 100644 --- a/karpenter/addon/karpenter-addon.yaml +++ b/karpenter/addon/karpenter-addon.yaml @@ -8,7 +8,7 @@ spec: artifact: catalog: default-rafay chartName: karpenter - chartVersion: 0.35.4 + chartVersion: 1.0.1 valuesPaths: - name: file://custom-values.yaml options: diff --git a/karpenter/addon/nodepool-addon.yaml b/karpenter/addon/nodepool-addon.yaml index 48b3ac0..d9f9809 100644 --- a/karpenter/addon/nodepool-addon.yaml +++ b/karpenter/addon/nodepool-addon.yaml @@ -7,4 +7,4 @@ spec: namespace: karpenter template: type: NativeYaml - yamlFile: nodepool.yaml \ No newline at end of file + yamlFile: nodepool.yaml diff --git a/karpenter/addon/nodepool.yaml b/karpenter/addon/nodepool.yaml index 4fc1cf4..83dc08e 100644 --- a/karpenter/addon/nodepool.yaml +++ b/karpenter/addon/nodepool.yaml @@ -1,4 +1,4 @@ -apiVersion: karpenter.sh/v1beta1 +apiVersion: karpenter.sh/v1 kind: NodePool metadata: name: default @@ -21,26 +21,27 @@ spec: - key: karpenter.k8s.aws/instance-generation operator: Gt values: ["2"] - - key: karpenter.k8s.aws/instance-size - operator: In - values: ["medium", "large", "xlarge"] nodeClassRef: + group: karpenter.k8s.aws + kind: EC2NodeClass name: default limits: cpu: 1000 disruption: - consolidationPolicy: WhenUnderutilized - expireAfter: 720h # 30 * 24h = 720h + consolidationPolicy: + expireAfter: 720h # 30 * 24h = 720hconsolidateAfter: 1m + consolidateAfter: 1m --- -apiVersion: karpenter.k8s.aws/v1beta1 +apiVersion: karpenter.k8s.aws/v1 kind: EC2NodeClass metadata: name: default spec: + amiSelectorTerms: + - alias: al2@latest tags: email: k8s@k8s.co env: dev - amiFamily: AL2 # Amazon Linux 2 role: "KarpenterNodeRole-Rafay" subnetSelectorTerms: - tags: diff --git a/karpenter/cluster/cluster.yaml b/karpenter/cluster/cluster.yaml index cd4ee52..b34cc58 100644 --- a/karpenter/cluster/cluster.yaml +++ b/karpenter/cluster/cluster.yaml @@ -4,7 +4,7 @@ metadata: name: karpenter-cluster project: defaultproject spec: - blueprintConfig: + blueprintconfig: name: minimal cloudCredentials: aws-cloud-credential config: @@ -15,7 +15,13 @@ spec: version: latest - name: coredns version: latest - - name: aws-ebs-csi-driver + - configurationValues: |- + controller: + tolerations: + - effect: NoSchedule + key: nodeInfra + operator: Exists + name: aws-ebs-csi-driver version: latest iam: serviceAccounts: @@ -59,7 +65,7 @@ spec: withOIDC: true identityMappings: arns: - - arn: arn:aws:iam:::role/KarpenterNodeRole-Rafay + - arn: arn:aws:iam::679196758854:role/KarpenterNodeRole-Rafay group: - system:bootstrappers - system:nodes @@ -69,14 +75,14 @@ spec: desiredCapacity: 1 instanceType: t3.large labels: - nodes: infra + node: infra maxSize: 2 minSize: 0 name: infra-nodegroup taints: - effect: NoSchedule key: nodeInfra - version: "1.28" + version: "1.29" metadata: name: karpenter-cluster region: us-west-2 @@ -84,7 +90,7 @@ spec: cluster-name: karpenter-cluster email: env: - version: "1.28" + version: "1.29" vpc: autoAllocateIPv6: false cidr: 192.168.0.0/16 @@ -92,8 +98,10 @@ spec: privateAccess: true publicAccess: false systemComponentsPlacement: + nodeSelector: + node: infra tolerations: - effect: NoSchedule key: nodeInfra operator: Exists - type: aws-eks + type: aws-eks \ No newline at end of file