Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request to add a feature to support the same targetgroup with same instance targets but with multiple ports #3719

Open
balusarakesh opened this issue May 24, 2024 · 0 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature. triage/needs-investigation

Comments

@balusarakesh
Copy link

Our setup:

load balancer controller version: v2.7.2
EKS version: v1.28.8
Calico network setup

Service config:

apiVersion: v1
kind: Service
metadata:
  name: nginx
  labels:
    app: nginx
    app.kubernetes.io/managed-by: Helm
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled: 'false'
    service.beta.kubernetes.io/aws-load-balancer-healthcheck-path: /status
    service.beta.kubernetes.io/aws-load-balancer-healthcheck-port: traffic-port
    service.beta.kubernetes.io/aws-load-balancer-healthcheck-protocol: tcp
    service.beta.kubernetes.io/aws-load-balancer-name: k8s-nginx
    service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: instance
    service.beta.kubernetes.io/aws-load-balancer-scheme: internal
    service.beta.kubernetes.io/aws-load-balancer-target-group-attributes: preserve_client_ip.enabled=false,stickiness.enabled=false
    service.beta.kubernetes.io/aws-load-balancer-type: external
spec:
  ports:
    - name: https
      protocol: TCP
      port: 443
      targetPort: 443
      nodePort: 31315
  selector:
    app: nginx
  type: LoadBalancer
  externalTrafficPolicy: Cluster
  allocateLoadBalancerNodePorts: true
  loadBalancerClass: service.k8s.aws/nlb
  internalTrafficPolicy: Cluster

Is your feature request related to a problem?
Yes, Currently an AWS Network Load Balancer supports only 55000 connections per minute for a unique target and ip combo. We are frequently receiving PortAllocationError on our network load balancer.

The only solution to this problem is to add more nodes which is expensive OR setup a new load balancer for the same set of pods on a different service so that we get a different NodePort and this way we can double the connections per minute on the load balancer as we now have a second load balancer for the same set of nodes but with a different port

Describe the solution you'd like
A way to create a targetgroup through load balancer controller for the SAME set of instance targets but for multiple ports.
Currently this is possible in AWS by adding targets manually (check the screenshot, for the same node we are able to add multiple ports)

Essentially we want the targetgroup to be able to refer to the same set of instances but on multiple ports this way we can get around the 55000 connections per minute limit from AWS.

Describe alternatives you've considered
A description of any alternative solutions or features you've considered.

Screenshot 2024-05-24 at 1 59 01 PM

@shraddhabang shraddhabang added kind/feature Categorizes issue or PR as related to a new feature. triage/needs-investigation labels May 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. triage/needs-investigation
Projects
None yet
Development

No branches or pull requests

2 participants