In flexVDI a Pool is a set of CPUs and a certain amount of RAM provided by one or more Hosts. The Guests are always assigned to one of these Pools, that provides them the with necessary resources. Besides its name and the list of Hosts from which it takes its resources, the basic information of a Pool includes these three important properties:
Priority: Indicates the preference that a Pool has for acquiring resources when there are not enough to fulfill the needs of every Pool. This happens when some of the Hosts are down, due to a failure or for maintenance. In that situation, when reassigning the remaining resources to Pools, those with higher priority (lower value) come first.
"CPU block size" / "RAM block size": A block is the resource reservation unit used by the Pool. For instance, a Pool can reserve resources from the Hosts in blocks of 1 CPU and 2GB of RAM. The purpose of these values is to ensure that Pools reserve Host resources for the Guests in an adequate proportion. This will prevent, for instance, that a Pool reserves a large number of CPUs but a small amount of RAM in a Host. The RAM would limit the amount Guests that could run in the Pool, rendering the rest of the reserved CPUs unusable. These resource reservations are made:
- Initially when the Pool is created or the Manager starts.
- Automatically when the amount of available resources changes. For instance, on the event of failure or shutdown of one of the Hosts. High priority Pools may receive resources that are removed from Pools with a lower priority.
- By explicit request of an administrator clicking on "Rebalance resources" from the context menu of a Pool.
Creating a Pool
Before you can create a Guest, you need to create a Pool for it; to do this, open the "Guest / Host / Pool" section in the tree view and navigate to "Pools". Then click the "New Pool" button on the right. You will see the New Pool form:
Enter a name for the Pool in the ID field, and an optional description. Select the priority of this pool from 1 (highest priority) to 5 (lowest). Then, activate the checkboxes of those hosts from where resources will be taken; in this case, you should have just one host. Finally, configure the resource reservation block:
- CPU reservation block size, in number of vCPUs.
- RAM reservation block size, in MB (although the slider shows RAM in GB to save space).
- The amount of "reservation blocks" that this Pool will reserve from the Hosts.
The resources that are assigned to a Pool can be used by the Guests in that Pool and are not available to Guests in other Pools. Plan your Pools thoroughly and ahead of time, so that the platform will respond in the best way when a Host fails. As with Hosts, in order to avoid removing resources needed by running Guests, you can always increase the number of reservation blocks of a Pool, but you must disable it first to decrease it or to change the reservation block size.
Press the "Save" button when you have finished. The new Pool will appear in the tree view, while its information appears in the details view.