Report this

What is the reason for this report?

Manage Kubernetes Gateway API

Posted on February 21, 2025

Hi,

May I know if the current Managed Kubernetes supports Gateway API? If so, does it support experimental features like TCPRoute, TLSRoute and UDPRoute? Thank you.



This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

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.

Hi there,

You should be able to use something like Ambassador to implement the Gateway API in DigitalOcean Kubernetes Service.

There is a 1-Click App for Ambassador Ingress Controller in the DigitalOcean Marketplace:

https://marketplace.digitalocean.com/apps/ambassador-ingress-controller

There is a nice demo project here that uses traefik:

https://github.com/digitalocean/mastodon-on-kubernetes/blob/main/docs/assets/mok-overview.png

But probably best to reach out to support if you have any other specific questions:

https://do.co/support

- Bobby

New clusters created using Kubernetes 1.33 with VPC-native networking have the Gateway API enabled using Cilium and Envoy Gateway as a Public Preview (i.e. they’re not necessarily production-ready): https://docs.digitalocean.com/release-notes/#2025-06-16 I’ve not been able to find any other documentation from DigitalOcean, but DO support was very helpful.

Currently, you can create Gateway listeners with Protocol TCP or TLS, and you can create TLSRoutes, but I’ve not been able to find a configuration where they would attach to a listener; I always get “TLSRoute is not allowed to attach to this Gateway due to route kind restrictions”. TCPRoute resources are not defined at all.

HTTPRoutes are functional and work with Cert-manager, though you can’t enable the PROXY Protocol between your load balancer and the Gateway controller, so all traffic will appear to come from the load balancer. I could not determine a configuration where sticky sessions worked.

Setting the annotation service.beta.kubernetes.io/do-loadbalancer-enable-proxy-protocol: "true" on the Gateway and the flag --enable-gateway-api-proxy-protocol for the Cilium operator in the cilium-config ConfigMap would enable the PROXY Protocol, but that’s not the configuration currently enforced by DO.

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.