Flexible resource allocation is a built-in vCMP feature that allows vCMP host administrators to optimize the use of available system resources. Flexible resource allocation gives you the ability to configure the vCMP host to allocate a different amount of CPU and memory to each guest, based on the needs of the specific BIG-IP modules provisioned within a guest. When you create each guest, you specify the number of cores that you want the host to allocate to the guest. Configuring these settings determines the total amount of CPU and memory that the host allocates to the guest. With flexible allocation, you can customize CPU and memory allocation in granular ways that meet the specific resource needs of each individual guest.
Before you create vCMP guests and allocate system resources to them, you need to determine the specific CPU and memory needs of each guest. You can then decide how many cores to allocate to a guest, factoring in the resource capacity of your hardware platform.
To determine the CPU and memory resource needs, you must know:
When you create a vCMP guest, you must decide on the amount of dedicated CPU and memory that you want the vCMP host to allocate to the guest. This table shows, per appliance platform, the maximum number of guests that you can create on the system, the amount of memory that each core contains, and the minimum and maximum numbers of cores that the host can allocate to a guest.
|Appliance platform||Maximum number of guests||Per core memory allocation||Minimum cores per guest||Maximum cores per guest|
|BIG-IP 5200v||4||4 GB||2||4|
|BIG-IP 7200v||4||4 GB||2||4|
|BIG-IP 10200v||6||7 GB||2||6|
Appliance models vary in terms of how many cores the model provides and how much memory each core contains. Also variable is the maximum number of guests that each model supports.
Before you can determine the number of cores to allocate to a guest, you should understand:
By understanding these metrics, you ensure that the total amount of resource you allocate to guests is aligned with the amount of resource that your appliance model supports.
For specific information on the resources that each appliance model provides, see the vCMP guest memory/CPU core allocation matrix on the AskF5 Knowledge Base at http://support.f5.com.
As host administrator you need to decide the number of cores that you want to assign a vCMP guest. A core is a user-defined portion of CPU and memory that the vCMP host allocates to a guest.
This illustration shows an example of core allocation for three guests.
On platforms with hard drives, the vCMP host always allocates cores for a guest in increments of two cores. In the case of platforms with solid-state drives, however, the host can allocate a single core to a guest, but only for a guest that requires a maximum of one core; for guests that require more than one core, the host does not allocate an odd number of cores (such as three, five, or seven cores).
The illustration shows a possible guest configuration on an appliance with a solid-state drive, where one of the guests has a single core only allocated to it.
Because the amount of CPU and memory in a single-core guest is limited, F5 Networks highly recommends that you provision only the BIG-IP Local Traffic Manager (LTM) module within a single-core guest, and no other modules.
On systems that include SSL and compression hardware processors, the vCMP feature shares these hardware resources among all guests on the system, in a round robin fashion.
When sharing SSL hardware, if all guests are using similar-sized keys, then each guest receives an equal share of the SSL resource. Also, if any guests are not using SSL keys, then other guests can take advantage of the extra SSL resource.
As a vCMP host administrator, you can control when the system allocates or de-allocates system resources to a guest. You can do this at any time, by setting a guest to one of three states: Configured, Provisioned, or Deployed. These states affect resource allocation in these ways: