Replace Ingress with Gateway API#531
Conversation
nuwang
left a comment
There was a problem hiding this comment.
I'm thinking we should remove deployment specific manifests like envoy and kong - it's too many things to take maintenance on for. We are never going to even test those most likely. If we need to have an "out-of-the-box" gateway, I think istio would be a good choice, but ideally, we just keep deployment details out altogether, and only include the Gateway definition and HTTPRoute manifests (although I'm guessing that's going to end up in an ingress like scenario and we will in fact, have to rely on some preferred gateway config)
|
Won't we need at least one working deployment for CI/CD? Not only for here, but the Galaxy smoke test and the Galaxy K8S Boot playbook tests. I have no idea which of the three would be preferred, so I left them in for now. We can remove the other two once we pick one. |
|
I’m really excited about the possibility of using Galaxy with GatewayAPI! It would be wonderful to see this merged soon. |
|
@gkr0110 Can you let us know which Gateway you are currently using? |
I'm using Cilium Gateway Controller with Gateway API |
|
did you consider to use the nginx o traefik gateway api controllers? |
|
@micafer I don't recall discussing those options, so thanks for bringing them up. Given the plethora of options, it just reinforces the idea that it would make more sense for the chart to be neutral about it. We could allow for multiple gateways options to be installed through the galaxy-helm-deps chart. @afgane @ksuderman For production however, there'll be some issues like defining request timeouts, which will be gateway specific. Maybe we can just provide some notes and example config for production use cases? For testing however, it looks like we won't need any gateway specific objects, and just an HTTPRoute alone may suffice on the galaxy-helm side: https://kubernetes.io/blog/2025/11/06/gateway-api-v1-4/#introducing-default-gateways |
|
Any plans to make changes in the k8s runner in galaxy proper for the IT ingresses as well? Assuming that will also need to change? |
|
Thanks @almahmoud. I've opened a draft PR in Galaxy to migrate to |
|
I've removed vendor specific manifests, updated the documentation, and provided an |
nuwang
left a comment
There was a problem hiding this comment.
I think it would be better to introduce a single docs folder and move the examples folder under it. Also left a comment on the values.yaml file.
Co-authored-by: Nuwan Goonasekera <2070605+nuwang@users.noreply.github.com>
An initial attempt at what may be required to replace the Nginx Ingress controller with the Gateway API. See the
GATEWAY_API_SUMMARY.mdandGATEWAY_API_MIGRATION.mdfiles for a more detailed explanation of the changes.These will not be breaking changes until we set
gateways.enabled: true(oringress.enabled:false) as the default. The current default isgateway.enabled: false