The BtrPlace Constraints Catalog
Constraints

Quarantine

Definition

Signature

quarantine(s : set<server>)

The quarantine constraint disallows any VM running on servers other than those in s to be relocated into a server in s. In addition, every VM running on a server in s cannot be relocated to another server. This constraint only restricts the placement of running VMs with regards to a previous placement. As a result, it is not possible to state for the satisfaction of one quarantine constraint before a reconfiguration occurred.

Classification

Usage

A quarantine constraint may be use by the datacenter administrator for isolation purpose. When a server appears to be compromised, a first step to avoid to propagate the situation is to isolate it from the datacenter (put it into quarantine). Using one quarantine constraint, the datacenter administrator is ensured that no running VMs may enter or leave the quarantine zone.

This constraint may also be used to prepare the servers for a software maintenance operation when it is not possible to relocate the VMs it runs. To prepare a software maintenance, the datacenter administrator must be sure the server does not host any running VMs to prevent a misconfiguration from altering them. As their relocation is not possible in this setting, the only solution to tend to have a server ready for the maintenance is to wait for its VMs termination while disallowing other VMs to be running on the server. The datacenter administrator may then use a quarantine constraint for that purpose.

Example

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

N1: VM1 VM2

N2: VM3

N3: VM4

(N4):

?: VM5

arrow

N1: VM1

N2: VM3

N3: VM4 VM5

(N4):

?:

Figure 4: A reconfiguration motivated by quarantine constraints.

See also

Related Constraints

Reformulation(s)