You plan to implement VMware AVI Load Balancer (AVI) as a new LoadBalancing or WAF solution, but you have problems to understand how the licensing is done and what the expected costs are?
This blog article will give you an overview to build a general understanding of how the licensing for AVI works.
The following table provides an overview of the available license types and the number of service units required for correct licensing.
The column ‘License prior to VMware AVI Load Balancer 20.1.1’ displays previous license types that are no longer valid and must be replaced by the required number of Service Units as stated in the ‘Corresponding Service Unit License’ column.
License prior to VMware AVI Load Balancer 20.1.1 | Corresponding Service Unit License | Description |
Socket | 5 | → Counts the total number of sockets on which service engines are running → Applicable towards bare-metal deployments where the AVI SE is running on the entire physical server → For 16 cores, dual-socket, bare-metal server (16 cores on each socket), the following is applicable: For each socket, five licenses are required, as up to 20 cores, five Service Unit licenses are required for one socket → After the limit of 20 cores per socket, one Service Unit license for every four additional cores is required |
Core/vCPU | 1 | → Counts the total number of vCPUs across all Service Engines → Applicable primarily to virtualized environments → Also supported on bare-metal and container environments |
25 Mbps Bandwidth | 0.4 | → Counts the total number of Service Engines of a specified Bandwidth → Available in 25-Mbps and 200-Mbps options → 25-Mbps and 200-Mbps options are applicable in any environment |
200 Mbps Bandwidth | 0.7 | → Counts the total number of Service Engines of a specified Bandwidth → Available in 25-Mbps and 200-Mbps options → 25-Mbps and 200-Mbps options are applicable in any environment |
As already described, the previous table is mapping the license types to the amount of Service Units required to license AVI in a valid way.
Licensing based on Service Units as an abstract value adds the flexibility to switch between different license types without converting the licenses from core to CPU or any other type of license.
A limitation of the Service Units is that you must always purchase an even number of Service Units. If you require 2.5 Service Units, you will need to purchase 3 Service Units.
The “Per-App SE mode” can be used to reduce the amount of required service units for each vCPU assigned for the running Service Engines.
Normally, one Service Unit is counted for each assigned vCPU of the running Service Engines. However, if the “Per-App SE mode” is enabled, one vCPU counts as 25% for licensing usage.
The “Per-App SE mode” will reduce the allowed count of Virtual Services per Service Engine and can be configured per Service Engine Group. The limit of Virtual Services per Service Engine is two.
A Service Engine Group is a group of Service Engines which are based on the same HA-Mode and configuration.
Keep in mind: The “Per-App SE mode” is not supported, if licensing based on bandwidth is implemented. For SNI or EVH shared virtual services, Per-App is limited to only one parent and one child virtual service. Further, the “Per-App SE mode” cannot be used to host DNS Virtual Services (both standalone DNS and GSLB).
This section provides detailed scenarios to illustrate the number of licenses required in various use cases.
Please note: All these examples apply to both greenfield and brownfield deployments, as all current licenses are based on Service Units.
This example is based on the following assumption:
In this situation, you need to buy four Service Units, since it is required to license the vCPUs of all running Service Engines and one vCPU requires one Service Unit. Therefore, it is important to mention that the Standby Service Engines does also count and needs to be licensed.
This example is based on the following assumption:
In this situation you need to buy one Service Units, since you have four vCPUs in total, but it will count at 25% for licensing usage.
This example is based on the following assumption:
In this situation it is required to buy 1 Service Unit, since 0,8 Service units are requires 1 vCPU for each of the two Service Engines, reduced by the requirement of 0,4 Service Units for the assigned vCPUs.
Based on the description above, each Service Engine will be counted rather than the number of vCPUs if the bandwidth is limited. According to additional information, the number of vCPUs for the used Service Engines will be counted. In this scenario, the specific count is not crucial, because one vCPU is more than sufficient to provide the required bandwidth of 25 Mbps or 200 Mbps.
This example is based on the following assumption:
In this situation you need to buy three Service Units, since you have the Service Engines running with one vCPU for each of them.
This example is based on the following assumption:
In this situation, you need to buy 12 Service Units. 6 Service Units for each of the two Baremetal Servers, since 20 Cores require 5 Service Units and one additional Service Unit is required for the every four additional cores.
This example is based on the following assumption:
In this situation, you need to buy 24 Service Units. 6 Service Units for each of the two Baremetal Servers and two sockets per host, since 20 Cores require 5 Service Units and one additional Service Unit is required for the every four additional cores.
Would you like to explore this topic further? Here, I have compiled some useful links for an in-depth examination: