diff --git a/helm/aws-load-balancer-controller/README.md b/helm/aws-load-balancer-controller/README.md index 6da919857e..b34528b57b 100644 --- a/helm/aws-load-balancer-controller/README.md +++ b/helm/aws-load-balancer-controller/README.md @@ -218,6 +218,7 @@ The default values set by the application itself can be confirmed [here](https:/ | `awsApiThrottle` | Custom AWS API throttle settings | None | | `awsMaxRetries` | Maximum retries for AWS APIs | None | | `defaultTargetType` | Default target type. Used as the default value of the `alb.ingress.kubernetes.io/target-type` and `service.beta.kubernetes.io/aws-load-balancer-nlb-target-type" annotations.`Possible values are `ip` and `instance`. | `instance` | +| `defaultLoadBalancerScheme` | Default scheme for ELBs. Possible values are `internal` and `internet-facing`. When not specifying, an `internal` ELB will be created by default. | "" | | `enablePodReadinessGateInject` | If enabled, targetHealth readiness gate will get injected to the pod spec for the matching endpoint pods | None | | `enableShield` | Enable Shield addon for ALB | None | | `enableWaf` | Enable WAF addon for ALB | None | diff --git a/helm/aws-load-balancer-controller/templates/deployment.yaml b/helm/aws-load-balancer-controller/templates/deployment.yaml index 42e6db5188..2c2cc0acc7 100644 --- a/helm/aws-load-balancer-controller/templates/deployment.yaml +++ b/helm/aws-load-balancer-controller/templates/deployment.yaml @@ -169,6 +169,9 @@ spec: {{- if ne .Values.defaultTargetType "instance" }} - --default-target-type={{ .Values.defaultTargetType }} {{- end }} + {{- if .Values.defaultLoadBalancerScheme }} + - --default-load-balancer-scheme={{ .Values.defaultLoadBalancerScheme }} + {{- end }} {{- if .Values.serviceTargetENISGTags }} - --service-target-eni-security-group-tags={{ .Values.serviceTargetENISGTags }} {{- end }} diff --git a/helm/aws-load-balancer-controller/test.yaml b/helm/aws-load-balancer-controller/test.yaml index be074e92db..bd18d36273 100644 --- a/helm/aws-load-balancer-controller/test.yaml +++ b/helm/aws-load-balancer-controller/test.yaml @@ -146,8 +146,10 @@ awsApiThrottle: # Maximum retries for AWS APIs (default 10) awsMaxRetries: - - +# Default load balancer scheme when not specifying "alb.ingress.kubernetes.io/scheme" or +# "service.beta.kubernetes.io/aws-load-balancer-scheme" annotations. +# Possible values are "internal" and "internet-facing" (default "internal") +defaultLoadBalancerScheme: # If enabled, targetHealth readiness gate will get injected to the pod spec for the matching endpoint pods (default true) enablePodReadinessGateInject: diff --git a/helm/aws-load-balancer-controller/values.yaml b/helm/aws-load-balancer-controller/values.yaml index 25dd013f38..414647fd56 100644 --- a/helm/aws-load-balancer-controller/values.yaml +++ b/helm/aws-load-balancer-controller/values.yaml @@ -189,6 +189,11 @@ awsMaxRetries: # Cilium with masquerading enabled. defaultTargetType: instance +# Default load balancer scheme when not specifying "alb.ingress.kubernetes.io/scheme" or +# "service.beta.kubernetes.io/aws-load-balancer-scheme" annotations. +# Possible values are "internal" and "internet-facing" (default "internal") +defaultLoadBalancerScheme: + # If enabled, targetHealth readiness gate will get injected to the pod spec for the matching endpoint pods (default true) enablePodReadinessGateInject: