Question

How-to deliver a new public IP to a k8s cluster so a k8s service that requires UDP port (Bind DNS server) can use it?

Posted July 24, 2020 787 views
NetworkingLoad BalancingKubernetes

How-to deliver a new public IP to a k8s cluster so a k8s service that requires UDP port (Bind DNS server) can use it?

I know how to expose an IP address in K8s services by defining ‘externalIPs’ attribute. It just won’t work unless the IP address is available to the cluster.

I wonder if I can attach a Floating IP to a K8s service. So far I was not able to. I need an equivalent solution, somehow.

I even tried DO’s load balancer but I could not configure it for UDP traffic.

1 comment
  • I need to have 2 servers with unique IP address for use as master/slave DNS servers. And I’ve wanted to do it using Kubernetes. But I was not able to forward new instances of public IPs to it’s K8s deployment. I also fail to route UDP traffic using Digital Ocean Load Balancer.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
Submit an Answer
1 answer

Hi @superherointj

You are correct. Unfortunately, our LB’s do not support UDP traffic at this time.

The node IP addresses should not be relied upon to stay consistent. Whenever a node is replaced or upgraded the IP will be changed.

To accomplish this you would likely need to set up an external proxy to keep track of the current node IP’s and forward traffic accordingly. Because of these limitations you may have better luck hosting your UDP service on our standard droplet product.

Regards,

John Kwiatkoski
Senior Developer Support Engineer - Kubernetes