From 27820a91a34739549eee137f3fd3080def9ca24a Mon Sep 17 00:00:00 2001 From: Maxime de Roucy Date: Sun, 15 Oct 2023 14:18:00 +0200 Subject: [PATCH] helm: Add loadBalancerClass to internal service --- charts/ingress-nginx/README.md | 19 +++++++++++++++++-- .../controller-service-internal.yaml | 3 +++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/charts/ingress-nginx/README.md b/charts/ingress-nginx/README.md index 31890e175..1b6dc6dab 100644 --- a/charts/ingress-nginx/README.md +++ b/charts/ingress-nginx/README.md @@ -137,6 +137,22 @@ If one of them is missing the internal load balancer will not be deployed. Examp Example for AWS: +* using [AWS Load Balancer Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/), which is recommanded by AWS, but you will have to install and configure this additional controller: + +```yaml +controller: + service: + # Create internal NLB + loadBalancerClass: "service.k8s.aws/nlb" + internal: + enabled: true + annotations: + service.beta.kubernetes.io/aws-load-balancer-scheme: "internal" + # Any other annotation can be declared here. +``` + +* using the default inside kubernetes controller-manager (not up to date and will be mark as deprecated in futur release of kubernetes): + ```yaml controller: service: @@ -144,9 +160,8 @@ controller: enabled: true annotations: # Create internal NLB + service.beta.kubernetes.io/aws-load-balancer-type: "nlb" service.beta.kubernetes.io/aws-load-balancer-scheme: "internal" - # Create internal ELB(Deprecated) - # service.beta.kubernetes.io/aws-load-balancer-internal: "true" # Any other annotation can be declared here. ``` diff --git a/charts/ingress-nginx/templates/controller-service-internal.yaml b/charts/ingress-nginx/templates/controller-service-internal.yaml index 3966b3260..ee38162b7 100644 --- a/charts/ingress-nginx/templates/controller-service-internal.yaml +++ b/charts/ingress-nginx/templates/controller-service-internal.yaml @@ -22,6 +22,9 @@ spec: {{- if .Values.controller.service.internal.loadBalancerSourceRanges }} loadBalancerSourceRanges: {{ toYaml .Values.controller.service.internal.loadBalancerSourceRanges | nindent 4 }} {{- end }} +{{- if .Values.controller.service.loadBalancerClass }} + loadBalancerClass: {{ .Values.controller.service.loadBalancerClass }} +{{- end }} {{- if .Values.controller.service.internal.externalTrafficPolicy }} externalTrafficPolicy: {{ .Values.controller.service.internal.externalTrafficPolicy }} {{- end }}