kubernetes-ingressamazon-eksnlbaws-nlbaws-load-balancer-controller

Create NLB via EKS and deploy multiple application in EKS


I want to deploy NLB in EKS. I'm searching for how to deploy it, I found 1 service.yaml file. It creates the NLB but when I want to map the applications in service.yaml file, the listeners are not created. I have checked mutliple blogs online but have no luck. Most of them are for ALB. Do I need to create an ingress.yaml file and mention the applications port in it?

I need help and some examples or documents that can help me out over here


Solution

  • to create NLB, you should have the AWS Load Balancer Controller deployed on your cluster.

    The AWS Load Balancer Controller (LBC) supports reconciliation for Kubernetes Service resources of type LoadBalancer by provisioning an AWS Network Load Balancer (NLB) with an instance or ip target type.

    Since the v2.2.0 release, the LBC provisions an internal NLB by default.

    To create an internet-facing NLB, the following annotation is required on your service:

    service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing

    For backwards compatibility, if the service.beta.kubernetes.io/aws-load-balancer-scheme annotation is absent, an existing NLB's scheme remains unchanged.