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

Add the VRouter service #1

Merged
merged 2 commits into from
Jan 2, 2024
Merged

Add the VRouter service #1

merged 2 commits into from
Jan 2, 2024

Conversation

sk4zuzu
Copy link
Contributor

@sk4zuzu sk4zuzu commented Dec 4, 2023

This is a refactor of the previously used VNF service (to be obsolete).

All the main features have been included:

  • DHCP4 server (kea + onelease)
  • DNS forwarder (unbound)
  • Router4
  • NAT4
  • SDNAT4
  • LVS (keepalived's built-in, static + onegate)
  • HAProxy (static + onegate)
  • Keepalived with failover capability (via one-failover service)

Also works:

  • It's mostly compatible with the VNF's interface.
  • Each feature is presented as a simple OpenRC service.
  • Failover is now implemented via unix pipes instead of script hooks.
  • Load-balancers (LVS and HAProxy) work now in VROUTER mode only.
  • Re-contextualization is fully supported.
  • Lots of unit tests (rspec).

Legacy appliance code has been moved to /appliances/legacy/.

@sk4zuzu sk4zuzu force-pushed the service_VRouter branch 2 times, most recently from 477aeb8 to 85c04a7 Compare December 22, 2023 11:00
This is a refactor of the previously used VNF service (to be obsolete).

All the main features have been included:

- DHCP4 server (kea + onelease)
- DNS forwarder (unbound)
- Router4
- NAT4
- SDNAT4
- LVS (keepalived's built-in, static + onegate)
- HAProxy (static + onegate)
- Keepalived with failover capability (via one-failover service)

Also works:

- It's *mostly* compatible with the VNF's interface.
- Each feature is presented as a simple OpenRC service.
- Failover is now implemented via unix pipes instead of script hooks.
- Load-balancers (LVS and HAProxy) work now in both VROUTER and OneFlow
  modes.
- Re-contextualization is fully supported.
- Lots of unit tests (rspec).
@sk4zuzu sk4zuzu marked this pull request as ready for review December 22, 2023 16:11
@rsmontero rsmontero merged commit 23674a6 into master Jan 2, 2024
@rsmontero rsmontero deleted the service_VRouter branch January 2, 2024 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants