Multiple Azure Load Balancers for Microsoft Azure Cloud

Overview

Avi Vantage deployments in Microsoft Azure leverage the Azure Load Balancer (ALB) to provide an ECMP-like, Layer 3 scale-out architecture. For more information on Avi Vantage integration with Microsoft Azure, refer to Solution Guide for Azure Integration with Avi Vantage. By default, Avi Controller creates two Azure load balancers per SE group, one internal and one external. This limits the number of virtual service IPs (VIPs) or ports supported on the Service Engine. Each virtual IP and port consumes a rule.

Note: Currently the number of rules per NIC is limited to 300. The revised number will periodically be updated at Load Balancer limits.

Starting with Avi Vantage version 18.2.5, multi Azure load balancers are supported within a single Avi Service Engine group. Consider an instance where 150 virtual services need to be created in an SE group, each with two front-end ports, 80 and 443. This would require 300 rules, which is the allowed limit. So, a new virtual service cannot be configured in the same SE group. However, with multi load balancers feature enabled, more virtual services can be created in the SE group. The Controller creates multiple Azure load balancers and distributes Service Engines across the availability sets.

The following are the advantages of enabling this feature:

  • This feature is offered along with basic load balancer at no additional costs.
  • The new load balancer is automatically created as required and scaled out seamlessly without any user intervention.
  • Multi Azure load balancers are configured only for the SE group and so no configuration changes are required for the remaining virtual services.

Enabling Multi Azure Load Balancers

Follow the steps below to enable multi Azure load balancers in an Azure cloud:

  1. Configure the Service Engine group for Azure cloud
  2. Set the enable_multi_lb option on the Service Engine group for the cloud
  3. (Optional) Set the following knobs for multi load balancer rules to restrict the number of rules used:
    • Maximum ruler per Azure load balancer
    • Maximum public VIPs per Azure load balancer

The following is the CLI configuration code snippet:

 

[admin:10-X-X-X]: > configure serviceenginegroup Default-Group

[admin:10-X-X-X]: serviceenginegroup> enable_multi_lb

[admin:10-X-X-X]: serviceenginegroup> max_rules_per_lb 150

[admin:10-X-X-X]: serviceenginegroup> max_public_ips_per_lb 30

 

Migrating to Multi Azure Load Balancers

Starting with Avi Vantage version 18.2.5, you can migrate to multi load balancers in an Azure cloud without deleting the virtual services.

Follow the steps below, in the order provided, to migrate the existing Service Engine groups with virtual services:

  1. Disable all virtual services placed on the target Service Engine group.
  2. Delete all the Service Engines from the Service Engine group.
  3. Enable multi load balancers and configure the knobs, as explained in the section above.
  4. Enable all virtual services.