Avi Load Balancer supports multiple placement networks and enables the placement of virtual services on multiple vNICs. This section explains the configuration and placement networks on SE.
In No-Access and Linux Server Cloud scenarios, the Controller cannot configure the vNICs on demand on the SE. In this case, the SE is configured with a specific number of VNICs which have access to specific sub-nets. To load balance a VIP which is not present on any of the sub-nets accessible to the SE, the Controller cannot place the virtual service on the SE.
A placement network can be configured from the subnets accessible to the SE. Once that is configured, the Controller will forcefully place the VIP on the VNICs which have access to the placement networks. The user can then configure static routes on the SE, or on the previous hop router to ensure the traffic for the VIP is forwarded to the placement vNIC.
Consider this configuration where,
The VIP is 0.0.0.0/0, with placement networks in 2.2.20/24 and 3.3.3.0/24
The clients are trying to access 1.1.10.10 and 1.1.20.10
The servers are 5.5.5.11, 5.5.5.12, 5.5.5.13
The SE has vNICs in the subnets 2.2.2.0/24, 3.3.3.0/24, and 4.4.4.0/24
Router 1 provides connectivity between 1.1.1.0/16, 2.2.2.0/24 and 3.3.3.0/24
Router 2 provides connectivity between 4.4.4.0/24 and 5.5.5.0/2In this case, all traffic intended for 1.1.10.10 and 1.1.20.10 is matched by the VIP 0.0.0.0/0 and is routed to the SE through the VNIC in 2.2.2.0/24 network subnet, and then load balanced across the Servers through the vNIC in 4.4.4.0/24 network subnet.
Avi Load Balancer checks all the matching networks on the SE and places the virtual service on all the vNICs of the matching SEs.
Consider the following scenarios to understand this further:
Scenario |
Placement Networks |
Networks on SE |
Placement Behavior |
---|---|---|---|
SE has access to the exact subnet of the VIP placement network |
2.2.2.0/24 |
SE 1 eth1: 2.2.2.0/24 SE 2 eth1: 2.2.2.0/24 |
The virtual service will be placed on the matching vNICs of both SE - eth1 on SE 1 and eth1 on SE 2 |
Both the SEs have access to the same network, which is one of the two placement networks |
2.2.2.0/24 3.3.3.0/24 |
SE 1 SE 1 eth1: 2.2.2.0/24 SE 2 eth1: 2.2.2.0/24 |
The virtual service will be placed on the matching vNICs of both SE - eth1 on SE 1 and eth1 on SE 2 |
SE has access to a single network which is a superset of all the subnets of the placement network |
2.2.2.0/25 2.2.2.128/25 |
SE 1 eth1: 2.2.2.0/24 SE 2 eth1: 2.2.2.0/24 |
The virtual service will be placed on the matching vNICs of both SE - eth1 on SE 1 and eth1 on SE 2 |
SE has access to a single network which is a superset of all the subnets of the placement network |
2.2.2.0/25 2.2.2.128/25 |
SE 1 eth1: 2.2.2.0/24 SE 2 eth1: 2.2.2.0/24 |
Since the vNIC on SE covers both the placement networks, the virtual service is placed on the vNIC with 2.2.2.0/24 network - eth1 on SE 1 and eth1 on SE 2 |
There are two placement networks, and both SE have access to separate placement networks |
2.2.2.0/24 3.3.3.0/24 |
SE 1 eth1: 2.2.2.0/24 SE 2 eth1: 3.3.3.0/24 |
The virtual service will be placed on the matching vNICs of both SE - eth1 on SE 1 and eth1 on SE 2 |
SE has access to all the subnets of the placement networks |
2.2.2.0/24 3.3.3.0/24 |
SE 1 eth1: 2.2.2.0/24 eth2: 3.3.3.0/24 SE 2 eth1: 2.2.2.0/24 eth2: 3.3.3.0/24 |
The virtual service is placed on all the matching vNICs of both SE - eth1, eth2 on SE 1 and eth1, eth2 on SE 2. |
Placement network gets modified to add a new placement network after the virtual service is placed. Network can be modified by either adding an SE network or by adding a placement network. |
Before:2.2.2.0/24 After:2.2.2.0/243.3.3.0/24 |
Before: SE 1 eth1: 2.2.2.0/24 eth2: 3.3.3.0/24 After: SE 2 eth1: 2.2.2.0/24 eth2: 3.3.3.0/24 |
The virtual service is placed on the matching vNICs of both SE - eth1, eth2 on SE 1 and eth1, eth2 on SE 2. |
SE gets access to a new network after the virtual service is placed. |
2.2.2.0/24 3.3.3.0/24 |
Before: SE 1 eth1: 2.2.2.0/24 SE 2 eth1: 2.2.2.0/24 After: SE 1 eth1: 2.2.2.0/24 eth2: 3.3.3.0/24 SE 2 eth1: 2.2.2.0/24 eth2: 3.3.3.0/24 |
The virtual service is placed on the matching vNICs of both SE - eth1, eth2 on SE 1 and eth1, eth2 on SE 2 |
The Placement Network feature is currently supported only for IPv4 configuration.
Caveats
Wildcard virtual service does not support the following:
BGP based scale-out and other associated BGP features
Flow monitoring
Shared VIP
Traffic cloning