Compute supports open-iscsi iSCSI interfaces for offload cards. Offload
hardware must be present and configured on every compute node where offload is
desired. Once an open-iscsi interface is configured, the iface name
(iface.iscsi_ifacename) should be passed to libvirt via the iscsi_iface
parameter for use. All iSCSI sessions will be bound to this iSCSI interface.
Currently supported transports (iface.transport_name) are be2iscsi,
bnx2i, cxgb3i, cxgb4i, qla4xxx, ocs. Configuration changes
are required on the compute node only.
iSER is supported using the separate iSER LibvirtISERVolumeDriver and will be
rejected if used via the iscsi_iface parameter.
Note the distinction between the transport name (iface.transport_name)
and iface name (iface.iscsi_ifacename). The actual iface name must be
specified via the iscsi_iface parameter to libvirt for offload to work.
The default name for an iSCSI iface (open-iscsi parameter
iface.iscsi_ifacename) is in the format transport_name.hwaddress when
generated by iscsiadm.
iscsiadm can be used to view and generate current iface configuration.
Every network interface that supports an open-iscsi transport can have one or
more iscsi ifaces associated with it. If no ifaces have been configured for a
network interface supported by an open-iscsi transport, this command will
create a default iface configuration for that network interface. For example
:
# iscsiadm -m iface
default tcp,<empty>,<empty>,<empty>,<empty>
iser iser,<empty>,<empty>,<empty>,<empty>
bnx2i.00:05:b5:d2:a0:c2 bnx2i,00:05:b5:d2:a0:c2,5.10.10.20,<empty>,<empty>
The output is in the format:
iface_name transport_name,hwaddress,ipaddress,net_ifacename,initiatorname
Individual iface configuration can be viewed via
# iscsiadm -m iface -I IFACE_NAME
# BEGIN RECORD 2.0-873
iface.iscsi_ifacename = cxgb4i.00:07:43:28:b2:58
iface.net_ifacename = <empty>
iface.ipaddress = 102.50.50.80
iface.hwaddress = 00:07:43:28:b2:58
iface.transport_name = cxgb4i
iface.initiatorname = <empty>
# END RECORD
Configuration can be updated as desired via
# iscsiadm -m iface-I IFACE_NAME--op=update -n iface.SETTING -v VALUE
All iface configurations need a minimum of iface.iface_name,
iface.transport_name and iface.hwaddress to be correctly configured
to work. Some transports may require iface.ipaddress and
iface.net_ifacename as well to bind correctly.
Detailed configuration instructions can be found at: https://github.com/open-iscsi/open-iscsi/blob/master/README
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.