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

LoadBalancer IP address requirement too strict in Gateway Controller #2413

Closed
1 task done
mflendrich opened this issue Apr 13, 2022 · 0 comments · Fixed by #2459
Closed
1 task done

LoadBalancer IP address requirement too strict in Gateway Controller #2413

mflendrich opened this issue Apr 13, 2022 · 0 comments · Fixed by #2459
Assignees
Labels
area/gateway-api Relating to upstream Kubernetes SIG Networking Gateway API bug Something isn't working priority/medium waiting-on-pr-review This work is on-hold, specifically because no further work can be done until review is complete

Comments

@mflendrich
Copy link
Contributor

mflendrich commented Apr 13, 2022

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

The kong-proxy service in all-in-one-dbless.yaml is type: LoadBalancer.

On microk8s this blocks Gateway API altogether. The gateway controller refuses to reconcile Gateway because there's no load balancer controller in the cluster that would set the external IP on the service.

The result is that Gateway API entries (e.g. HTTPRoutes) fail to sync to Kong at all.

Another thing is that Gateway API ceasing to work if the load balancer fails is a failure mode that doesn't look appropriate.

Expected Behavior

HTTPRoutes work even if Gateway is exposed on a Service of type LoadBalancer but there's no infra in the cluster to provision the load balancer.

Steps To Reproduce

1. snap install microk8s --channel 1.22/stable --classic
2. install gateway API CRDs
3. kubectl apply -f all-in-one-dbless.yaml (but enable the Gateway feature gate first)
4. kubectl apply -f examples/gateway-httproute.yaml
5. observe that "configuration successfully synced to kong" never occurs in logs; instead, you see repeated reconciliation errors from the Gateway controller complaining that the kong-proxy service is of type LoadBalancer but has no external IP.

Kong Ingress Controller version

2.3.1

Kubernetes version

any

Anything else?

No response

@mflendrich mflendrich added bug Something isn't working priority/medium area/gateway-api Relating to upstream Kubernetes SIG Networking Gateway API labels Apr 13, 2022
@mflendrich mflendrich added this to the Gateway API - Milestone 2 milestone Apr 13, 2022
@shaneutt shaneutt self-assigned this May 4, 2022
@shaneutt shaneutt added the waiting-on-pr-review This work is on-hold, specifically because no further work can be done until review is complete label May 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/gateway-api Relating to upstream Kubernetes SIG Networking Gateway API bug Something isn't working priority/medium waiting-on-pr-review This work is on-hold, specifically because no further work can be done until review is complete
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants