Skip to content

Commit

Permalink
Updated Helm Chart, Documentation, and Tests for Version Change (#7441)
Browse files Browse the repository at this point in the history
  • Loading branch information
edibble21 authored Nov 25, 2024
1 parent 75d966a commit 5a9af7c
Show file tree
Hide file tree
Showing 20 changed files with 21 additions and 37 deletions.
1 change: 1 addition & 0 deletions charts/karpenter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ cosign verify public.ecr.aws/karpenter/karpenter:1.0.0 \
| settings.featureGates.spotToSpotConsolidation | bool | `false` | spotToSpotConsolidation is ALPHA and is disabled by default. Setting this to true will enable spot replacement consolidation for both single and multi-node consolidation. |
| settings.interruptionQueue | string | `""` | Interruption queue is the name of the SQS queue used for processing interruption events from EC2 Interruption handling is disabled if not specified. Enabling interruption handling may require additional permissions on the controller service account. Additional permissions are outlined in the docs. |
| settings.isolatedVPC | bool | `false` | If true then assume we can't reach AWS services which don't have a VPC endpoint This also has the effect of disabling look-ups to the AWS pricing endpoint |
| settings.eksControlPlane | bool | `false` | Marking this true means that your cluster is running with an EKS control plane and Karpenter should attempt to discover cluster details from the DescribeCluster API |
| settings.reservedENIs | string | `"0"` | Reserved ENIs are not included in the calculations for max-pods or kube-reserved This is most often used in the VPC CNI custom networking setup https://docs.aws.amazon.com/eks/latest/userguide/cni-custom-network.html |
| settings.vmMemoryOverheadPercent | float | `0.075` | The VM memory overhead as a percent that will be subtracted from the total memory for all instance types. The value of `0.075` equals to 7.5%. |
| strategy | object | `{"rollingUpdate":{"maxUnavailable":1}}` | Strategy for updating the pod. |
Expand Down
4 changes: 4 additions & 0 deletions charts/karpenter/templates/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,10 @@ spec:
- name: ISOLATED_VPC
value: "{{ . }}"
{{- end }}
{{- with .Values.settings.eksControlPlane }}
- name: EKS_CONTROL_PLANE
value: "{{ . }}"
{{- end }}
{{- with .Values.settings.vmMemoryOverheadPercent }}
- name: VM_MEMORY_OVERHEAD_PERCENT
value: "{{ . }}"
Expand Down
2 changes: 2 additions & 0 deletions charts/karpenter/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,8 @@ settings:
# -- If true then assume we can't reach AWS services which don't have a VPC endpoint
# This also has the effect of disabling look-ups to the AWS pricing endpoint
isolatedVPC: false
# Marking this true means that your cluster is running with an EKS control plane and Karpenter should attempt to discover cluster details from the DescribeCluster API
eksControlPlane: false
# -- The VM memory overhead as a percent that will be subtracted from the total memory for all instance types. The value of `0.075` equals to 7.5%.
vmMemoryOverheadPercent: 0.075
# -- Interruption queue is the name of the SQS queue used for processing interruption events from EC2
Expand Down
2 changes: 2 additions & 0 deletions pkg/apis/v1/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ import (
coretest "sigs.k8s.io/karpenter/pkg/test"

"github.com/aws/karpenter-provider-aws/pkg/apis"
"github.com/aws/karpenter-provider-aws/pkg/operator/options"
"github.com/aws/karpenter-provider-aws/pkg/test"
)

Expand All @@ -43,6 +44,7 @@ func TestAPIs(t *testing.T) {
}

var _ = BeforeSuite(func() {
ctx = options.ToContext(ctx, test.Options())
env = coretest.NewEnvironment(coretest.WithCRDs(apis.CRDs...), coretest.WithCRDs(v1alpha1.CRDs...))
awsEnv = test.NewEnvironment(ctx, env)
})
Expand Down
7 changes: 0 additions & 7 deletions pkg/cloudprovider/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@ import (
v1 "github.com/aws/karpenter-provider-aws/pkg/apis/v1"
"github.com/aws/karpenter-provider-aws/pkg/cloudprovider"
"github.com/aws/karpenter-provider-aws/pkg/controllers/nodeclass/status"
controllersversion "github.com/aws/karpenter-provider-aws/pkg/controllers/providers/version"
"github.com/aws/karpenter-provider-aws/pkg/fake"
"github.com/aws/karpenter-provider-aws/pkg/operator/options"
"github.com/aws/karpenter-provider-aws/pkg/test"
Expand Down Expand Up @@ -1150,9 +1149,7 @@ var _ = Describe("CloudProvider", func() {
Tags: []ec2types.Tag{{Key: aws.String("Name"), Value: aws.String("test-subnet-2")}}},
}})
controller := status.NewController(env.Client, awsEnv.SubnetProvider, awsEnv.SecurityGroupProvider, awsEnv.AMIProvider, awsEnv.InstanceProfileProvider, awsEnv.LaunchTemplateProvider)
versionController := controllersversion.NewController(awsEnv.VersionProvider)
ExpectApplied(ctx, env.Client, nodePool, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, controller, nodeClass)
pod := coretest.UnschedulablePod(coretest.PodOptions{NodeSelector: map[string]string{corev1.LabelTopologyZone: "test-zone-1a"}})
ExpectProvisioned(ctx, env.Client, cluster, cloudProvider, prov, pod)
Expand All @@ -1169,13 +1166,11 @@ var _ = Describe("CloudProvider", func() {
Tags: []ec2types.Tag{{Key: aws.String("Name"), Value: aws.String("test-subnet-2")}}},
}})
controller := status.NewController(env.Client, awsEnv.SubnetProvider, awsEnv.SecurityGroupProvider, awsEnv.AMIProvider, awsEnv.InstanceProfileProvider, awsEnv.LaunchTemplateProvider)
versionController := controllersversion.NewController(awsEnv.VersionProvider)
nodeClass.Spec.Kubelet = &v1.KubeletConfiguration{
MaxPods: aws.Int32(1),
}
ExpectApplied(ctx, env.Client, nodePool, nodeClass)
nodeClass = ExpectExists(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, controller, nodeClass)
pod1 := coretest.UnschedulablePod(coretest.PodOptions{NodeSelector: map[string]string{corev1.LabelTopologyZone: "test-zone-1a"}})
pod2 := coretest.UnschedulablePod(coretest.PodOptions{NodeSelector: map[string]string{corev1.LabelTopologyZone: "test-zone-1a"}})
Expand Down Expand Up @@ -1212,8 +1207,6 @@ var _ = Describe("CloudProvider", func() {
nodeClass.Spec.SubnetSelectorTerms = []v1.SubnetSelectorTerm{{Tags: map[string]string{"Name": "test-subnet-1"}}}
ExpectApplied(ctx, env.Client, nodePool, nodeClass)
controller := status.NewController(env.Client, awsEnv.SubnetProvider, awsEnv.SecurityGroupProvider, awsEnv.AMIProvider, awsEnv.InstanceProfileProvider, awsEnv.LaunchTemplateProvider)
versionController := controllersversion.NewController(awsEnv.VersionProvider)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, controller, nodeClass)
podSubnet1 := coretest.UnschedulablePod()
ExpectProvisioned(ctx, env.Client, cluster, cloudProvider, prov, podSubnet1)
Expand Down
2 changes: 2 additions & 0 deletions pkg/controllers/interruption/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ import (
"github.com/aws/karpenter-provider-aws/pkg/controllers/interruption/messages/spotinterruption"
"github.com/aws/karpenter-provider-aws/pkg/controllers/interruption/messages/statechange"
"github.com/aws/karpenter-provider-aws/pkg/fake"
"github.com/aws/karpenter-provider-aws/pkg/operator/options"
"github.com/aws/karpenter-provider-aws/pkg/providers/sqs"
"github.com/aws/karpenter-provider-aws/pkg/test"
"github.com/aws/karpenter-provider-aws/pkg/utils"
Expand Down Expand Up @@ -82,6 +83,7 @@ func TestAPIs(t *testing.T) {
}

var _ = BeforeSuite(func() {
ctx = options.ToContext(ctx, test.Options())
env = coretest.NewEnvironment(coretest.WithCRDs(apis.CRDs...), coretest.WithCRDs(v1alpha1.CRDs...))
awsEnv = test.NewEnvironment(ctx, env)
fakeClock = &clock.FakeClock{}
Expand Down
4 changes: 0 additions & 4 deletions pkg/controllers/nodeclass/status/ami_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ import (
var _ = Describe("NodeClass AMI Status Controller", func() {
var k8sVersion string
BeforeEach(func() {
ExpectSingletonReconciled(ctx, versionController)
k8sVersion = awsEnv.VersionProvider.Get(ctx)
nodeClass = test.EC2NodeClass(v1.EC2NodeClass{
Spec: v1.EC2NodeClassSpec{
Expand Down Expand Up @@ -133,7 +132,6 @@ var _ = Describe("NodeClass AMI Status Controller", func() {
}
nodeClass.Spec.AMISelectorTerms = []v1.AMISelectorTerm{{Alias: "al2023@latest"}}
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)
nodeClass = ExpectExists(ctx, env.Client, nodeClass)

Expand Down Expand Up @@ -218,7 +216,6 @@ var _ = Describe("NodeClass AMI Status Controller", func() {
}
nodeClass.Spec.AMISelectorTerms = []v1.AMISelectorTerm{{Alias: "al2@latest"}}
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)
nodeClass = ExpectExists(ctx, env.Client, nodeClass)

Expand Down Expand Up @@ -422,7 +419,6 @@ var _ = Describe("NodeClass AMI Status Controller", func() {
}
nodeClass.Spec.AMISelectorTerms = []v1.AMISelectorTerm{{Alias: "windows2022@latest"}}
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)
nodeClass = ExpectExists(ctx, env.Client, nodeClass)

Expand Down
6 changes: 0 additions & 6 deletions pkg/controllers/nodeclass/status/instanceprofile_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ var _ = Describe("NodeClass InstanceProfile Status Controller", func() {
It("should create the instance profile when it doesn't exist", func() {
nodeClass.Spec.Role = "test-role"
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)

Expect(awsEnv.IAMAPI.InstanceProfiles).To(HaveLen(1))
Expand All @@ -65,7 +64,6 @@ var _ = Describe("NodeClass InstanceProfile Status Controller", func() {

nodeClass.Spec.Role = "test-role"
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)

Expect(awsEnv.IAMAPI.InstanceProfiles).To(HaveLen(1))
Expand All @@ -91,7 +89,6 @@ var _ = Describe("NodeClass InstanceProfile Status Controller", func() {

nodeClass.Spec.Role = "test-role"
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)

Expect(awsEnv.IAMAPI.InstanceProfiles).To(HaveLen(1))
Expand All @@ -117,7 +114,6 @@ var _ = Describe("NodeClass InstanceProfile Status Controller", func() {

nodeClass.Spec.Role = "test-role"
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)

Expect(awsEnv.IAMAPI.InstanceProfiles).To(HaveLen(1))
Expand All @@ -133,7 +129,6 @@ var _ = Describe("NodeClass InstanceProfile Status Controller", func() {
nodeClass.Spec.Role = ""
nodeClass.Spec.InstanceProfile = lo.ToPtr("test-instance-profile")
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)

nodeClass = ExpectExists(ctx, env.Client, nodeClass)
Expand All @@ -144,7 +139,6 @@ var _ = Describe("NodeClass InstanceProfile Status Controller", func() {
nodeClass.Spec.Role = ""
nodeClass.Spec.InstanceProfile = lo.ToPtr("test-instance-profile")
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)

Expect(awsEnv.IAMAPI.CreateInstanceProfileBehavior.Calls()).To(BeZero())
Expand Down
2 changes: 0 additions & 2 deletions pkg/controllers/nodeclass/status/launchtemplate_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@ var _ = Describe("NodeClass Launch Template CIDR Resolution Controller", func()
nodeClass.Spec.AMIFamily = lo.ToPtr(family)
nodeClass.Spec.AMISelectorTerms = terms
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)
Expect(awsEnv.LaunchTemplateProvider.ClusterCIDR.Load()).To(BeNil())
},
Expand All @@ -73,7 +72,6 @@ var _ = Describe("NodeClass Launch Template CIDR Resolution Controller", func()
nodeClass.Spec.AMIFamily = lo.ToPtr(v1.AMIFamilyAL2023)
nodeClass.Spec.AMISelectorTerms = []v1.AMISelectorTerm{{Alias: "al2023@latest"}}
ExpectApplied(ctx, env.Client, nodeClass)
ExpectSingletonReconciled(ctx, versionController)
ExpectObjectReconciled(ctx, env.Client, statusController, nodeClass)
Expect(lo.FromPtr(awsEnv.LaunchTemplateProvider.ClusterCIDR.Load())).To(Equal("10.100.0.0/16"))
nodeClass = ExpectExists(ctx, env.Client, nodeClass)
Expand Down
4 changes: 0 additions & 4 deletions pkg/controllers/nodeclass/status/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ import (
"github.com/aws/karpenter-provider-aws/pkg/apis"
v1 "github.com/aws/karpenter-provider-aws/pkg/apis/v1"
"github.com/aws/karpenter-provider-aws/pkg/controllers/nodeclass/status"
controllersversion "github.com/aws/karpenter-provider-aws/pkg/controllers/providers/version"
"github.com/aws/karpenter-provider-aws/pkg/operator/options"
"github.com/aws/karpenter-provider-aws/pkg/test"

Expand All @@ -41,7 +40,6 @@ var env *coretest.Environment
var awsEnv *test.Environment
var nodeClass *v1.EC2NodeClass
var statusController *status.Controller
var versionController *controllersversion.Controller

func TestAPIs(t *testing.T) {
ctx = TestContextWithLogger(t)
Expand All @@ -63,8 +61,6 @@ var _ = BeforeSuite(func() {
awsEnv.InstanceProfileProvider,
awsEnv.LaunchTemplateProvider,
)

versionController = controllersversion.NewController(awsEnv.VersionProvider)
})

var _ = AfterSuite(func() {
Expand Down
6 changes: 0 additions & 6 deletions pkg/controllers/providers/ssm/invalidation/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ import (
"github.com/aws/karpenter-provider-aws/pkg/apis"
v1 "github.com/aws/karpenter-provider-aws/pkg/apis/v1"
"github.com/aws/karpenter-provider-aws/pkg/controllers/providers/ssm/invalidation"
controllersversion "github.com/aws/karpenter-provider-aws/pkg/controllers/providers/version"
"github.com/aws/karpenter-provider-aws/pkg/operator/options"
"github.com/aws/karpenter-provider-aws/pkg/providers/ssm"
"github.com/aws/karpenter-provider-aws/pkg/test"
Expand All @@ -45,7 +44,6 @@ var stop context.CancelFunc
var env *coretest.Environment
var awsEnv *test.Environment
var invalidationController *invalidation.Controller
var versionController *controllersversion.Controller

func TestAWS(t *testing.T) {
ctx = TestContextWithLogger(t)
Expand All @@ -61,7 +59,6 @@ var _ = BeforeSuite(func() {
awsEnv = test.NewEnvironment(ctx, env)

invalidationController = invalidation.NewController(awsEnv.SSMCache, awsEnv.AMIProvider)
versionController = controllersversion.NewController(awsEnv.VersionProvider)
})

var _ = AfterSuite(func() {
Expand All @@ -85,7 +82,6 @@ var _ = Describe("SSM Invalidation Controller", func() {
}
})
It("shouldn't invalidate cache entries for non-deprecated AMIs", func() {
ExpectSingletonReconciled(ctx, versionController)
_, err := awsEnv.AMIProvider.List(ctx, nodeClass)
Expect(err).To(BeNil())
currentEntries := getSSMCacheEntries()
Expand All @@ -104,7 +100,6 @@ var _ = Describe("SSM Invalidation Controller", func() {
}
})
It("shouldn't invalidate cache entries for deprecated AMIs when the SSM parameter is immutable", func() {
ExpectSingletonReconciled(ctx, versionController)
nodeClass.Spec.AMISelectorTerms[0].Alias = "al2023@v20241024"
_, err := awsEnv.AMIProvider.List(ctx, nodeClass)
Expect(err).To(BeNil())
Expand All @@ -125,7 +120,6 @@ var _ = Describe("SSM Invalidation Controller", func() {
}
})
It("should invalidate cache entries for deprecated AMIs when the SSM parameter is mutable", func() {
ExpectSingletonReconciled(ctx, versionController)
_, err := awsEnv.AMIProvider.List(ctx, nodeClass)
Expect(err).To(BeNil())
currentEntries := getSSMCacheEntries()
Expand Down
5 changes: 0 additions & 5 deletions pkg/providers/amifamily/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ import (

. "github.com/onsi/ginkgo/v2"
. "github.com/onsi/gomega"
. "sigs.k8s.io/karpenter/pkg/test/expectations"
. "sigs.k8s.io/karpenter/pkg/utils/testing"

"github.com/samber/lo"
Expand All @@ -43,7 +42,6 @@ import (

"github.com/aws/karpenter-provider-aws/pkg/apis"
v1 "github.com/aws/karpenter-provider-aws/pkg/apis/v1"
controllersversion "github.com/aws/karpenter-provider-aws/pkg/controllers/providers/version"
"github.com/aws/karpenter-provider-aws/pkg/operator/options"
"github.com/aws/karpenter-provider-aws/pkg/providers/amifamily"
"github.com/aws/karpenter-provider-aws/pkg/test"
Expand All @@ -53,7 +51,6 @@ var ctx context.Context
var env *coretest.Environment
var awsEnv *test.Environment
var nodeClass *v1.EC2NodeClass
var versionController *controllersversion.Controller

func TestAWS(t *testing.T) {
ctx = TestContextWithLogger(t)
Expand All @@ -73,7 +70,6 @@ var _ = BeforeSuite(func() {
ctx = coreoptions.ToContext(ctx, coretest.Options())
ctx = options.ToContext(ctx, test.Options())
awsEnv = test.NewEnvironment(ctx, env)
versionController = controllersversion.NewController(awsEnv.VersionProvider)
})

var _ = BeforeEach(func() {
Expand Down Expand Up @@ -135,7 +131,6 @@ var _ = AfterSuite(func() {
var _ = Describe("AMIProvider", func() {
var version string
BeforeEach(func() {
ExpectSingletonReconciled(ctx, versionController)
version = awsEnv.VersionProvider.Get(ctx)
nodeClass = test.EC2NodeClass()
})
Expand Down
3 changes: 0 additions & 3 deletions pkg/providers/launchtemplate/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ import (
v1 "github.com/aws/karpenter-provider-aws/pkg/apis/v1"
"github.com/aws/karpenter-provider-aws/pkg/cloudprovider"
"github.com/aws/karpenter-provider-aws/pkg/controllers/nodeclass/status"
controllersversion "github.com/aws/karpenter-provider-aws/pkg/controllers/providers/version"
"github.com/aws/karpenter-provider-aws/pkg/fake"
"github.com/aws/karpenter-provider-aws/pkg/operator/options"
"github.com/aws/karpenter-provider-aws/pkg/providers/amifamily"
Expand Down Expand Up @@ -2078,8 +2077,6 @@ essential = true
Expect(awsEnv.EC2API.CalledWithCreateLaunchTemplateInput.Len()).To(Equal(0))
})
It("should choose amis from SSM if no selector specified in EC2NodeClass", func() {
versionController := controllersversion.NewController(awsEnv.VersionProvider)
ExpectSingletonReconciled(ctx, versionController)
version := awsEnv.VersionProvider.Get(ctx)
awsEnv.SSMAPI.Parameters = map[string]string{
fmt.Sprintf("/aws/service/eks/optimized-ami/%s/amazon-linux-2/recommended/image_id", version): "test-ami-123",
Expand Down
4 changes: 4 additions & 0 deletions pkg/test/environment.go
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,10 @@ func NewEnvironment(ctx context.Context, env *coretest.Environment) *Environment
subnetProvider := subnet.NewDefaultProvider(ec2api, subnetCache, availableIPAdressCache, associatePublicIPAddressCache)
securityGroupProvider := securitygroup.NewDefaultProvider(ec2api, securityGroupCache)
versionProvider := version.NewDefaultProvider(env.KubernetesInterface, eksapi)
// Ensure we're able to hydrate the version before starting any reliant controllers.
// Version updates are hydrated asynchronously after this, in the event of a failure
// the previously resolved value will be used.
lo.Must0(versionProvider.UpdateVersion(ctx))
instanceProfileProvider := instanceprofile.NewDefaultProvider(fake.DefaultRegion, iamapi, instanceProfileCache)
ssmProvider := ssmp.NewDefaultProvider(ssmapi, ssmCache)
amiProvider := amifamily.NewDefaultProvider(clock, versionProvider, ssmProvider, ec2api, ec2Cache)
Expand Down
1 change: 1 addition & 0 deletions website/content/en/docs/reference/settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ Karpenter surfaces environment variables and CLI parameters to allow you to conf
| HEALTH_PROBE_PORT | \-\-health-probe-port | The port the health probe endpoint binds to for reporting controller health (default = 8081)|
| INTERRUPTION_QUEUE | \-\-interruption-queue | Interruption queue is the name of the SQS queue used for processing interruption events from EC2. Interruption handling is disabled if not specified. Enabling interruption handling may require additional permissions on the controller service account. Additional permissions are outlined in the docs.|
| ISOLATED_VPC | \-\-isolated-vpc | If true, then assume we can't reach AWS services which don't have a VPC endpoint. This also has the effect of disabling look-ups to the AWS on-demand pricing endpoint.|
| EKS_CONTROL_PLANE | \-\-eks-control-plane | Marking this true means that your cluster is running with an EKS control plane and Karpenter should attempt to discover cluster details from the DescribeCluster API|
| KARPENTER_SERVICE | \-\-karpenter-service | The Karpenter Service name for the dynamic webhook certificate|
| KUBE_CLIENT_BURST | \-\-kube-client-burst | The maximum allowed burst of queries to the kube-apiserver (default = 300)|
| KUBE_CLIENT_QPS | \-\-kube-client-qps | The smoothed rate of qps to kube-apiserver (default = 200)|
Expand Down
Loading

0 comments on commit 5a9af7c

Please sign in to comment.