This section provides examples of the Logical Domains Manager resources and the properties that can be defined for each of those resources. The resources and properties are shown in bold type in the XML examples. These examples show resources, not binding output. The constraint output can be used to create input for the Logical Domains Manager actions except domain migration output. See Domain Migration. Each resource is defined in a <Section> OVF section and is specified by a <rasd:OtherResourceType> tag.
The following example shows the optional properties of the ldom_info resource:
Example 12 Example ldom_info XML OutputThe following example shows values specified for several ldom_info properties such as uuid, hostid, and Address.
<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="primary"> <Section xsi:type="ovf:ResourceAllocationSection_type"> <Item> <rasd:OtherResourceType>ldom_info</rasd:OtherResourceType> <uuid>c2c3d93b-a3f9-60f6-a45e-f35d55c05fb6</uuid> <rasd:Address>00:03:ba:d8:ba:f6</rasd:Address> <gprop:GenericProperty key="hostid">83d8baf6</gprop:GenericProperty> <gprop:GenericProperty key="master">plum</gprop:GenericProperty> <gprop:GenericProperty key="failure-policy">reset</gprop:GenericProperty> <gprop:GenericProperty key="extended-mapin-space">on</gprop:GenericProperty> <gprop:GenericProperty key="progress">45%</gprop:GenericProperty> <gprop:GenericProperty key="status">ongoing</gprop:GenericProperty> <gprop:GenericProperty key="source">system1</gprop:GenericProperty> <gprop:GenericProperty key="rc-add-policy"></gprop:GenericProperty> <gprop:GenericProperty key="perf-counters">global</gprop:GenericProperty> </Item> </Section> </Content> </Envelope>
The ldom_info resource is always contained within a <Content> section. The following properties within the ldom_info resource are optional properties:
<uuid> tag, which specifies the UUID of the domain.
<rasd:Address> tag, which specifies the MAC address to be assigned to a domain.
<gprop:GenericProperty key="extended-mapin-space"> tag, which specifies whether extended mapin space is enabled (on) or disabled (off) for the domain. The default value is off.
<gprop:GenericProperty key="failure-policy"> tag, which specifies how slave domains should behave should the master domain fail. The default value is ignore. Following are the valid property values:
ignore ignores failures of the master domain (slave domains are unaffected).
panic panics any slave domains when the master domain fails.
reset resets any slave domains when the master domain fails.
stop stops any slave domains when the master domain fails.
<gprop:GenericProperty key="hostid"> tag, which specifies the host ID to be assigned to the domain.
<gprop:GenericProperty key="master"> tag, which specifies up to four comma-separated master domain names.
<gprop:GenericProperty key="progress"> tag, which specifies the percentage of progress made by the command.
<gprop:GenericProperty key="source"> tag, which specifies the machine reporting on the progress of the command.
<gprop:GenericProperty key="status"> tag, which specifies the status of the command (done, failed, or ongoing).
<gprop:GenericProperty key="rc-add-policy"> tag, which specifies whether to enable or disable the direct I/O and SR-IOV I/O virtualization operations on any root complex that might be added to the specified domain. Valid values are iov and no value (rc-add-policy=).
<gprop:GenericProperty key="perf-counters"> tag, which specifies the performance register sets to access (global, htstrand, strand).
If the platform does not have the performance access capability, the perf-counters property value is ignored.
<gprop:GenericProperty key="boot-policy"> tag, which specifies the verified boot policy.
<gprop:GenericProperty key="shutdown-group"> tag, which specifies the shutdown group number for a domain.
Note that the allocation units property, <rasd:AllocationUnits>, for the cpu resource always specifies the number of virtual CPUs and not the number of cores.
A cpu resource is always contained within a <Content> section.
Example 13 cpu XML Section Output from the ldm list-bindings CommandThe following example shows the XML output for the <cpu> section by using the ldm list-bindings command.
<?xml version="1.0"?> <LDM_interface xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ovf="./schemas/envelope" xmlns:rasd="./schemas/CIM_ResourceAllocationSettingData" xmlns:vssd="./schemas/CIM_VirtualSystemSettingData" xmlns:gprop="./schemas/GenericProperty" xmlns:bind="./schemas/Binding" version="1.3" xsi:noNamespaceSchemaLocation="./schemas/combined-v3.xsd"> <cmd> <action>list-bindings</action> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="primary"> <Section xsi:type="ovf:ResourceAllocationSection_Type"> <Item> <rasd:OtherResourceType>ldom_info</rasd:OtherResourceType> <uuid>1e04cdbd-472a-e8b9-ba4c-d3eee86e7725</uuid> <rasd:Address>00:21:28:f5:11:6a</rasd:Address> <gprop:GenericProperty key="hostid">0x8486632a</gprop:GenericProperty> <failure-policy>fff</failure-policy> <wcore>0</wcore> <extended-mapin-space>0</extended-mapin-space> <cpu-arch>native</cpu-arch> <rc-add-policy/> <gprop:GenericProperty key="state">active</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>cpu</rasd:OtherResourceType> <rasd:AllocationUnits>8</rasd:AllocationUnits> <bind:Binding> <Item> <rasd:OtherResourceType>cpu</rasd:OtherResourceType> <gprop:GenericProperty key="vid">0</gprop:GenericProperty> <gprop:GenericProperty key="pid">0</gprop:GenericProperty> <gprop:GenericProperty key="cid">0</gprop:GenericProperty> <gprop:GenericProperty key="strand_percent">100</gprop:GenericProperty> <gprop:GenericProperty key="util_percent">1.1%</gprop:GenericProperty> <gprop:GenericProperty key="normalized_utilization">0.1%</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>Example 14 cpu XML Section Output from the ldm list-domain Command
The following example shows the XML output for the <cpu> section by using the ldm list-domain command.
<?xml version="1.0"?> <LDM_interface xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ovf="./schemas/envelope" xmlns:rasd="./schemas/CIM_ResourceAllocationSettingData" xmlns:vssd="./schemas/CIM_VirtualSystemSettingData" xmlns:gprop="./schemas/GenericProperty" xmlns:bind="./schemas/Binding" version="1.3" xsi:noNamespaceSchemaLocation="./schemas/combined-v3.xsd"> <cmd> <action>list-domain</action> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="primary"> <Section xsi:type="ovf:ResourceAllocationSection_Type"> <Item> <rasd:OtherResourceType>ldom_info</rasd:OtherResourceType> <gprop:GenericProperty key="state">active</gprop:GenericProperty> <gprop:GenericProperty key="flags">-n-cv-</gprop:GenericProperty> <gprop:GenericProperty key="utilization">0.7%</gprop:GenericProperty> <gprop:GenericProperty key="uptime">3h</gprop:GenericProperty> <gprop:GenericProperty key="normalized_utilization">0.1%</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>
A memory resource is always contained within a <Content> section. The only property is the <rasd:AllocationUnits> tag, which signifies the amount of memory.
Example 15 Example memory XML<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>memory</rasd:OtherResourceType> <rasd:AllocationUnits>4G</rasd:AllocationUnits> </Item> </Section> </Content> </Envelope>
A virtual SAN (vsan) resource can be in a <Content> section. It must use <gprop:GenericProperty> tags with the following properties:
service_name – Specifies the name of the virtual SAN
vsan_mask – Specifies whether the mask property value is on or off
vol_name – Specify zero or more instances of this property based on the value of the mask property:
mask=on. Specify zero or more entries. Each entry must specify the worldwide number (WWN) of the device.
mask=off. Specify * to indicate that all devices are included.
The following XML input represents the ldm add-vhba id=14 timeout=27 my-vhba my-vsan primary command, which creates the my-vhba virtual SCSI HBA on the primary domain. The my-vhba virtual SCSI HBA connects to the my-vsan virtual SAN. The my-vhba is created with an ID of 14 and a timeout of 27 seconds.
<LDM_interface ...> <cmd> <action>add-vhba</action> <data version="3.0"> <Envelope> <Content ovf:id="primary" xsi:type="ovf:VirtualSystem_Type"> <Section type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vhba</rasd:OtherResourceType> <gprop:GenericProperty key="vhba_name">my-vhba</gprop:GenericProperty> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> <gprop:GenericProperty key="timeout">27</gprop:GenericProperty> <gprop:GenericProperty key="id">14</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>Example 17 Modifying the Behavior of a Virtual SCSI Host Bus Adapter
The following XML input represents the ldm set-vhba timeout=20 my-vhba primary command, which sets the timeout property value to 20 seconds for the my-vhba virtual SCSI HBA on the primary domain.
<LDM_interface ...> <cmd> <action>set-vhba</action> <data version="3.0"> <Envelope> <Content ovf:id="primary" xsi:type="ovf:VirtualSystem_Type"> <Section type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vhba</rasd:OtherResourceType> <gprop:GenericProperty key="vhba_name">my-vhba</gprop:GenericProperty> <gprop:GenericProperty key="timeout">20</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>Example 18 Removing a Virtual SCSI Host Bus Adapter
The following XML input represents the ldm remove-vhba my-vhba primary command, which removes the my-vhba virtual SCSI HBA from the primary domain.
<LDM_interface ...> <cmd> <action>remove-vhba</action> <data version="3.0"> <Envelope> <Content ovf:id="primary" xsi:type="ovf:VirtualSystem_Type"> <Section type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vhba</rasd:OtherResourceType> <gprop:GenericProperty key="vhba_name">my-vhba</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>Example 19 Creating a Virtual Storage Area Network
The following XML input represents the ldm add-vsan /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0/fp@0,0 my-vsan primary command, which creates the my-vsan virtual SAN on the primary domain. The my-vsan virtual SAN is associated with the /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0/fp@0,0 SCSI HBA initiator port.
<LDM_interface ...> <cmd> <action>add-vsan</action> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="primary"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsan</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0/fp@0,0 </gprop:GenericProperty> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>Example 20 Creating a Virtual Storage Area Network With mask=on
The following XML input represents the ldm add-vsan /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0/fp@0,0 mask=on my-vsan primary command, which creates the my-vsan virtual SAN on the primary domain. The my-vsan virtual SAN is associated with the /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0/fp@0,0 SCSI HBA initiator port and sets mask=on.
<LDM_interface ...> <cmd> <action>add-vsan</action> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="primary"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsan</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0/fp@0,0</gprop:GenericProperty> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> <gprop:GenericProperty key="vsan_mask">on</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>Example 21 Modifying a Virtual Storage Area Network to Set mask=on
The following XML input represents the ldm set-vsan mask=on my-vsan command, which sets the mask property value to on on the my-vsan virtual SAN.
<LDM_interface ...> <cmd> <action>set-vsan</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsan</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> <gprop:GenericProperty key="vsan_mask">on</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>Example 22 Removing a Virtual Storage Area Network
The following XML input represents the ldm remove-vsan my-vsan primary command, which removes the my-vsan virtual SAN.
<LDM_interface ...> <cmd> <action>remove-vsan</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsan</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>Example 23 Listing a Virtual Storage Area Network Information
The following XML input represents the ldm list-vsan my-vsan command, which shows information about the my-vsan virtual SAN.
<LDM_interface ...> <cmd> <action>list-vsan</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:ResourceAllocationSection_Type"> <Item> <rasd:OtherResourceType>vsan</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>
The following example XML output shows that the mask property is set to on and that the naa.1234 and naa.5678 physical devices are assigned to the my-vsan virtual SAN:
<?xml version="1.0"?> <LDM_interface ...> <cmd> <action>list-vsan</action> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="primary"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsan</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> <gprop:GenericProperty key="vsan_mask">on</gprop:GenericProperty> <gprop:GenericProperty key="vol_name">naa.1234</gprop:GenericProperty> <gprop:GenericProperty key="vol_name">naa.5678</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> <response> <status>success</status> </response> </data> <response> <status>success</status> </response> </cmd> <response> <status>success</status> </response> </LDM_interface>Example 24 Viewing the Physical SCSI Host Bus Adapter Initiator Ports in All Domains in the System
The following XML input represents the ldm list-hba command, which shows the physical SCSI HBA initiator ports on all domains.
<LDM_interface ...> <cmd> <action>list-hba</action> <data version="3.0"> </data> </cmd> </LDM_interface>
This example XML output shows information about the physical SCSI HBA initiator ports in all domains on the system. In this example, it shows information about the ten SCSI HBA initiator ports in the primary domain and the three virtual SAN initiator ports in the ldg0_mask_on domain.
<?xml version="1.0"?> <LDM_interface ...> <cmd> <action>list-hba</action> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="primary"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@6c0/pci@1/pci@0/pci@c/pci@0/pci@c/scsi@0/iport@1 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">1</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@6c0/pci@1/pci@0/pci@c/pci@0/pci@c/scsi@0/iport@2 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">1</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@6c0/pci@1/pci@0/pci@c/pci@0/pci@c/scsi@0/iport@4 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">1</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@680/pci@1/pci@0/pci@4/SUNW,emlxs@0,1/fp@0,0 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">0</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@680/pci@1/pci@0/pci@4/SUNW,emlxs@0/fp@0,0 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">52</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0,1/fp@0,0 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">0</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@340/pci@1/pci@0/pci@6/SUNW,emlxs@0/fp@0,0 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">52</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@300/pci@1/pci@0/pci@4/pci@0/pci@c/scsi@0/iport@2 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">1</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@300/pci@1/pci@0/pci@4/pci@0/pci@c/scsi@0/iport@4 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">1</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /pci@300/pci@1/pci@0/pci@4/pci@0/pci@c/scsi@0/iport@1 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">1</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> <response> <status>success</status> </response> </data> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="ldg0_mask_on"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /virtual-devices@100/channel-devices@200/scsi@0/iport@0 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">1</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport"> /virtual-devices@100/channel-devices@200/scsi@1/iport@0 </gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">52</gprop:GenericProperty> </Item> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>hba</rasd:OtherResourceType> <gprop:GenericProperty key="vsan_iport">/iscsi</gprop:GenericProperty> <gprop:GenericProperty key="hba_nlun">0</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> <response> <status>success</status> </response> </data> <response> <status>success</status> </response> </cmd> <response> <status>success</status> </response> </LDM_interface>Example 25 Adding a Physical Device to a Virtual Storage Area Network
The following XML input represents the ldm add-vsan-dev my-vsan naa.1234 command, which adds the naa.1234 volume to the my-vsan virtual SAN.
<LDM_interface ...> <cmd> <action>add-vsan-dev</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsan_dev</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> <gprop:GenericProperty key="vol_name">naa.1234</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>Example 26 Removing a Physical Device From a Virtual Storage Area Network
The following XML input represents the ldm remove-vsan-dev my-vsan naa.1234 command, which removes the naa.1234 device from the my-vsan virtual SAN.
<LDM_interface ...> <cmd> <action>remove-vsan-dev</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsan_dev</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">my-vsan</gprop:GenericProperty> <gprop:GenericProperty key="vol_name">naa.1234</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>
A virtual disk server (vds) resource can be in a <Content> section as part of a domain description, or it can appear on its own in an <Envelope> section. The only property is the <gprop:GenericProperty> tag with a key of service_name, which contains the name of the vds resource being described.
Example 27 Example vds XML<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vds</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">vdstmp</gprop:GenericProperty> </Item> </Section> </Content> </Envelope>
A vds_volume resource can be in a <Content> section as part of a domain description, or it can appear on its own in an <Envelope> section. It must have <gprop:GenericProperty> tags with the following keys:
vol_name – Name of the volume
service_name – Name of the virtual disk server to which this volume is to be bound
block_dev – File or device name to be associated with this volume
Optionally, a vds_volume resource can also have the following properties:
vol_opts – One or more of the following, comma-separated, within one string: {ro,slice,excl}
mpgroup – Name of the multipath (failover) group
<Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vds_volume</rasd:OtherResourceType> <gprop:GenericProperty key="vol_name">vdsdev0</gprop:GenericProperty> <gprop:GenericProperty key="service_name">primary-vds0</gprop:GenericProperty> <gprop:GenericProperty key="block_dev"> opt/SUNWldm/domain_disks/testdisk1</gprop:GenericProperty> <gprop:GenericProperty key="vol_opts">ro</gprop:GenericProperty> <gprop:GenericProperty key="mpgroup">mpgroup-name</gprop:GenericProperty> </Item> </Section> </Envelope>
A disk resource is always contained within a <Content> section. It must have <gprop:GenericProperty> tags with the following keys:
vdisk_name – Name of the virtual disk
service_name – Name of the virtual disk server to which this virtual disk is to be bound
vol_name – Virtual disk service device with which this virtual disk is to be associated
Optionally, the disk resource can also have the timeout property, which is the timeout value in seconds for establishing a connection between a virtual disk client (vdc) and a virtual disk server (vds). If there are multiple virtual disk (vdisk) paths, then the vdc can try to connect to a different vds. The timeout ensures that a connection to any vds is established within the specified amount of time.
Example 29 Example disk XML<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>disk</rasd:OtherResourceType> <gprop:GenericProperty key="vdisk_name">vdisk0</gprop:GenericProperty> <gprop:GenericProperty key="service_name">primary-vds0</gprop:GenericProperty> <gprop:GenericProperty key="vol_name">vdsdev0</gprop:GenericProperty> <gprop:GenericProperty key="timeout">60</gprop:GenericProperty> </Item> </Section> </Content> </Envelope>
A vsw resource can be either in a <Content> section as part of a domain description, or it can appear on its own in an <Envelope> section. It must have a <gprop:GenericProperty> tag with the service_name key, which is the name to be assigned to the virtual switch.
Optionally, the vsw resource can also have the following properties:
<rasd:Address> – Assigns a MAC address to the virtual switch
default-vlan-id – Specifies the default virtual local area network (VLAN) to which a virtual network device or virtual switch needs to be a member, in tagged mode. The first VLAN ID (vid1) is reserved for the default-vlan-id.
dev_path – Path of the network device to be associated with this virtual switch
id – Specifies the ID of a new virtual switch device. By default, ID values are generated automatically, so set this property if you need to match an existing device name in the OS.
inter_vnet_link – Specifies whether to assign LDC channels for inter-vnet communication. Valid values are on, off, and auto. The default value is auto.
linkprop – Specifies that the virtual device gets physical link state updates (the default value of phys-state). When the value is blank, the virtual device does not get physical link state updates.
mode – sc for Oracle Solaris Cluster heartbeat support.
pvid – Port virtual local area network (VLAN) identifier (ID) indicates the VLAN of which the virtual network needs to be a member, in untagged mode.
mtu – Specifies the maximum transmission unit (MTU) of a virtual switch, virtual network devices that are bound to the virtual switch, or both. Valid values are in the range of 1500-16000. The ldm command issues an error if an invalid value is specified.
vid – Virtual local area network (VLAN) identifier (ID) indicates the VLAN of which a virtual network and virtual switch need to be a member, in tagged mode.
vsw-relay-mode – Specifies how to exchange the network traffic between domains.
<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg2"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vsw</rasd:OtherResourceType> <rasd:Address>00:14:4f:fb:ec:00</rasd:Address> <gprop:GenericProperty key="service_name">test-vsw1</gprop:GenericProperty> <gprop:GenericProperty key="inter_vnet_link">auto</gprop:GenericProperty> <gprop:GenericProperty key="default-vlan-id">1</gprop:GenericProperty> <gprop:GenericProperty key="pvid">1</gprop:GenericProperty> <gprop:GenericProperty key="mtu">1500</gprop:GenericProperty> <gprop:GenericProperty key="dev_path">switch@0</gprop:GenericProperty> <gprop:GenericProperty key="id">0</gprop:GenericProperty> </Item> </Section> </Content> </Envelope>
A network resource is always contained within a <Content> section. It must have <gprop:GenericProperty> tags with the following keys:
vnet_name – Name of the virtual network (vnet)
service_name – Name of the virtual switch (vswitch) to which this virtual network is to be bound
Optionally, the network resource can also have the following properties:
<rasd:Address> – Assigns a MAC address to the virtual network
pvid – Port virtual local area network (VLAN) identifier (ID) indicates the VLAN of which the virtual network needs to be a member, in untagged mode.
vid – Virtual local area network (VLAN) identifier (ID) indicates the VLAN of which a virtual network and virtual switch need to be a member, in tagged mode.
linkprop – Specifies that the virtual device gets physical link state updates (the default value of phys-state). When the value is blank, the virtual device does not get physical link state updates.
custom – Specifies whether to enable or disable custom settings for the maximum number of VLANs and MAC addresses that can be assigned to a virtual network device from a trusted host. The default value is disable.
custom/max-mac-addrs – Specifies the maximum number of MAC addresses that can be assigned to a virtual network device from a trusted host. The default value is 4096.
custom/max-vlans – Specifies the maximum number of VLANs that can be assigned to a virtual network device from a trusted host. The default value is 4096.
alt-mac-addrs – Specifies a comma-separated list of alternate MAC addresses.
auto-alt-mac-addrs – Specifies the number of automatic alternate MAC addresses.
pvlan – Specifies a private VLAN.
mtu – Specifies the maximum transmission unit.
maxbw – Specifies the maximum bandwidth limit for the specified port.
id – Specifies the ID of the network device.
allowed-dhcp-cids – Specifies a comma-separated list of MAC addresses or host names.
allowed-ips – Specifies a comma-separated list of IP addresses.
cos – Specifies the class of service priority that is associated with outbound packets on the link.
priority – Specifies the relative priority of the link. The priority is used to schedule packet processing within the system.
protection – Specifies the types of protection in the form of a bit-wise OR of the protection types.
<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>network</rasd:OtherResourceType> <rasd:Address>auto-allocated</rasd:Address> <gprop:GenericProperty key="linkprop">phys-state</gprop:GenericProperty> <gprop:GenericProperty key="custom">enable</gprop:GenericProperty> <gprop:GenericProperty key="custom/max-mac-addrs">4096</gprop:GenericProperty> <gprop:GenericProperty key="custom/max-vlans">12</gprop:GenericProperty> <gprop:GenericProperty key="vnet_name">ldg1-vnet0</gprop:GenericProperty> <gprop:GenericProperty key="service_name">primary-vsw0</gprop:GenericProperty> <rasd:Address>00:14:4f:fc:00:01</rasd:Address> </Item> </Section> </Content> </Envelope>
A vcc resource can be either in a <Content> section as part of a domain description, or it can appear on its own in an <Envelope> section. It can have <gprop:GenericProperty> tags with the following keys:
service_name – Name to be assigned to the virtual console concentrator service
min_port – Minimum port number to be associated with this vcc
max_port – Maximum port number to be associated with this vcc
<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vcc</rasd:OtherResourceType> <gprop:GenericProperty key="service_name">vcc1</gprop:GenericProperty> <gprop:GenericProperty key="min_port">6000</gprop:GenericProperty> <gprop:GenericProperty key="max_port">6100</gprop:GenericProperty> </Item> </Section> </Content> </Envelope>
A var resource is always contained within a <Content> section. It can have <gprop:GenericProperty> tags with the following keys:
name – Name of the variable
value – Value of the variable
<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>var</rasd:OtherResourceType> <gprop:GenericProperty key="name">test_var</gprop:GenericProperty> <gprop:GenericProperty key="value">test1</gprop:GenericProperty> </Item> </Section> </Content> </Envelope>
A physio_device resource is always contained within a <Content> section. This resource can be modified by using the add-io, set-io, remove-io, create-vf, destroy-vf, and set-domain subcommands.
Example 34 Example physio_device XMLThe following examples show how to perform actions on virtual functions, physical functions, and root complexes.
The following XML example fragment shows how to use the ldm add-io command to add the /SYS/MB/NET0/IOVNET.PF0.VF0 virtual function to the ldg1 domain.
<LDM_interface version="1.3"> <cmd> <action>add-io</action> <data version="3.0"> <Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>physio_device</rasd:OtherResourceType> <gprop:GenericProperty key="name"> /SYS/MB/NET0/IOVNET.PF0.VF0</gprop:GenericProperty> </Item> </Section> </Content> </Envelope> </data> </cmd> </LDM_interface>
The following XML example fragment shows how to use the ldm set-io command to set the iov_bus_enable_iov property value to on for the pci_1 root complex.
<LDM_interface version="1.3"> <cmd> <action>set-io</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>physio_device</rasd:OtherResourceType> <gprop:GenericProperty key="name">pci_1</gprop:GenericProperty> <gprop:GenericProperty key="iov_bus_enable_iov"> on</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>
The following XML example fragment shows how to use the ldm set-io command to set the unicast-slots property value to 6 for the /SYS/MB/NET0/IOVNET.PF1 physical function.
<LDM_interface version="1.3"> <cmd> <action>set-io</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>physio_device</rasd:OtherResourceType> <gprop:GenericProperty key="name"> /SYS/MB/NET0/IOVNET.PF1</gprop:GenericProperty> <gprop:GenericProperty key="unicast-slots">6</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>
The following XML example fragment shows how to use the ldm create-vf command to create the /SYS/MB/NET0/IOVNET.PF1.VF0 virtual function with the following property values.
unicast-slots=6
pvid=3
mtu=1600
<LDM_interface version="1.3"> <cmd> <action>create-vf</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vf_device</rasd:OtherResourceType> <gprop:GenericProperty key="iov_pf_name"> /SYS/MB/NET0/IOVNET.PF1</gprop:GenericProperty> <gprop:GenericProperty key="unicast-slots">6</gprop:GenericProperty> <gprop:GenericProperty key="pvid">3</gprop:GenericProperty> <gprop:GenericProperty key="mtu">1600</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>
The following XML example fragment shows how to use the ldm create-vf command to create the number of virtual functions specified by the iov_pf_repeat_count_str value (3) with the /SYS/MB/NET0/IOVNET.PF1 physical function. You cannot specify other property values when you create multiple virtual functions with the iov_pf_repeat_count_str property.
<LDM_interface version="1.3"> <cmd> <action>create-vf</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>vf_device</rasd:OtherResourceType> <gprop:GenericProperty key="iov_pf_name"> /SYS/MB/NET0/IOVNET.PF1</gprop:GenericProperty> <gprop:GenericProperty key="iov_pf_repeat_count_str"> 3</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>
The following XML example fragment shows how to use the ldm set-io command to add a user-assigned name to an existing virtual function.
The iov_vf_name XML property refers to the name of an existing virtual function. The iov_vf_tag property refers to the user-assigned name.
<LDM_interface xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ovf="./schemas/envelope" xmlns:rasd="./schemas/CIM_ResourceAllocationSettingData" xmlns:vssd="./schemas/CIM_VirtualSystemSettingData" xmlns:gprop="./schemas/GenericProperty" xmlns:bind="./schemas/Binding" version="1.6" xsi:noNamespaceSchemaLocation="./schemas/combined-v3.xsd"> <cmd> <action>set-io</action> <data version="3.0"> <Envelope> <References/> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>physio_device</rasd:OtherResourceType> <gprop:GenericProperty key="name">my_new_vf</gprop:GenericProperty> <gprop:GenericProperty key="iov_vf_tag">/SYS/MB/NET2/IOVNET.PF1.VF0</gprop:GenericProperty> </Item> </Section> </Envelope> </data> </cmd> </LDM_interface>
A service processor (SP) configuration (spconfig) resource always appears on its own in an <Envelope> section. It can have <gprop:GenericProperty> tags with the following keys:
spconfig_name – Name of a configuration to be stored on the SP
spconfig_status – The current status of a particular SP configuration. This property is used in the output of an ldm list-spconfig command.
spconfig_aux_status – The auxiliary status of a particular SP configuration. If the running configuration is a degraded configuration, this property is set to degraded.
<Envelope> <Section xsi:type="ovf:ResourceAllocationSection_type"> <Item> <rasd:OtherResourceType>spconfig</rasd:OtherResourceType> <gprop:GenericProperty key="spconfig_name">primary</gprop:GenericProperty> <gprop:GenericProperty key="spconfig_status">current</gprop:GenericProperty> key="spconfig_aux_status">degraded</gprop:GenericProperty> </Item> </Section> </Envelope>
A DRM policy (policy) resource appears in an <Envelope> section and can have <gprop:GenericProperty> tags with the following keys:
policy_name – Name of the DRM policy
policy_enable – Specifies whether the DRM policy is enabled or disabled
policy_priority – Priority of the DRM policy
policy_vcpu_min – Minimum number of virtual CPU resources for a domain
policy_vcpu_max – Maximum number of virtual CPU resources for a domain
policy_util_lower – Lower utilization level at which policy analysis is triggered
policy_util_upper – Upper utilization level at which policy analysis is triggered
policy_tod_begin – Effective start time of the DRM policy
policy_tod_end – Effective stop time of the DRM policy
policy_sample_rate – The sample rate, which is the cycle time in seconds
policy_elastic_margin – Amount of buffer between the upper and lower CPU utilization bounds
policy_attack – Maximum amount of a resource to be added during any one resource control cycle
policy_decay – Maximum amount of a resource to be removed during any one resource control cycle
<Envelope> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>policy</rasd:OtherResourceType> <gprop:GenericProperty key="policy_name">test-policy</gprop:GenericProperty> <gprop:GenericProperty key="policy_enable">on</gprop:GenericProperty> <gprop:GenericProperty key="policy_priority">1</gprop:GenericProperty> <gprop:GenericProperty key="policy_vcpu_min">12</gprop:GenericProperty> <gprop:GenericProperty key="policy_vcpu_max">13</gprop:GenericProperty> <gprop:GenericProperty key="policy_util_lower">8</gprop:GenericProperty> <gprop:GenericProperty key="policy_util_upper">9</gprop:GenericProperty> <gprop:GenericProperty key="policy_tod_begin">07:08:09</gprop:GenericProperty> <gprop:GenericProperty key="policy_tod_end">09:08:07</gprop:GenericProperty> <gprop:GenericProperty key="policy_sample_rate">1</gprop:GenericProperty> <gprop:GenericProperty key="policy_elastic_margin">8</gprop:GenericProperty> <gprop:GenericProperty key="policy_attack">8</gprop:GenericProperty> <gprop:GenericProperty key="policy_decay">9</gprop:GenericProperty> </Item> </Section> </Envelope>
A console resource is always contained within a <Content> section. It can have <gprop:GenericProperty> tags with the following keys:
port – Port to which to change this virtual console (console)
service_name – Virtual console concentrator (vcc) service to which to bind this console
group – Name of the group to which to bind this console
enable-log – Enable or disable virtual console logging for this console
<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" id="ldg1"> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>console</rasd:OtherResourceType> <gprop:GenericProperty key="port">6000</gprop:GenericProperty> <gprop:GenericProperty key="service_name">vcc2</gprop:GenericProperty> <gprop:GenericProperty key="group">group-name</gprop:GenericProperty> <gprop:GenericProperty key="enable-log">on</gprop:GenericProperty> </Item> </Section> </Content> </Envelope>
This example shows what is contained in the <data> section for a ldm migrate-domain command.
First <Content> node (without an <ldom_info> section) is the source domain to migrate.
Second <Content> node (with an <ldom_info> section) is the target domain to which to migrate. The source and target domain names can be the same.
The properties in the <ldom_info> section for the target domain describe the machine to which to migrate and the details needed to migrate to that machine:
The target property specifies the name of the target machine.
The username property specifies the login user name for the target machine. The user name must be SASL 64-bit encoded.
The password property specifies the password to use for logging into the target machine. The password must be SASL 64-bit encoded.
The certificate property specifies whether to use SSL certificates for the migration operation.
The dry_run property specifies whether to perform a dry run of the migration operation.
The force property specifies whether to force the migration.
The spconfig property specifies the name of the configuration to save to the SP on the source machine and the target machine following the migration.
<Envelope> <References/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="ldg1"/> <Content xsi:type="ovf:VirtualSystem_Type" ovf:id="ldg1"/> <Section xsi:type="ovf:ResourceAllocationSection_Type"> <Item> <rasd:OtherResourceType>ldom_info</rasd:OtherResourceType> <gprop:GenericProperty key="target">system2</gprop:GenericProperty> <gprop:GenericProperty key="username">user1</gprop:GenericProperty> <gprop:GenericProperty key="password">user1-password</gprop:GenericProperty> <gprop:GenericProperty key="certificate"></gprop:GenericProperty> <gprop:GenericProperty key="dry_run"></gprop:GenericProperty> <gprop:GenericProperty key="force"></gprop:GenericProperty> <gprop:GenericProperty key="spconfig">system2cfg</gprop:GenericProperty> <Item> </Section> </Content> </Envelope>