Closed sharifm-informatica closed 2 years ago
molecule tests have not been updated for this change. it might fail metallb tests
Hey, thanks! I thought you saw this? https://github.com/techno-tim/k3s-ansible/issues/116 We'll consider it in the future but for now I am going to stick with metal-lb! Thank you!
Also, even if we were to switch we'd expect the tests to be changed and passed too.
Proposed Changes
- Removed metallb from playbook
- Enabled kube-vip service loadbalancer functionality
- added kube-vip local cloud cloud provider for ip distribution on prem.
The main motive for this is metallb install was always failing in upgrades and reruns of the site.yml playbook. often upgrade in the scrip or k3s require a complete reset.yml and reinstall of the whole cluster to avoid bugs and failures in metallb. The ansible playbook was not very idempotent. This possibly solves #126.
Another advantage of this is to save resources mostly RAM and CPU and L2 arp traffic coming from both kube-vip for the control plane and metallb for the service loadbalancer.
Currently the kube-vip ip range takes its value from the same 'metal_lb_ip_range' variable to maintain backward compatibility with existing installations. In our tests this version does not break and existing install. Thanks for the awesome work.
Checklist
- [x] Tested locally
- [x] Ran
site.yml
playbook- [x] Ran
reset.yml
playbook- [x] Did not add any unnecessary changes
- [x] 🚀
Thanks for the PR
Proposed Changes
The main motive for this is metallb install was always failing in upgrades and reruns of the site.yml playbook. often upgrade in the scrip or k3s require a complete reset.yml and reinstall of the whole cluster to avoid bugs and failures in metallb. The ansible playbook was not very idempotent. This possibly solves #126.
Another advantage of this is to save resources mostly RAM and CPU and L2 arp traffic coming from both kube-vip for the control plane and metallb for the service loadbalancer.
Currently the kube-vip ip range takes its value from the same 'metal_lb_ip_range' variable to maintain backward compatibility with existing installations. In our tests this version does not break and existing install. Thanks for the awesome work.
Checklist
site.yml
playbookreset.yml
playbook