diff --git a/perl-xCAT/xCAT/Schema.pm b/perl-xCAT/xCAT/Schema.pm index 8ff1f18f5..39abdace2 100644 --- a/perl-xCAT/xCAT/Schema.pm +++ b/perl-xCAT/xCAT/Schema.pm @@ -141,7 +141,7 @@ litefile => { }, vm => { - cols => [qw(node host migrationdest storage cfgstore memory cpus nics bootorder clockoffset virtflags vncport textconsole powerstate beacon comments disable)], + cols => [qw(node host migrationdest storage storagemodel cfgstore memory cpus nics nicmodel bootorder clockoffset virtflags vncport textconsole powerstate beacon comments disable)], keys => [qw(node)], table_desc => 'Virtualization parameters', descriptions => { @@ -149,10 +149,12 @@ vm => { 'host' => 'The system that currently hosts the VM', 'migrationdest' => 'A noderange representing candidate destinations for migration (i.e. similar systems, same SAN, or other criteria that xCAT can use', 'storage' => 'A list of storage files or devices to be used, pipe delimited. i.e. /cluster/vm/ for KVM/Xen, or nfs:///path/to/folder/ for VMware', + 'storagemodel' => 'Model of storage devices to provide to guest', 'cfgstore' => 'Optional location for persistant storage separate of emulated hard drives for virtualization solutions that require persistant store to place configuration data', 'memory' => 'Megabytes of memory the VM currently should be set to.', 'cpus' => 'Number of CPUs the node should see.', - 'nics' => 'Network configuration parameters. Of the general form [physnet:]interface[=model],.. Generally, interface describes the vlan entity (default for native, tagged for tagged, vl[number] for a specific vlan. model is the type of device to imitate (i.e. virtio, e1000 (generally default), rtl8139, depending on the virtualization technology. physnet is a virtual switch name or port description that is used for some virtualization technologies to construct virtual switches. hypervisor.netmap can map names to hypervisor specific layouts, or the descriptions described there may be used directly here where possible.', + 'nics' => 'Network configuration parameters. Of the general form [physnet:]interface,.. Generally, interface describes the vlan entity (default for native, tagged for tagged, vl[number] for a specific vlan. physnet is a virtual switch name or port description that is used for some virtualization technologies to construct virtual switches. hypervisor.netmap can map names to hypervisor specific layouts, or the descriptions described there may be used directly here where possible.', + 'nicmodel' => 'Model of NICs that will be provided to VMs (i.e. e1000, rtl8139, virtio, etc)', 'bootorder' => 'Boot sequence (i.e. net,hd)', 'clockoffset' => 'Whether to have guest RTC synced to "localtime" or "utc" If not populated, xCAT will guess based on the nodetype.os contents.', 'virtflags' => 'General flags used by the virtualization method. For example, in Xen it could, among other things, specify paravirtualized setup, or direct kernel boot. For a hypervisor/dom0 entry, it is the virtualization method (i.e. "xen"). For KVM, the following flag=value pairs are recognized: @@ -1535,6 +1537,10 @@ my @nodeattrs = ( tabentry => 'vm.storage', access_tabentry => 'vm.node=attr:node', }, + {attr_name => 'vmstoragemodel', + tabentry => 'vm.storagemodel', + access_tabentry => 'vm.node=attr:node', + }, {attr_name => 'vmcfgstore', tabentry => 'vm.cfgstore', access_tabentry => 'vm.node=attr:node', @@ -1551,6 +1557,10 @@ my @nodeattrs = ( tabentry => 'vm.nics', access_tabentry => 'vm.node=attr:node', }, + {attr_name => 'vmnicnicmodel', + tabentry => 'vm.nicmodel', + access_tabentry => 'vm.node=attr:node', + }, {attr_name => 'vmbootorder', tabentry => 'vm.bootorder', access_tabentry => 'vm.node=attr:node',