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

Service Failed to find router #5

Open
jan-br opened this issue Dec 8, 2021 · 5 comments
Open

Service Failed to find router #5

jan-br opened this issue Dec 8, 2021 · 5 comments
Assignees
Labels
bug Something isn't working

Comments

@jan-br
Copy link

jan-br commented Dec 8, 2021

Hi,

I have a small single node home Server running k3s with kube-vip behind a FritzBox.
I followed the Readme and deployed holepunch to my cluster with make deploy. After annotating a LoadBalancer service with holepunch/punch-external: "true"., I found this in the holepunch-controller-manager log:

2021-12-08T01:09:03.592Z INFO controller-runtime.metrics metrics server is starting to listen {"addr": "127.0.0.1:8080"}
2021-12-08T01:09:03.592Z INFO setup starting manager
I1208 01:09:03.790188 1 leaderelection.go:242] attempting to acquire leader lease holepunch-system/81773bb2.holepunch.jameslaverack.com...
2021-12-08T01:09:03.790Z INFO controller-runtime.manager starting metrics server {"path": "/metrics"}
I1208 01:09:03.827295 1 leaderelection.go:252] successfully acquired lease holepunch-system/81773bb2.holepunch.jameslaverack.com
2021-12-08T01:09:03.889Z DEBUG controller-runtime.manager.events Normal {"object": {"kind":"ConfigMap","namespace":"holepunch-system","name":"81773bb2.holepunch.jameslaverack.com","uid":"28a6b722-bda4-4687-ab21-dc46f96a4dea","apiVersion":"v1","resourceVersion":"3279675"}, "reason": "LeaderElection", "message": "Debian-10-Cloudinit_c6fb0ec5-e81a-44f5-b6c3-73267caf9c4b became leader"}
2021-12-08T01:09:03.989Z INFO controller-runtime.controller Starting EventSource {"controller": "service", "source": "kind source: /, Kind="}
2021-12-08T01:09:04.191Z INFO controller-runtime.controller Starting Controller {"controller": "service"}
2021-12-08T01:09:04.191Z INFO controller-runtime.controller Starting workers {"controller": "service", "worker count": 1}
2021-12-08T01:09:04.191Z DEBUG controller-runtime.controller Successfully Reconciled {"controller": "service", "request": "default/kubernetes"}
2021-12-08T01:09:04.191Z DEBUG controller-runtime.controller Successfully Reconciled {"controller": "service", "request": "teamspeak/teamspeak-tcp"}
2021-12-08T01:09:06.292Z ERROR controllers.Service Failed to find router to configure {"service": "traefik/traefik", "error": "No services found"}
github.com/go-logr/zapr.(*zapLogger).Error
/go/pkg/mod/github.com/go-logr/zapr@v0.1.0/zapr.go:128
github.com/JamesLaverack/holepunch/controllers.(*ServiceReconciler).Reconcile
/workspace/controllers/service_controller.go:70
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.5.0/pkg/internal/controller/controller.go:256
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.5.0/pkg/internal/controller/controller.go:232
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker
/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.5.0/pkg/internal/controller/controller.go:211
k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1
/go/pkg/mod/k8s.io/apimachinery@v0.17.2/pkg/util/wait/wait.go:152
k8s.io/apimachinery/pkg/util/wait.JitterUntil
/go/pkg/mod/k8s.io/apimachinery@v0.17.2/pkg/util/wait/wait.go:153
k8s.io/apimachinery/pkg/util/wait.Until
/go/pkg/mod/k8s.io/apimachinery@v0.17.2/pkg/util/wait/wait.go:88
2021-12-08T01:09:06.292Z ERROR controller-runtime.controller Reconciler error {"controller": "service", "request": "traefik/traefik", "error": "No services found"}
github.com/go-logr/zapr.(*zapLogger).Error
/go/pkg/mod/github.com/go-logr/zapr@v0.1.0/zapr.go:128
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.5.0/pkg/internal/controller/controller.go:258
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.5.0/pkg/internal/controller/controller.go:232
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker
/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.5.0/pkg/internal/controller/controller.go:211

Any ideas what could be happening here? All services should be able to reach each other and services in network host mode can also reach the router.

@julian3xl
Copy link

same here

@jan-br
Copy link
Author

jan-br commented Dec 15, 2021

Soo I figured something out.
It seems this is not really related to the project itself.
I've tried to open a UPNP connection on the host from cli. And this did not work either.
Since my cluster is provisioned with rke, it seems that the network settings are configured that the server is its own network gateway for some reason.

So the UPNP client cannot discover the router, although it is reachable via local IP.
Not sure what the smartest way to fix that would be. Maybe a configuration to hardcode the target IP address so the auto discovery can be disabled.

@julian3xl
Copy link

yeah, I'm checking the library underneath (https://github.com/huin/goupnp/blob/master/GUIDE.md) to figure out how to help it to properly detect the router ip

@jan-br
Copy link
Author

jan-br commented Dec 16, 2021

Any updates on this @julian3xl ?

@JamesLaverack
Copy link
Owner

Hey sorry for missing the notification on this. Yeah I'd agree this looks like a more general issue. :( I've had similar issues with my network actually so it's on my radar to investigate further. I'll let you know how I get on.

@JamesLaverack JamesLaverack added the bug Something isn't working label Feb 14, 2022
@JamesLaverack JamesLaverack self-assigned this Feb 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants