Moab Viewpoint
Configuring the Create VM Form

Configuring the Create VM Form

To configuring the Create VM form, you must modify the <create-vm> element in the nodes.xml file. Form-building processes are similar for configuring several child elements such as <pages>, <components>, and <queue>. The <request> element has configuration requirements unique to each form, so for configuration instruction on the Create VM <request> element, review the Configuring the Create VM Request Element section that follows. For the common and similar child elements, use the following links and explanations to guide your efforts:

  • <pages> - An element that contains the page layout, describes navigation between pages, specifies which components belong to which sections on which pages, and specifies page validation.
  • <components> - An element describing each component and their attributes, as well as any inter-component rules.
  • <queue> - An element describing what information is stored in the request queue and how to display such to the user.

Configuring the Create VM Request Element

Configuring the Create VM form is similar to configuring the Create VPC form. A key difference, though, is the difference in supported attributes for the <request> element. The following attributes are supported in the Create VM <request> element:

Attribute Element mvmctl Attribute
Disk <disk> disk
Hypervisor <hv-id> hypervisor
Memory <ram> mem
Image <os> image
# of processors <cpu> procs
Variables <variables> variable
Storage <storage> storage

The <request> element can support any number of <requirement> child elements. The above attributes must be children of the <requirement> element.

In addition, the <variables> and <storage> elements have child elements as depicted in the following example:

<variables>      
    <variable>          
		 <name>FOO</name>          
		 <value><component id="fooVar"/></value>      
	 </variable>      
	 <variable>
		 <name>BAR</name>          
		 <value><component id="barVar"/></value>      
	 </variable>  
</variables>  

<storage>      
	 <location><component id="location"/><location>      
	 <size><component id="size"/></size>      
	 <type>nfs</type>      
	 <mount-options><component id="options"/></mount-options>  
</storage>

Note If a VM is created with "any" (case-insensitive) as the chosen host node/hypervisor, then when the mvmctl command is passed to Moab, it will not contain the "hypervisor=<node>" attribute, which instructs Moab to create the VM wherever it deems best.