Deploy three Controller VMs in the management domain. These will form a highly available control plane for the NSX Advanced Load Balancer.
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.
Deploy all the Controller VMs in the first availability zone if using a Stretched cluster.
Refer to Sizing Compute and Storage Resources for NSX Advanced Load Balancer Controller(s) section to size the Controller cluster appropriately. A ‘small’ sized Controller cluster deployment is demonstrated here.
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.
In a web browser, log in to the management domain vCenter Server by using the vSphere Client (https://vcenter_server_fqdn/ui).
Navigate to sfo-m01-avic.
and click onIn the Templates section, click on ACTIONS and select Import Item.
Select the Local file and click on UPLOAD FILE.
fromSelect the Avi Controller OVA and click on Open.
Specify the Avi-Controller-v20.1.6.ova.
asClick 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 sfo-m01-avic.
and click onNavigate 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 , and adjust the following Controller VM settings, click on OK.
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 |
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.
Navigate to the vSphere cluster where the Controller VMs are deployed and click on Configure.
Create an anti-affinity 'VM/Host Rules' rule by clicking on Add.
-
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.
Navigate to each of the three Controller VMs and power them on.