Julia Kreger 4f79cb3932 Don't try to lock for vif detach
Historically, we did not have a prohibition upon removing
a VIF entry stored in the extra field, however the VIF
attachment/detachment feature resulted in a task being
created which by default attempts to pull a reservation
lock unless explicitly shared.

This is problematic as part of the process of undeploying
a node as exclusive locks are generated.

Presently, if any of those locked tasks run long, such as
a new image being required or for some crazy reason,
the BMC power request hangs for a few minutes, the VIF
record may be orphaned and never removed, as the
expectation is that nova deletes the VIF record from ironic.

This allows the VIF record to be removed when a node is
no longer in active use and possibly subject to a lock being
held for a long period of time, such as when setting up
for CLEANING.

Additionally, this patch moves the actual VIF record
deletion until after the detachment action in the
event that it fails. This allows for the state in
ironic to be consistent instead of the record
being removed before the detachment occurs.

Change-Id: Ib7544e43a2b26441d4f562b584bbc7fee6a11fea
Closes-Bug: #1743652
2018-02-07 10:23:47 -08:00
2018-02-05 01:03:53 +00:00
2018-02-02 11:21:29 +00:00
2018-02-07 10:23:47 -08:00
2018-01-29 12:55:35 +07:00
2013-05-02 14:55:43 -04:00
2013-10-28 10:19:15 +00:00
2013-07-22 09:51:10 +02:00
2017-11-21 21:02:52 +01:00
2017-08-21 17:41:52 -04:00
2013-05-02 14:55:43 -04:00
2017-08-21 17:41:52 -04:00
2017-03-02 11:45:27 +00:00
2018-01-26 18:27:10 +00:00
2015-08-07 09:51:32 +00:00

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: https://launchpad.net/ironic

For information on how to contribute to ironic, see https://docs.openstack.org/ironic/latest/contributor

Description
A service for managing and provisioning Bare Metal servers.
Readme 305 MiB
Languages
Python 98.2%
Shell 1.8%