Jump to: navigation, search

Difference between revisions of "Ironic"

(Projects)
 
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
= OpenStack Bare Metal Provisioning Program =
 
= OpenStack Bare Metal Provisioning Program =
  
OpenStack bare metal provisioning a.k.a '''Ironic''' is an integrated OpenStack program which aims to provision bare metal machines instead of virtual machines, forked from the Nova baremetal driver. It is best thought of as a bare metal hypervisor API and a set of plugins which interact with the bare metal hypervisors. By default, it will use PXE and IPMI in order to provision and turn on/off machines, but Ironic also supports vendor-specific plugins which may implement additional functionality. For a general overview please see: [http://docs.openstack.org/developer/ironic/deploy/user-guide.html Introduction to Ironic].
+
OpenStack bare metal provisioning a.k.a '''Ironic''' is an integrated OpenStack program which aims to provision bare metal machines instead of virtual machines, forked from the Nova baremetal driver. It is best thought of as a bare metal hypervisor API and a set of plugins which interact with the bare metal hypervisors. By default, it will use PXE and IPMI in order to provision and turn on/off machines, but Ironic also supports vendor-specific plugins which may implement additional functionality. For a general overview please see: [https://docs.openstack.org/ironic/latest/user/index.html Introduction to Ironic].
 +
 
 +
= Latest Documentation =
 +
 
 +
This wiki is updated by volunteers as time permits. For the latest documentation, it is highly advisable to refer to the project documentation which is generated from the embedded documentation. Please see: [https://docs.openstack.org/ironic/latest/ latest ironic documentation].
  
 
= Projects =
 
= Projects =
Line 18: Line 22:
 
|-
 
|-
 
| Source code
 
| Source code
| https://git.openstack.org/cgit/openstack/ironic
+
| https://opendev.org/openstack/ironic
 
|-
 
|-
| Developer doc
+
| Documentation
| http://docs.openstack.org/developer/ironic/
+
| https://docs.openstack.org/ironic/latest/
 
|-
 
|-
 
| Bug tracker
 
| Bug tracker
| https://bugs.launchpad.net/ironic
+
| https://bugs.launchpad.net/ironic/+bugs
 
|-
 
|-
 
| Feature tracker
 
| Feature tracker
| https://bugs.launchpad.net/ironic/+bugs?field.tag=rfe+rfe-approved+&field.tags_combinator=ANY
+
| https://bugs.launchpad.net/ironic/+bugs (rfe-approved tag)
 
|-
 
|-
 
| Specifications
 
| Specifications
Line 34: Line 38:
 
| Weekly meetings
 
| Weekly meetings
 
| https://wiki.openstack.org/wiki/Meetings/Ironic
 
| https://wiki.openstack.org/wiki/Meetings/Ironic
|-
 
| Testing
 
| https://wiki.openstack.org/wiki/Ironic/Testing
 
|-
 
| Drivers
 
| https://wiki.openstack.org/wiki/Ironic/Drivers
 
 
|}
 
|}
  
Line 48: Line 46:
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
 
| Source code
 
| Source code
| https://git.openstack.org/cgit/openstack/python-ironicclient
+
| https://opendev.org/openstack/python-ironicclient
 
|-
 
|-
 
| Bug tracker
 
| Bug tracker
| https://bugs.launchpad.net/python-ironicclient
+
| https://bugs.launchpad.net/python-ironicclient/+bugs
|-
 
| Feature tracker
 
| https://blueprints.launchpad.net/python-ironicclient
 
 
|-
 
|-
| Developer doc
+
| Documentation
| http://docs.openstack.org/developer/python-ironicclient
+
| https://docs.openstack.org/python-ironicclient/latest/
 
|}
 
|}
  
Line 66: Line 61:
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
 
| Source code
 
| Source code
| https://git.openstack.org/cgit/openstack/ironic-python-agent
+
| https://opendev.org/openstack/ironic-python-agent
 
|-
 
|-
 
| Bug tracker
 
| Bug tracker
| https://bugs.launchpad.net/ironic-python-agent"
+
| https://bugs.launchpad.net/ironic-python-agent/+bugs
 
|-
 
|-
| Developer doc
+
| Documentation
| http://docs.openstack.org/developer/ironic-python-agent
+
| https://docs.openstack.org/ironic-python-agent/latest/
|-
 
| Wiki page
 
| https://wiki.openstack.org/wiki/Ironic-python-agent
 
|}
 
 
 
== pyghmi ==
 
 
 
'''pyghmi''' is a python IPMI library; it is an alternative to IPMItool.
 
 
 
{| border="1" cellpadding="2"
 
| Source code
 
| https://git.openstack.org/cgit/openstack/pyghmi
 
|}
 
 
 
== ironic-inspector ==
 
 
 
'''ironic-inspector''' is a hardware introspection tool.
 
 
 
{| border="1" cellpadding="2"
 
| Source code
 
| https://git.openstack.org/cgit/openstack/ironic-inspector
 
|-
 
| Bug Tracker
 
| https://bugs.launchpad.net/ironic-inspector/
 
|-
 
| Feature tracker
 
| https://bugs.launchpad.net/ironic-inspector/+bugs?field.tag=rfe+rfe-approved+&field.tags_combinator=ANY
 
|-
 
| Developer doc
 
| http://docs.openstack.org/developer/ironic-inspector/
 
 
|}
 
|}
  
Line 111: Line 76:
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
 
| Source code
 
| Source code
| https://git.openstack.org/cgit/openstack/bifrost
+
| https://opendev.org/openstack/bifrost
 
|-
 
|-
 
| Bug tracker
 
| Bug tracker
| https://bugs.launchpad.net/bifrost
+
| https://bugs.launchpad.net/bifrost/+bugs
 +
|-
 +
| Documentation
 +
| https://docs.openstack.org/bifrost/latest/
 
|}
 
|}
  
== ironic-lib ==
+
== networking-baremetal ==
  
'''ironic-lib''' is a common library of functions used exclusively by the projects under the [http://governance.openstack.org/reference/projects/ironic.html Ironic governance].
+
'''networking-baremetal''' is a Neutron plugin that covers bare metal use cases; it provides deep Ironic/Neutron integration.
  
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
 
| Source code
 
| Source code
| https://git.openstack.org/cgit/openstack/ironic-lib
+
| https://opendev.org/openstack/networking-baremetal
 
|-
 
|-
 
| Bug tracker
 
| Bug tracker
| https://bugs.launchpad.net/ironic-lib
+
| https://bugs.launchpad.net/networking-baremetal/+bugs
 
|}
 
|}
  
Line 135: Line 103:
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
 
| Source code
 
| Source code
| https://git.openstack.org/cgit/openstack/ironic-ui
+
| https://opendev.org/openstack/ironic-ui
 
|-
 
|-
 
| Bug Tracker
 
| Bug Tracker
| https://bugs.launchpad.net/ironic-ui/
+
| https://bugs.launchpad.net/ironic-ui/+bugs
 
|-
 
|-
| Developer doc
+
| Documentation
| http://docs.openstack.org/developer/ironic-ui/
+
| https://docs.openstack.org/ironic-ui/latest/
 
|}
 
|}
  
 
= People =
 
= People =
  
'''PTL''': Jim Rollenhagen (jroll)
+
Ironic uses a Distributed Project Leadership (DPL) model. This means that the project operates on consensus-based leadership with specific contacts with points of focus. The current list of liasons can be found in the Governance repo, in projects.yaml: https://opendev.org/openstack/governance/src/branch/master/reference/projects.yaml.
  
'''Core teams''': https://wiki.openstack.org/wiki/Ironic/CoreTeam
+
As of this writing, January 2026, the liasons are:
 
+
{| border="1" cellpadding="2"
'''Cross-project liaisons''': https://wiki.openstack.org/wiki/CrossProjectLiaisons
+
| Release
 +
| Riccardo Pittau (rpittau)
 +
|-
 +
| TACT-SIG (testing/CI)
 +
| Dmitry Tantsur (dtantsur)
 +
|-
 +
| Security
 +
| Jay Faulkner (JayF)
 +
|-
 +
| Technical Committee
 +
| Doug Goldstein (cardoe)
 +
|-
 +
| Events
 +
| Iury Gregory Melo Ferreira (iurygregory)
 +
|}
  
 
= Status =
 
= Status =
  
Ironic was first available as an incubated project in the "Icehouse" release. The following "Juno" release saw improved integration with Nova, as well as many stability and feature improvements. Ironic completed the project graduation review at the end of the "Juno" cycle, and began "Kilo" development cycle as an officially integrated OpenStack project.
+
Ironic is the premier project in OpenStack for provisioning Bare Metal. It can be used behind Nova via a virt driver, directly as part of an integrated OpenStack cloud, or used standalone without other OpenStack services (such as via metal3.io or bifrost).
  
 
Release notes for Ironic are available at http://docs.openstack.org/releasenotes/ironic/.
 
Release notes for Ironic are available at http://docs.openstack.org/releasenotes/ironic/.
  
Information on the latest status of Ironic's test suite can be found here: https://wiki.openstack.org/wiki/Ironic/Testing.
+
Ironic publishes a semi-yearly, post PTG summary of project work items. These summaries are a good way to get up-to-date information on project status. They can be found at https://specs.openstack.org/openstack/ironic-specs/.  
 
 
For a list of current drivers and the status of their CI testing, see the [https://wiki.openstack.org/wiki/Ironic/Drivers wiki page we maintain] and the [http://stackalytics.com/report/driverlog?project_id=openstack%2Fironic Stackalytics page which tracks third-party CI].
 
  
 
= Etherpads =
 
= Etherpads =
  
Our project teams frequently share ideas and coordinate by using etherpads, some of which stick around for a while. Those are listed here.
+
Our project teams frequently share ideas and coordinate by using etherpads, some of which stick around for a while. Warning: information on project whiteboards may not be up to date.
 
* [https://etherpad.openstack.org/p/IronicWhiteBoard General-purpose "white board"]
 
* [https://etherpad.openstack.org/p/IronicWhiteBoard General-purpose "white board"]
* [https://etherpad.openstack.org/p/IronicReviewDay Coordination point during "review days"]
 
  
 
= IRC =
 
= IRC =
  
Discussion of the project also takes place in '''#openstack-ironic''' on irc.freenode.net. This is a great place to jump in and start your ironic adventure. The channel is very welcoming to new users - no question is a wrong question!
+
Discussion of the project also takes place in '''#openstack-ironic''' on irc.oftc.net. This is a great place to jump in and start your ironic adventure. The channel is very welcoming to new users - no question is a wrong question!
  
 
= Developers =
 
= Developers =
  
Guidelines for developers can be found here: https://wiki.openstack.org/wiki/Ironic/Developer_guidelines
+
Guidelines for developers can be found here: https://docs.openstack.org/ironic/latest/contributor/contributing.html. Most successful contributions are made by contributors coordinating closely with the project over IRC, mailing list, or bug tracker.  
Please note that for any non-trivial change that is not a fix for a particular bug, you have to go through the [https://wiki.openstack.org/wiki/Ironic/Specs_Process specs review process]
 
 
 
  
 
= Pixie Boots, the Ironic drummer bear =
 
= Pixie Boots, the Ironic drummer bear =
  
Pixie Boots is the mascot of the "'''Bear Metal'''" Provisioning Program for OpenStack, a.k.a Ironic. It was drawn by [https://plus.google.com/u/0/+LucasAlvaresGomes/ Lucas Alvares Gomes] and two versions of it are available: One colored and one outlined. An icon shadowcut of pixie boots is also available, courtesy of [https://plus.google.com/u/0/+MichaelKrotscheck Michael Krotscheck]. Feel free to use the images to make t-shirts or any other paraphernalia.
+
Pixie Boots is the mascot of the "'''Bear Metal'''" Provisioning Program for OpenStack, a.k.a Ironic. It was drawn by [http://lucasgom.es Lucas Alvares Gomes] and two versions of it are available: One colored and one outlined. An icon shadowcut of pixie boots is also available, courtesy of [https://plus.google.com/u/0/+MichaelKrotscheck Michael Krotscheck]. Feel free to use the images to make t-shirts or any other paraphernalia.
  
 
High-resolution PNGs versions are available by clicking on the images below:
 
High-resolution PNGs versions are available by clicking on the images below:
Line 196: Line 173:
 
Pixie Boots rockin': \m/ ʕ•͡ᴥ•ʔ \m/
 
Pixie Boots rockin': \m/ ʕ•͡ᴥ•ʔ \m/
  
= Misc. =
 
 
* [[Ironic/IPv6|Ironic + IPv6]]
 
  
 
= Outside the OpenStack Bare Metal Provisioning Program =
 
= Outside the OpenStack Bare Metal Provisioning Program =
  
== Out-of-tree Ironic drivers ==
+
== Metal3 ==
  
Drivers that can be used with Ironic but that aren't in the [https://git.openstack.org/cgit/openstack/ironic ironic] repository, may be found in the [https://git.openstack.org/cgit/openstack/ironic-staging-drivers ironic-staging-drivers] repository.
+
Metal3.io is a CNCF incubated project which coordinates use of Ironic to provide bare metal resources to Kubernetes cluster API.
== Vendor-specific tools ==
 
  
Third-party vendors are encouraged to share their tools/scripts which might help people using their hardware with '''ironic'''.  These tools are not maintained by the ironic core team and are not under the governance of the OpenStack Technical Committee. Vendors themselves should be contacted for features requests/bug fixes.
 
 
{| border="1" cellpadding="2"
 
| Developer doc
 
| https://wiki.openstack.org/wiki/Ironic/ThirdPartyVendorToolsDeveloperDoc
 
|-
 
| List of third party vendor tools
 
| https://wiki.openstack.org/wiki/Ironic/ThirdPartyVendorToolsList
 
|}
 
  
  
 
[[category: baremetal]]
 
[[category: baremetal]]
 
[[category: ironic]]
 
[[category: ironic]]

Latest revision as of 18:44, 20 January 2026

OpenStack Bare Metal Provisioning Program

OpenStack bare metal provisioning a.k.a Ironic is an integrated OpenStack program which aims to provision bare metal machines instead of virtual machines, forked from the Nova baremetal driver. It is best thought of as a bare metal hypervisor API and a set of plugins which interact with the bare metal hypervisors. By default, it will use PXE and IPMI in order to provision and turn on/off machines, but Ironic also supports vendor-specific plugins which may implement additional functionality. For a general overview please see: Introduction to Ironic.

Latest Documentation

This wiki is updated by volunteers as time permits. For the latest documentation, it is highly advisable to refer to the project documentation which is generated from the embedded documentation. Please see: latest ironic documentation.

Projects

Ironic is governed by the OpenStack Technical Committee. The complete list of deliverables (and associated tags) that are officially under the Ironic umbrella is available here.

Some of the deliverables (or projects) are described below.

ironic

The ironic project includes the ironic-api and ironic-conductor processes.

Official name OpenStack Bare Metal Provisioning
Source code https://opendev.org/openstack/ironic
Documentation https://docs.openstack.org/ironic/latest/
Bug tracker https://bugs.launchpad.net/ironic/+bugs
Feature tracker https://bugs.launchpad.net/ironic/+bugs (rfe-approved tag)
Specifications http://specs.openstack.org/openstack/ironic-specs
Weekly meetings https://wiki.openstack.org/wiki/Meetings/Ironic

python-ironicclient

python-ironicclient is a package that includes the python client and CLI.

Source code https://opendev.org/openstack/python-ironicclient
Bug tracker https://bugs.launchpad.net/python-ironicclient/+bugs
Documentation https://docs.openstack.org/python-ironicclient/latest/

ironic-python-agent

ironic-python-agent is a small python application that is meant to be embedded in a deployment ramdisk.

Source code https://opendev.org/openstack/ironic-python-agent
Bug tracker https://bugs.launchpad.net/ironic-python-agent/+bugs
Documentation https://docs.openstack.org/ironic-python-agent/latest/

bifrost

bifrost consists of Ansible play books for running Ironic standalone (without other OpenStack components).

Source code https://opendev.org/openstack/bifrost
Bug tracker https://bugs.launchpad.net/bifrost/+bugs
Documentation https://docs.openstack.org/bifrost/latest/

networking-baremetal

networking-baremetal is a Neutron plugin that covers bare metal use cases; it provides deep Ironic/Neutron integration.

Source code https://opendev.org/openstack/networking-baremetal
Bug tracker https://bugs.launchpad.net/networking-baremetal/+bugs

ironic-ui

ironic-ui is a horizon plugin for ironic.

Source code https://opendev.org/openstack/ironic-ui
Bug Tracker https://bugs.launchpad.net/ironic-ui/+bugs
Documentation https://docs.openstack.org/ironic-ui/latest/

People

Ironic uses a Distributed Project Leadership (DPL) model. This means that the project operates on consensus-based leadership with specific contacts with points of focus. The current list of liasons can be found in the Governance repo, in projects.yaml: https://opendev.org/openstack/governance/src/branch/master/reference/projects.yaml.

As of this writing, January 2026, the liasons are:

Release Riccardo Pittau (rpittau)
TACT-SIG (testing/CI) Dmitry Tantsur (dtantsur)
Security Jay Faulkner (JayF)
Technical Committee Doug Goldstein (cardoe)
Events Iury Gregory Melo Ferreira (iurygregory)

Status

Ironic is the premier project in OpenStack for provisioning Bare Metal. It can be used behind Nova via a virt driver, directly as part of an integrated OpenStack cloud, or used standalone without other OpenStack services (such as via metal3.io or bifrost).

Release notes for Ironic are available at http://docs.openstack.org/releasenotes/ironic/.

Ironic publishes a semi-yearly, post PTG summary of project work items. These summaries are a good way to get up-to-date information on project status. They can be found at https://specs.openstack.org/openstack/ironic-specs/.

Etherpads

Our project teams frequently share ideas and coordinate by using etherpads, some of which stick around for a while. Warning: information on project whiteboards may not be up to date.

IRC

Discussion of the project also takes place in #openstack-ironic on irc.oftc.net. This is a great place to jump in and start your ironic adventure. The channel is very welcoming to new users - no question is a wrong question!

Developers

Guidelines for developers can be found here: https://docs.openstack.org/ironic/latest/contributor/contributing.html. Most successful contributions are made by contributors coordinating closely with the project over IRC, mailing list, or bug tracker.

Pixie Boots, the Ironic drummer bear

Pixie Boots is the mascot of the "Bear Metal" Provisioning Program for OpenStack, a.k.a Ironic. It was drawn by Lucas Alvares Gomes and two versions of it are available: One colored and one outlined. An icon shadowcut of pixie boots is also available, courtesy of Michael Krotscheck. Feel free to use the images to make t-shirts or any other paraphernalia.

High-resolution PNGs versions are available by clicking on the images below:

You can also download the Inkscape SVG vector file: Ironic_mascot.svg

All images are licensed CC BY-SA.

Pixie Boots rockin': \m/ ʕ•͡ᴥ•ʔ \m/


Outside the OpenStack Bare Metal Provisioning Program

Metal3

Metal3.io is a CNCF incubated project which coordinates use of Ironic to provide bare metal resources to Kubernetes cluster API.