diff options
| author | Alexandre Derumier <aderumier@odiso.com> | 2020-11-25 10:01:36 +0100 |
|---|---|---|
| committer | Thomas Lamprecht <t.lamprecht@proxmox.com> | 2020-11-25 12:04:00 +0100 |
| commit | f23633dc24196b0e09c1fa592b3ad70095b1b3fb (patch) | |
| tree | ee678ce27e871a2c5927f9c7d9b6d196a1340dd8 /PVE/Network/SDN/Controllers.pm | |
| parent | d1ab9bdbbcf0ac0ed17bba9a86754b8c560db467 (diff) | |
controllers: improve bgp-evpn
- add new bgp plugin
- add ebgp support
- add loopback support
- move gateway-nodes option to zone as 'exitnodes'
- move external-peers to bgp plugin
Diffstat (limited to 'PVE/Network/SDN/Controllers.pm')
| -rw-r--r-- | PVE/Network/SDN/Controllers.pm | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/PVE/Network/SDN/Controllers.pm b/PVE/Network/SDN/Controllers.pm index f652d7f..9937755 100644 --- a/PVE/Network/SDN/Controllers.pm +++ b/PVE/Network/SDN/Controllers.pm @@ -13,9 +13,11 @@ use PVE::Network::SDN::Vnets; use PVE::Network::SDN::Zones; use PVE::Network::SDN::Controllers::EvpnPlugin; +use PVE::Network::SDN::Controllers::BgpPlugin; use PVE::Network::SDN::Controllers::FaucetPlugin; use PVE::Network::SDN::Controllers::Plugin; PVE::Network::SDN::Controllers::EvpnPlugin->register(); +PVE::Network::SDN::Controllers::BgpPlugin->register(); PVE::Network::SDN::Controllers::FaucetPlugin->register(); PVE::Network::SDN::Controllers::Plugin->init(); @@ -95,24 +97,24 @@ sub generate_controller_config { #generate configuration my $config = {}; - foreach my $id (keys %{$controller_cfg->{ids}}) { + foreach my $id (sort keys %{$controller_cfg->{ids}}) { my $plugin_config = $controller_cfg->{ids}->{$id}; my $plugin = PVE::Network::SDN::Controllers::Plugin->lookup($plugin_config->{type}); - $plugin->generate_controller_config($plugin_config, $plugin_config, $id, $uplinks, $config); + $plugin->generate_controller_config($plugin_config, $controller_cfg, $id, $uplinks, $config); } - foreach my $id (keys %{$zone_cfg->{ids}}) { + foreach my $id (sort keys %{$zone_cfg->{ids}}) { my $plugin_config = $zone_cfg->{ids}->{$id}; my $controllerid = $plugin_config->{controller}; next if !$controllerid; my $controller = $controller_cfg->{ids}->{$controllerid}; if ($controller) { my $controller_plugin = PVE::Network::SDN::Controllers::Plugin->lookup($controller->{type}); - $controller_plugin->generate_controller_zone_config($plugin_config, $controller, $id, $uplinks, $config); + $controller_plugin->generate_controller_zone_config($plugin_config, $controller, $controller_cfg, $id, $uplinks, $config); } } - foreach my $id (keys %{$vnet_cfg->{ids}}) { + foreach my $id (sort keys %{$vnet_cfg->{ids}}) { my $plugin_config = $vnet_cfg->{ids}->{$id}; my $zoneid = $plugin_config->{zone}; next if !$zoneid; |
