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

Support UDP with AWS NLB #79523

Closed
kirrmann opened this issue Jun 28, 2019 · 54 comments · Fixed by #92109
Closed

Support UDP with AWS NLB #79523

kirrmann opened this issue Jun 28, 2019 · 54 comments · Fixed by #92109
Assignees
Labels
area/provider/aws Issues or PRs related to aws provider good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/feature Categorizes issue or PR as related to a new feature. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider.
Milestone

Comments

@kirrmann
Copy link

What happened:
Error creating load balancer (will retry): failed to ensure load balancer for service default/test: Only TCP LoadBalancer is supported for AWS ELB

What you expected to happen: kubernetes creating an AWS NLB for UDP

How to reproduce it (as minimally and precisely as possible): Create service with annotation service.beta.kubernetes.io/aws-load-balancer-type: nlb and port with protocol: UDP

Anything else we need to know?:
AWS recently announced that UDP is available within their NLB https://aws.amazon.com/de/blogs/aws/new-udp-load-balancing-for-network-load-balancer/

Environment:

  • Kubernetes version (use kubectl version): 1.11.9
  • Cloud provider or hardware configuration: AWS
@kirrmann kirrmann added the kind/bug Categorizes issue or PR as related to a bug. label Jun 28, 2019
@k8s-ci-robot k8s-ci-robot added the needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. label Jun 28, 2019
@justinsb
Copy link
Member

/sig aws

@k8s-ci-robot k8s-ci-robot added sig/aws and removed needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Jun 28, 2019
@justinsb
Copy link
Member

/kind feature

@k8s-ci-robot k8s-ci-robot added the kind/feature Categorizes issue or PR as related to a new feature. label Jun 28, 2019
@randomvariable
Copy link
Member

/remove-kind bug

@k8s-ci-robot k8s-ci-robot removed the kind/bug Categorizes issue or PR as related to a bug. label Jun 28, 2019
@mcrute
Copy link
Contributor

mcrute commented Jun 28, 2019

/milestone v1.16

@k8s-ci-robot
Copy link
Contributor

@mcrute: You must be a member of the kubernetes/milestone-maintainers GitHub team to set the milestone. If you believe you should be able to issue the /milestone command, please contact your and have them propose you as an additional delegate for this responsibility.

In response to this:

/milestone v1.16

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@justinsb
Copy link
Member

/milestone v1.16

@k8s-ci-robot k8s-ci-robot added this to the v1.16 milestone Jun 28, 2019
@justinsb justinsb added good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. labels Jun 28, 2019
@bhks
Copy link
Contributor

bhks commented Jun 29, 2019

I am taking up this Feature Development.

How can this be assigned to me?

@RainbowMango
Copy link
Member

/assign @bhagwat070919

@Kiranjith83
Copy link

+1

@jkennedyOM
Copy link

+1 I am experiencing the same issue. NLB also supports UDP_TCP type, any service using service.beta.kubernetes.io/aws-load-balancer-type: "nlb" should be able to mix TCP and UDP port configs.

@a7i
Copy link
Contributor

a7i commented Jul 17, 2019

@bhagwat070919 Any progress? I can collaborate on this, if you need a hand.

@OMamurphy
Copy link

+1

@michael-c-jones
Copy link

michael-c-jones commented Jul 18, 2019 via email

@klamontagne-om
Copy link

+1

@owenthereal
Copy link
Contributor

I just ran into this. Any updates?

@owenthereal
Copy link
Contributor

Attempting to fix it with #80394

@mihyonq
Copy link

mihyonq commented Jan 24, 2020

+1

1 similar comment
@skonjarla
Copy link

+1

@DennisR73
Copy link

+1

2 similar comments
@silesmo
Copy link

silesmo commented Feb 4, 2020

+1

@rverma-jm
Copy link

+1

@smourapina
Copy link

Hello @mmerrill3, @kirrmann, @pjryan93 !
Bug Triage team here for the 1.18 release. This is a friendly reminder that code freeze is scheduled for 5 March, which is a few weeks from now. Is this issue still intended for milestone 1.18? Thanks in advance!

@smourapina
Copy link

smourapina commented Feb 28, 2020

C/O @kubernetes/sig-cloud-provider-admins:
Code freeze for release 1.18 is starting in 5 March (less than 1 week from now) and we want to ensure that each issue has a chance to be finished on time. Is this still on track for this deadline?

@k8s-ci-robot k8s-ci-robot added the kind/bug Categorizes issue or PR as related to a bug. label Feb 28, 2020
@smourapina
Copy link

/remove-kind bug

@k8s-ci-robot k8s-ci-robot removed the kind/bug Categorizes issue or PR as related to a bug. label Feb 28, 2020
@edobry
Copy link

edobry commented Feb 29, 2020

Is there any work remaining to be done on this? Willing to contribute if so, would really love to see this make it into 1.18!

@smourapina
Copy link

Thanks for the reply @edobry! This has been a long running issue, and given that there has not been any recent activity, would it make more sense to once again move the milestone? We are 2 days away from code freeze (5 March).

@kevinresol
Copy link

Thanks for the reply @edobry! This has been a long running issue, and given that there has not been any recent activity, would it make more sense to once again move the milestone? We are 2 days away from code freeze (5 March).

I wonder what "activity" you are expecting.

@smourapina
Copy link

We are now in code freeze for 1.18, so I am moving this to the next milestone.
/milestone v1.19

@k8s-ci-robot k8s-ci-robot modified the milestones: v1.18, v1.19 Mar 5, 2020
@IkiM0no
Copy link

IkiM0no commented Mar 26, 2020

We are now in code freeze for 1.18, so I am moving this to the next milestone.
/milestone v1.19

Hello, as of now, I see milestone v1.19 is 65% completed.
May we please have an update on estimated release date of UDP support for AWS NLB?

@kevinresol
Copy link

People have been trying to be constructive here. But the team doesn't even try to tell us what is pending. Sad.

@PHameete
Copy link

Would also love to see this feature for EKS - and am willing to help out. Even if we could get it in 1.19 it would still take a long time to become available in EKS (which is currently at 1.15). So the sooner we can start work on this - the better :-)

@royyeah
Copy link

royyeah commented Mar 31, 2020

+1 Also hope we could get in 1.19 and happy to help out!

@batmac
Copy link

batmac commented Jun 3, 2020

any update on this pretty please ?

@guruprasadgvmf
Copy link

whats the update here?

@TBBle
Copy link

TBBle commented Jun 13, 2020

From what I can see, the main issues that remain unresolved since the first PR last year:

  • Different protocols in the same Service definition with type=LoadBalancer enhancements#1438 is still pending if you need a service that supports both TCP and UDP, e.g., DNS. DNS is also a more-complicated example because it supports TCP and UDP on the same port number, and that'll need more refactoring here, as AWS treats that as a single multi-protocol target. Edit: To be clear, not really a blocker for UDP support, but it's been raised in the discussion earlier.
  • AWS NLB can only do TCP-based health checks (including HTTP and HTTPS), so your service needs to have a health-check TCP port listening. Current PRs silently assume it's on the same port number as the UDP service you're advertising. If you're using externalTrafficPolicy: Local, then it'll use the health check from healthCheckNodePort instead anyway. So this is probably only an issue for LoadBalancer Services with externalTrafficPolicy: Cluster set.

See "Things to know" on the original announcement blog post for NLB UDP support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/provider/aws Issues or PRs related to aws provider good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/feature Categorizes issue or PR as related to a new feature. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider.
Projects
None yet