A <nodes> element is used to describe a collection of machines (``nodes''), such as those required by a lease or those in a simulated site. Instead of describing each node individually, the <nodes> stores information on each distinct node capacity along with the number of nodes with that capacity. For example, if a lease required 5 nodes with 1024MB of memory and 10 nodes with 2048GB of memory, the <nodes> will have two ``sets of nodes'', instead of 15 individual entries.
The root <nodes> element has no attributes:
<nodes> ... </nodes>
And must contain one or more node-set element:
<node-set numnodes="..."> ... </node-set>
Each <node-set> element represents a ``set of nodes''. The numnodes attribute is used to denote the number of nodes with the same capacity. This capacity is described with one or more <res> elements:
<res type="..." amount="..."/>
The type attribute specifies the type of resource (CPU, Memory, etc.), and amount specifies the amount of that resource in each node (the amount must be a positive integer). There resource type must be a string and, although the <res> element places no restrictions on this string (i.e., you can use any arbitrary resource you want), the <lease> and <site> elements (described below) do place some restrictions on it.
The following specifies a collection of 12 nodes, all with one CPU, four with 1024MB of memory and eight with 2048MB of memory.
<nodes> <node-set numnodes="4"> <res type="CPU" amount="100"/> <res type="Memory" amount="1024"/> </node-set> <node-set numnodes="8"> <res type="CPU" amount="100"/> <res type="Memory" amount="2048"/> </node-set> </nodes>
Borja Sotomayor 2009-12-17