Deploy three Controller VMs in the management domain. These will form a highly available control plane for the NSX Advanced Load Balancer.

Caution:

As of VCF version 5.2, this functionality has been natively implemented as part of the SDDC Manager workflows. Please refer to Managing Avi Load Balancer in VMware Cloud Foundation for more information.

Note:

Prerequisites

  • Reserve four IPs in the management network to be assigned to the Controllers which will be used for management communication.

  • Create a Content Library to host the Controller OVAs on the management domain vCenter Server.

Procedure

  • Download the Controller OVA from my.vmware.com portal. Follow this KB article to download the Controller OVA image.

  • Upload the Controller OVA to the Content Library.

    1. In a web browser, log in to the management domain vCenter Server by using the vSphere Client (https://vcenter_server_fqdn/ui).

    2. Navigate to Menu > Content Libraries and click on sfo-m01-avic.

    3. In the Templates section, click on ACTIONS and select Import Item.

    4. Select the Source > Source File from Local file and click on UPLOAD FILE.

    5. Select the Avi Controller OVA and click on Open.

    6. Specify the Destination > Item Name as Avi-Controller-v20.1.6.ova.

    7. Click on IMPORT.

Deploy NSX Advanced Load Balancer Controller VM.

  • In a web browser, log in to the management vCenter Server by using the vSphere Client (https://vcenter_server_fqdn/ui).

  • Navigate to one of the ESXi hosts in the Management domain and click on Summary, click on Hardware, and record the CPU {base clock speed}, this is used to reserve CPU for the Controller VMs.

  • Navigate to Menu > Content Libraries and click on sfo-m01-avic.

  • Navigate to Templates.

  • Right click on Avi-Controller-v20.1.6.ova and select New VM from this Template.

  • Give a name sfo-m01-avic01a to the Controller VM and select the datacenter in the Select a location for the virtual machine menu and click on NEXT.

  • Choose one of the hosts within the Management Domain to host the Controller VM and click on NEXT.

  • Review details and click on NEXT.

  • Specify the following in the Select Storage section:

    Setting

    Value

    VM Storage Policy

    vSAN Default Storage Policy

    Select virtual disk format

    As defined in the VM storage policy

    Datastore

    Storage compatible vSAN datastore

  • Click on NEXT.

  • Choose a port group for Destination Network in Network Mapping. This port group is the management network for the Controller and will be used for all management communication.

  • Click on NEXT.

    • Specify the following properties and click on NEXT.

      Note:

      The 'sysadmin login authentication' key is used to specify an SSH public key and is NOT required.

      Setting

      Value

      Management Interface IP Address

      IP address for the management interface. Leave blank if using DHCP. For instance, 192.168.10.4

      Management Interface Subnet Mask

      Subnet mask for the management interface. Leave blank if using DHCP. For instance, 24 or 255.255.255.0

      Default Gateway

      Optional default gateway for the management network. Leave blank if using DHCP.

      Management Interface IPv6 Address

      IP address for the management interface. Leave blank if using DHCP.

      Management Interface Subnet Mask

      IPv6 Subnet mask for the management interface. Leave blank if using DHCP.

      Default v6 Gateway

      Optional default gateway for the management network. Leave blank if using DHCP.

      Sysadmin login authentication key

      Sysadmin login authentication key

  • Validate and click on NEXT.

Navigate to the Avi Controller VM, click on Actions > Edit Settings, and adjust the following Controller VM settings, click on OK.

Note:

Select the size of the Controller VMs depending on the requirement.

Setting

Value

CPU

8 vCPU; set reservation to 8*{base clock speed} for the host from earlier

Memory

24 GB; set reservation to 24 GB

Hard disk 1

208 GB

Note:

This documentation assumes that the VMware NSX Advanced Load Balancer belongs to the sfo.rainpole.io domain.

Having FQDNs registered for NSX Advanced Load Balancer Controller with DNS is not a requirement.

For ease of use, FQDNs for NSX Advanced Load Balancer Controller can be configured locally on the workstation from which NSX Advanced Load Balancer Controller UI is launched, for instance, in /etc/hosts file if using MacOS.

Having a FQDN entry for the NSX Advanced Load Balancer Controller is a requirement when registering with Cloud Services.

Sample Naming Convention for the NSX Advanced Load Balancer Controllers:

  • sfo-m01-avic01a

  • sfo-m01-avic01b

  • sfo-m01-avic01c

  • Repeat 'Deploy the Controller VM' steps to create two additional Controllers to be used to form a three-node Controller cluster which will form the control plane for the NSX Advanced Load Balancer.

  • Create an anti-affinity 'VM/Host' rule to make sure Controller VMs are placed on separate hosts.

    1. Navigate to the vSphere cluster where the Controller VMs are deployed and click on Configure.

    2. Create an anti-affinity 'VM/Host Rules' rule by clicking on Add.

    3. Create the rule by filling in the following details and click on OK.

      Setting

      Value

      Name

      avi-ctrl-anti-affinity-rule

      Enable rule

      Check box

      Add VMs

      Add the three Controller VMs

  • Power on Controller VMs.

    1. Navigate to each of the three Controller VMs and power them on.