A service for managing and provisioning Bare Metal servers.
Go to file
Mark Goddard b9b820954d Physical network aware VIF attachment
When attaching virtual interfaces to ironic ports and portgroups, we
need to take account of the physical network assigned to those ports and
portgroups. A neutron virtual interface has a set of physical networks
on which it can be attached which is governed by the segments of its
network (of which there may be more than one).

This change makes the ironic VIF attach API physical network-aware using
the physical network information added to the port object.

When selecting a port or portgroup to attach a virtual interface to, the
following ordered criteria are applied:

* Require ports or portgroups to have a physical network that is
  None or one of the VIF's allowed physical networks.
* Prefer ports or portgroups with a physical network field which
  is not None.
* Prefer portgroups to ports.
* Prefer ports with PXE enabled.

The change is backwards compatible, as the old behaviour is maintained
when ports have a physical_network field which is None.

Change-Id: I3d13bfacfb5578f570791e3c06e769a9a0140a4c
Partial-Bug: #1666009
2017-07-06 13:46:53 +01:00
api-ref Fix quotes in documentation and schema description 2017-07-03 19:32:26 +03:00
devstack Fetch Glance endpoint from Keystone if it's not provided in the configuration 2017-06-23 16:42:40 +02:00
doc/source Merge "switch from oslosphinx to openstackdocstheme" 2017-07-05 01:39:35 +00:00
etc Merge "Add REST API for volume connector and volume target operation" 2017-07-04 22:33:03 +00:00
install-guide/source Add docs for node.resource_class and flavor creation 2017-06-13 14:03:48 +02:00
ironic Physical network aware VIF attachment 2017-07-06 13:46:53 +01:00
ironic_tempest_plugin Merge "Replace test.attr with decorators.attr" 2017-05-29 21:10:01 +00:00
releasenotes Merge "switch from oslosphinx to openstackdocstheme" 2017-07-05 01:39:35 +00:00
tools Enforce releasenotes file naming 2017-04-05 16:41:52 -07:00
.gitignore Add reno for release notes management 2015-11-13 03:22:32 -08:00
.gitreview Added project infrastructure needs. 2013-05-02 14:55:43 -04:00
.mailmap Update mailmap for Joe Gordon 2013-10-28 10:19:15 +00:00
.testr.conf Prepare for functional testing 2015-09-28 21:27:01 +00:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 16:55:23 +01:00
LICENSE Added project infrastructure needs. 2013-05-02 14:55:43 -04:00
README.rst Show team and repo badges on README 2016-11-25 13:28:32 +01:00
RELEASE-NOTES Add release notes for 4.0.0 2015-08-31 21:43:58 +00:00
Vagrantfile Change vagrant.yml to vagrant.yaml 2015-08-07 09:51:32 +00:00
babel.cfg Run extract_messages 2013-07-22 09:51:10 +02:00
driver-requirements.txt Wait until iDRAC is ready before out-of-band cleaning 2017-06-15 10:06:40 -04:00
requirements.txt Updated from global requirements 2017-06-19 21:03:28 +00:00
setup.cfg Adds clean step 'restore_irmc_bios_config' to iRMC drivers 2017-06-29 10:06:20 +00:00
setup.py Updated from global requirements 2017-03-02 11:45:27 +00:00
test-requirements.txt switch from oslosphinx to openstackdocstheme 2017-07-04 15:32:27 +01:00
tox.ini Remove times.dbm prior to test run 2017-06-14 16:23:49 +00:00
vagrant.yaml Added CORS support middleware to Ironic 2015-09-01 19:45:01 +00:00

README.rst

Team and repository tags

image

Ironic

Ironic consists of an API and plug-ins for managing and provisioning physical machines in a security-aware and fault-tolerant manner. It can be used with nova as a hypervisor driver, or standalone service using bifrost. By default, it will use PXE and IPMI to interact with bare metal machines. Ironic also supports vendor-specific plug-ins which may implement additional functionality.

Ironic is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.

Project resources

Project status, bugs, and requests for feature enhancements (RFEs) are tracked on Launchpad: http://launchpad.net/ironic

For information on how to contribute to ironic, see http://docs.openstack.org/developer/ironic/dev/code-contribution-guide.html