costela / hcloud-ip-floater

k8s controller for Hetzner Cloud floating IPs
GNU General Public License v3.0
55 stars 10 forks source link

wrong Node assigned floating IP #55

Closed ghorofamike closed 1 year ago

ghorofamike commented 1 year ago

So with

costela/hcloud-ip-floater:latest

and weave-net, 2.8.1, and metallb v0.13.7:

in the service description:

  Normal  nodeAssigned  37m (x2 over 37m)  metallb-speaker     announcing from node "prod-ghorofa-ks8-hundredeighteenszcdrp2jdc" with protocol "layer2"

but with hcloud, the wrong node is set:

time="2022-11-27T10:45:59Z" level=info msg="attached floating IP" component=fipcontroller fip=XXX.XXX node=prod-ghorofa-ks8-hundredeighteeny0l5mpmxff

what is going on here? it seems to work fine with other CNI's i think, since access from outside is fine.

costela commented 1 year ago

Can you check you service's (or ingress') status.loadbalancer field?

MetalLB should be the one assigning the IP to your service/ingress, after that, hcloud-ip-floater will see the change and attach the IP to the right node via hcloud API.

So something else might be causing MetalLB to assign the IP to a different node.

ghorofamike commented 1 year ago

I downgraded metallb, and it was ok, maybe there was some strange interaction with the new version and new config, i will test again with the new version of ks8 and metallb. it seems to have little to do with this tool

costela commented 1 year ago

ok. I will close the ticket then, but feel free to reopen if you find more info pointing to hcloud-ip-floater as the culprit!