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

Move load balancer node configuration to switches.json #17

Merged
merged 5 commits into from
Aug 10, 2024
Merged

Conversation

stano45
Copy link
Owner

@stano45 stano45 commented Aug 7, 2024

  • Added lb_nodes field to switch configuration (IP, mac and sw port)
  • This makes it easier to configure the load balancer nodes
  • The controller now fully manages the state of the ecmp_group and ecmp_nhop tables based on initial configuration & HTTP requests after migration
  • Removed hardcoded node_map entries from node_manager.py
  • Removed MyIngress.ecmp_nhop entries from runtime files (load balancer nodes)

@rst0git PTAL

Copy link
Contributor

@rst0git rst0git left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Previously, the p4info, bmv2_json and
multi_switch arguments were passed to the
controller as command line arguments and the
switch configuration was hardcoded. This commit
makes it possible to configure any number of
switches in the configuration file, and also to
customize the parameters of individual switches.
The lb_nodes field is a list of the nodes that
the load balancer routes traffic to. This field
consists of a list of dictionaries, where each
dictionary contains the following fields:
- ip: the IP address of the node
- mac: the MAC address of the node
- port: the switch port to use to route traffic
  to the node
The controller uses this field to program the
load balancer switch with proper match-action
table entries.
The controller tracks state of the table entries
to allow updates after a container migration.
Base automatically changed from controller-config to main August 10, 2024 18:09
@stano45 stano45 merged commit 66a1075 into main Aug 10, 2024
2 checks passed
@stano45 stano45 deleted the lb-ips-config branch August 10, 2024 18:11
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