-
Notifications
You must be signed in to change notification settings - Fork 908
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 become unreachable after loadBalancerIP change with MetalLB in L2 mode #471
Comments
Thanks for the report! Okay, I see a logic bug in speaker, when an IP is assigned and then later changed. Basically the speaker internal state doesn't get cleaned up, so exported metrics are wrong and the speaker ends up doing a bit too much work for IPv6. But... Even with that (which is definitely a bug!), the service should still be reachable on the new IP, based on the code I'm staring at... Can you help me verify a few more things with your setup? I don't have time right now to set up a sandbox and repro (but should tomorrow).
Basically, looking at the code, I don't see how the new IP would not be working. There's definitely some stuff to fix here anyway, and with more steps (multiple services, moving IPs from one to another), there's maybe a way to trigger what you're seeing with just this logic bug... but if you don't see any ARP traffic with the clean steps above (that don't have borked internal speaker state), then there's something else going on. |
@danderson thanks for reply. Restarted all metallb pods, including controller.
Edited service and set LoadbalancerIP to 10.9.244.15. New IP assigned, according to logs and events.
|
same problem change loadBalacner IP, service IP was change correctly but cannot connect. after restart speaker its back to normal. |
I am seeing the same behavior, a quick redeploy of the speakers moves the IP - up till that point it remains responding on the old IP and not the new. Rancher 2.2.3 / kubernetes 1.15.5 / metallb 0.8.3 |
Kind a the same issue here ...
change it to
Can't access it anymore ... deleting the service and creating it again resolved the issue. Running |
Any solution on this? I've faced the same problem. |
For those that are hitting this issue, I did build a new speaker based off master with change #520 (fixed it for me, I don't know if there is any incompatibility between sepeaker built off master and controller base off latest release). docker image name |
I deployed How do I debug this further? Sorry, I am not familiar how to debug such problem. env: rancher 3.3.5, 1.17.2 (RKE) + , canel on bare metal 3x cs-24sc |
|
Hi there,
Checked few times and here the steps to reproduce:
Here is example, service worked well on IP 10.9.244.6 and then I changed loadBalancerIP to 10.9.244.7.
Service events:
Controller log:
Speaker log:
There are few ways to recover service access:
MetalLb version:
Kubernetes version:
kube-proxy in iptables mode.
The text was updated successfully, but these errors were encountered: