Jump to: navigation, search

Ironic/Drivers

< Ironic
Revision as of 04:29, 9 October 2015 by Rameshg87 (talk | contribs) (3rd Party Drivers)

Drivers

Ironic supports pluggable back-end drivers for different types of hardware to enable features specific to unique hardware platforms and leverage divergent capabilities via a common API . This API is divided into three sections: core, common, and vendor. While authors of vendor drivers may break new ground in the designated "vendor_passthru" section of the API, they are strongly encouraged to converge on a common API across vendors. More details may be found under the system architecture description.

Hardware drivers must undergo CI testing so as to ensure their continued functionality. Some drivers will be tested upstream, while many will require third-party CI testing due to the unique nature of their hardware (and the unmanageable complexity of a single team required to maintain a test infrastructure encompassing hardware from many diverse vendors). Guidelines on that testing can be found on the Ironic/Testing wiki page.

Out-of-tree drivers are supported by Ironic and may be loaded via python entrypoints. Here is a list of known out-of-tree drivers:

Name Link Comments
Cisco UCS https://communities.cisco.com/docs/DOC-56373
HP OneView https://github.com/HewlettPackard/ironic-driver-oneview This is a preview version that works within Kilo release. Upcoming versions are being developed in-tree.

The table below describes the CI test coverage of the current set of drivers. Note that drivers are composed of more than one interface (eg, power and deploy). Not all combinations of interfaces are necessarily tested together, but we are striving to get test coverage for each interface in at least one driver.


Interface Type Interface Name Test coverage provided by driver name
deploy agent agent_ssh; agent_ipmitool is used in production for Rackspace OnMetal
deploy pxe pxe_ssh
deploy iscsi none
power drac None
power ilo None
power ipminative pxe_ipminative (provided by ibm-xcat-ci)
power ipmitool ** most widely used power driver in production, but lacks upstream CI
power seamicro None
power snmp None
power ssh pxe_ssh
power amt None
power irmc None
power iboot None
power virtualbox None
power Wake-On-Lan None


Links to graphs of the CI system's current status should be included in the table below, when available.

Driver Name Primary Contact Email and IRC handle Testing Status
pxe_ssh devananda (devananda dot vdv at gmail) / lucasagomes (lucasagomes at gmail) tested in the upstream gate
pxe_ipminative Yuan Y Bai <bybai at cn dot ibm dot com> / Long LA Cheng <chenglch at cn dot ibm dot com> / Jarrod Johnson (jjohnson2 at lenovo dot com) Third-party CI: "ibm-xcat-ci" <xcat@cn.ibm.com>
pxe_ipmitool devananda (devananda dot vdv at gmail) / lucasagomes (lucasagomes at gmail) used by TripleO, but not CI tested
agent_ssh jroll (jim at jimrollenhagen dot com) tested in the upstream gate
agent_ipmitool jroll (jim at jimrollenhagen dot com) used by Rackspace OnMetal, not CI tested upstream
PXEDracDriver cdearborn Christopher Dearborn (Christopher_Dearborn at dell dot com) Not CI tested
pxe_ipa lucasagomes (lucasagomes at gmail) tested in the upstream gate

3rd Party Drivers

Driver Name Description Primary Contact Email and IRC handle More information
pxe_ilo Uses pxe for booting bare metal, deploys using iSCSI from Ironic conductor node, and uses iLO for managing bare metal. rameshg87, stendulker, nisha (ilo_drivers at groups.ext.hpe.com) https://wiki.openstack.org/wiki/Ironic/Drivers/iLODrivers
iscsi_ilo Uses virtual media for booting bare metal, deploys using iSCSI from Ironic conductor node, and uses iLO for managing bare metal. rameshg87, stendulker, nisha (ilo_drivers at groups.ext.hpe.com) https://wiki.openstack.org/wiki/Ironic/Drivers/iLODrivers
agent_ilo Uses virtual media for booting bare metal, deploys from within the bare metal node, and uses iLO for managing bare metal. rameshg87, stendulker, nisha (ilo_drivers at groups.ext.hpe.com) https://wiki.openstack.org/wiki/Ironic/Drivers/iLODrivers