Each Job has a VM usage policy. This policy directs how Moab considers physical and virtual nodes when allocating resources for a job. These are the supported policies:
Policy | Details |
---|---|
CREATEPERSISTENTVM | Makes the VM persist after the job completes. The VM is not terminanted until the mvmctl -d <vmid> command is used. |
CREATEVM | The job should create a one-time use virtual machine for the job to run on. Any virtual machines created by the job are destroyed when the job is finished. If specified, the job itself must request an OS so an appropriate virtual machine can be provisioned. |
REQUIREPM | States that the job should run only on physical machines. |
REQUIREVM | States that the job should run only on virtual machines that already exist. |
If the HIDEVIRTUALNODES parameter is configured with a value of TRANSPARENT, jobs are given a default policy of REQUIREVM. Otherwise they are given a policy of REQUIREPM. These defaults can be overridden by using the extension resource VMUSAGE or by setting the policy via a job template. An example of both is given below.
ExamplesAs an extension resource:
> msub -l vmusage=requirepm
As a template parameter:
JOBCFG[vmjob] VMUSAGE=requirevm
The VMUSAGE policy of a job can be viewed by using checkjob -v.