The BtrPlace Constraints Catalog
Constraints

Fence

Definition

Signature

fence(s1 : set<VM>, s2 : set<server>)

The fence constraint forces each running VM in s1 to be running on one of the online servers in s2.

Classification

Usage

A fence constraint deserves partitioning purposes. First, it may be used by a datacenter administrator to part the infrastructure. Such a situation is typically motivated for security or administrative purposes. As an example, a datacenter may be the property of multiple organizations that have aggregated their servers. However, administrative policies may disallow to have specific VMs of one organization running on servers belonging to another organization. In this setting, fence constraints may be used to specify the list of allowed servers for these VMs.

Another possible usage of fence constraints consist in splitting the VMs when the infrastructure is designed using an aggregation of independent partitions of servers. As an example, a partition may consist of a standalone shipping container of servers or all the servers connected to a same storage space when VMs disk images are only available to these servers. In this setting, fence constraint allow the datacenter administrator to restrict the placement of the VMs to their assigned partition.

Finally, a fence constraint may be used as a backend for a resource matchmaking system [38] for non-cumulative resources. As an example, a VM may require a particular hypervisor, processor or GPU. Fence constraints may then be used to force the VMs to be running on compatible environments. The list of the compatible servers must be established before using the constraint. It has to be noticed that this use case is not suitable when the matchmaking is focusing shareable but finite resources such as memory or computing power.

Example

Figure 3 depicts a sample reconfiguration between a source and a destination configuration. In this example, the following fence constraints were considered.

N1: VM1 VM2

N2: VM3

N3:

?: VM4

arrow

N1: VM1 VM4

N2: VM2

N3:

?: VM3

Figure 3: A reconfiguration motivated by fence constraints.

See also

Related Constraints

Reformulation(s)

Specialization(s)