lf-edge / eve

EVE is Edge Virtualization Engine
https://www.lfedge.org/projects/eve/
Apache License 2.0
470 stars 159 forks source link

[11.0 stable] Enhance LinuxCollector to support detecting multiple app VIF IPs #4257

Closed milan-zededa closed 1 week ago

milan-zededa commented 2 weeks ago

Application VIF may have multiple IP address assigned. They can be either assigned directly on the same interface, or used on separate VLAN sub-interfaces which share the parent interface MAC address.

LinuxCollector should detect and publish all of them, instead of flapping between them and generating many IP address change notifications, which trigger a flood of NI and App info messages published to the controller.

For DHCP assigned IP addresses, we use lease time to determine if a previously detected IP address is still valid. For statically assigned IP, we expect to see at least one associated ARP packet every 10 minutes. Otherwise, we consider the IP address to be removed or simply not used anymore.

This commit also enhances LinuxCollector to support enabling or disabling ARP snooping in runtime, without requiring to recreate all switch network instances or rebooting device.

Signed-off-by: Milan Lenco milan@zededa.com (cherry picked from commit 5b2acf4)

OhmSpectator commented 2 weeks ago

The Eden test results look suspicious, I would say.

milan-zededa commented 2 weeks ago

The Eden test results look suspicious, I would say.

Eden tests are very broken on 11.0 Problem is that the patches I did for Eden are likely not compatible with EVE 11.0 so I cannot bring them to this branch (but I can try just as an experiment).

OhmSpectator commented 2 weeks ago

The Eden test results look suspicious, I would say.

Eden tests are very broken on 11.0 Problem is that the patches I did for Eden are likely not compatible with EVE 11.0 so I cannot bring them to this branch (but I can try just as an experiment).

So, the only way to test the PR with any smoke tests is by ztests? I just want to have at least some guarantee that a PR does not break anything... I know it's very unlikely in this case, but still...

milan-zededa commented 2 weeks ago

The Eden test results look suspicious, I would say.

Eden tests are very broken on 11.0 Problem is that the patches I did for Eden are likely not compatible with EVE 11.0 so I cannot bring them to this branch (but I can try just as an experiment).

So, the only way to test the PR with any smoke tests is by ztests? I just want to have at least some guarantee that a PR does not break anything... I know it's very unlikely in this case, but still...

OK, let's try this: https://github.com/lf-edge/eve/pull/4260 If test results are better, I can then rebase this PR.

OhmSpectator commented 2 weeks ago

As far as we do not have reliable Eden tests for this PR... should we just believe the PR is fine? ) Runnign ztests...

eriknordmark commented 1 week ago

Ran manual ztests overnight to verify there are no regressions.