The recommended ELB type on AWS EKS

Hi all,

I installed Kong on AWS EKS using Helm 2 charts. While I following the documents on Github for Kong Ingress Controller, realized that the recommended ELB for Kong is L4. I wonder what is the default type for the load balancer without specifying using annotations (i.e service.beta.kubernetes.io/aws-load-balancer-type: nlb). The Github link is below:

https://github.com/Kong/kubernetes-ingress-controller/blob/master/docs/guides/preserve-client-ip.md

I also wonder how to use Ingress Resources for other services (i.e Kong Admin API). I’m a bit confused whether to use them behind the kong proxy service, or all of them behind an ELB.

I followed the documents and forum but couldn’t find an exact answer for my question. I really want to use Kong Ingress Controller and Kong, but I think need some guidance along with the structure on Kubernetes.

Thanks in advance

@dilarat by default kubernetes will provision classic load balancer if for a service you specify type: LoadBalancer.

Secondly why would you want to expose admin api out in public? If you do want, it’s nothing different from others, you simply need an ingress pointing to a service which in turn has your kong pods as upstream.

Thank you for your collaboration @ajay.
The structure that I’m using before ingress controller was depends on Admin API to configure Kong. This was costly, as it has a own load balancer. I read in somewhere in the Kong Nation, the ingress resources can be used to expose this services in order to down the cost and to be more convenient. That’s way I asked it for.
I know the recommended design for the Ingress Controller is using CRDs to configure Kong, and I would like to use them effectively.

You can expose Admin API behind the Kong proxy service.
You really only need a single LB for kong-proxy service and all the other services can be multiplexed on the same LB.
Please look into values.yaml in the Helm chart on how to do it.

Thank you. The helm chart is pretty clear and well documented!

Hi, my aim is to deploy Kong Ingress Controller in our K8s cluster.

Do you think it’s feasible to have an AWS ALB (an Ingress AWS ALB Controller) in front of the kong-proxy service?

I mean, I provisioned such resources, and so far I do not see any issue, even if I do not use an AWS NLB.

However, looking at the Kong docs I read:

What do you suggest?

Thanks in advance.