Description of the OMF Inventory Schema:

Notes on the following descriptions:

  • applies to OMF 5.2 (however most of it applies to 5.3 as well)
  • Fields marked with '*' need a valid value to have a working OMF deployment.
  • In some table you will see a 'inventory_id' field. This is the ID of the inventory process which is executed only at Winlab so far. At Winlab, this process is run automatically at regular interval to generate/update inventory information. This process is not portable yet, and thus not currently included in OMF. In the meantime, please use a bogus inventory ID as a value for these 'inventory_id' fields (e.g. '123').
  • The Installation guide contains a sample inventory as an SQL dump file.

Table: 'testbeds'

This table holds a list of all the testbeds that are managed by this organization, (e.g. if you only have one testbed, then this table should contain one row)

Field Description Example
id * A unique ID for this testbed (int) 1
node_domain * A domain name for this testbed domain (varchar) indoor
x_max * The maximum number of node on the X axis (int) for this testbed 1
y_max * The maximum number of node on the Y axis (int) 4
z_max * The maximum number of node on the Z axis (int) 1
control_ip * The network address for the Control Network for this testbed 10.0.0.0
data_ip Optional, the network address for the default Experimental Network for this testbed 192.168.0.0
cm_ip Optional, the network address for the Chassis Manager network for this testbed
latitude Optional, the latitude for the 0 reference point for this testbed (float)
longitude Optional, the longitude for the 0 reference point for this testbed (float)
elevation Optional, the elevation for the 0 reference point for this testbed (float)
pxe_url * The URL of the PXE Grid Service serving this testbed http://myserver1:5052/pxe
cmc_url * The URL of the CMC Grid Service serving this testbed http://myserver2:5052/cmc
oml_url * The URL of the OML2 Grid Service serving this testbed http://myserver1:5052/oml2
frisbee_url * The URL of the Frisbee Grid Service serving this testbed http://myserver1:5052/frisbee
frisbee_default_disk * The default disk of the testbed nodes on which frisbee should write an image /dev/sda
image_host * The hostname/IP of the Server that hosts the available disk images for this testbed 10.0.0.210

Table: 'pxe_image'

This table holds a list of all the available PXE images for this organization.

Field Description Example
id * A unique ID for this PXE image (int) 1
image_name * The name of this PXE image, i.e. the name of the file in '/tftpboot/pxelinux.cfg/' holding the PXE boot configs for this image (varchar) myPXEbootv1
short_description A short description for this PXE image (varchar)

Table: 'locations'

This table holds a list of all the available locations where testbed nodes can be placed for this organization.

Field Description Example
id * A unique ID for this location (int) 1
x * The X position of this location in the logical coordinate system of a given testbed (int) 1
y * The Y position of this location in the testbed logical coordinate system (int) 1
z * The Z position of this location in the testbed logical coordinate system (int) 1
latitude Optional, the latitude for this node (float)
longitude Optional, the longitude for this node (float)
elevation Optional, the elevation for this node (float)
testbed_id * The ID of the testbed to which this location belongs to, see 'testbeds' Table (int) 1
name Optional, a name for this location (varchar)

Table: 'nodes'

This table holds a list of all the nodes in all the testbeds of this organization.

Field Description Example
id * A unique ID for this node (int) 1
inventory_id * The ID of the inventory automated process that generated this row (only used at Winlab so far) (int) 123
chassis_sn The manufacturer serial number of the chassis of this node (int)
motherboard_id * The ID of the motherboard installed in this node, see 'motherboards' Table (int) 1
location_id * The ID of the location of this node, see 'locations' Table (int) 1
control_ip * The IP address of this node on the Control Network 10.0.0.1
pxeimage_id * The ID of the default PXE image that should be used for this node, see 'pxeimages' Table 1

Table: 'motherboards'

This table holds a list of all the motherboards available for this organization.

Field Description Example
id * A unique ID for this motherboard (int) 1
inventory_id * The ID of the inventory automated process that generated this row (only used at Winlab so far) (int) 123
mfr_sn The manufacturer serial number for this motherboard (int)
cpu_type The type of CPUs on this motherboard, as given by vendor (varchar)
cpu_n The number of CPUs on this motherboard (int)
cpu_hz The speed of CPUs on this motherboard, in MHz (int)
hd_sn The hard drive serial number on this motherboard (varchar)
hd_size The hard drive size, in bytes (int)
hd_status The hard drive status (int)
memory The memory size on this motherboard, in bytes (int)

Table: 'devices'

This table holds a list of all the devices available for this organization.

Field Description Example
id * A unique ID for this device (int) 1
device_kind_id * The ID for the kind/type of this device, see 'device_kinds' Table (int) 1
motherboard_id * The ID for the motherboard on which this device is currently installed, see 'motherboards' Table (int) 1
inventory_id * The ID of the inventory automated process that generated this row (only used at Winlab so far) (int) 123
address Optional, a logical address assigned to this device on the motherboard (varchar)
mac The MAC address of this device (only if this is a network device) (varchar) 00:0b:6b:0a:83:63
canonical_name The name that the OS (e.g. Linux) would likely use to refer to this device ath0

Table: 'inventories'

This table holds a list of all the inventory process ran by this organization.

Field Description Example
id * A unique ID for this inventory process (int) 1
opened * A timestamp recording the start of this inventory process (timestamp)
closed * A timestamp recording the end of this inventory process (timestamp)

Tables: 'device_kinds' , 'device_ouis' , 'device_tags'

These table holds a various information about the devices available for this organization. These tables are used to record inventory-only information. They are not required for OMF to work properly, i.e. the various OMF component will work without problem if these tables are left empty.