OpenStack Compute (Nova)
Go to file
Nikola Dipanov 4bd8a4bd8e Fix overloading of block device on boot by device name
Currently it is not possible to override an existing image block device
by supplying the device with the same name at boot (see also
Ib1ba130042aabbbe7bb8d60fc212c66e446c1d73). Even though we want to
discourage usage of device names as much as possible in the Nova API (as
not all hypervisors can honour them), EC2 API requires that this is possible.

While we want to make sure we document that supplying device names at
boot is only really desirable if you want to override some of the ones
contained in the image, introducing a different labeling system just so
that we don't use the device names seems like an overkill for a feature
that does not seem to be very used.

This patch adds a method that will do this deterministically when
compiling all the block device information for the request.

It is also worth noting that The EC2 API allows only subset of block
device attributes to be overridden in this way (see [1]). This limitation
did not exist previously in Nova, and there seems to be no reason why we
would need that complexity, so it would be up to the EC2 compatibility
code to deal with this.

[1] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html#Using_OverridingAMIBDM

Doc-Impact
Closes-bug: #1370250

Change-Id: I60ecdcae81ff5dec34f0fa0a39e0739759a6fa59
2015-07-29 18:34:41 +01:00
contrib Merge "changed quantum to neutron in vif-openstack" 2014-03-05 10:45:05 +00:00
devstack cells: add devstack/tempest-dsvm-cells-rc for gating 2015-06-23 00:47:59 +00:00
doc Merge "Document when we should have a microversion" 2015-07-29 04:12:10 +00:00
etc/nova Merge "Add missing policy for limits extension" 2015-07-29 05:40:45 +00:00
nova Fix overloading of block device on boot by device name 2015-07-29 18:34:41 +01:00
plugins/xenserver xenapi: don't send terminating chunk on errors 2015-01-14 13:58:18 +00:00
tools tox: make it possible to run pep8 on current patch only 2015-07-24 16:15:38 +01:00
.coveragerc Port Cheetah templates to Jinja2 2013-09-02 16:03:34 +02:00
.gitignore remove all traces of pylint testing infrastructure 2015-01-08 11:56:45 +00:00
.gitreview Add .gitreview config file for gerrit. 2011-10-24 15:07:19 -04:00
.mailmap Add mailmap entry 2014-05-07 12:14:26 -07:00
.testr.conf Add tox -e functional 2014-11-12 15:31:06 -05:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:37 +00:00
HACKING.rst Remove unnecessary oslo namespace import checks 2015-07-23 11:01:19 +00:00
LICENSE initial commit 2010-05-27 23:05:26 -07:00
MAINTAINERS Add a maintainers file 2015-05-23 03:22:07 +10:00
MANIFEST.in Finish AUTHORS transition. 2012-07-05 09:11:37 -05:00
README.rst Update links in README 2014-05-07 16:06:24 -07:00
babel.cfg Get rid of distutils.extra. 2012-02-08 19:30:39 -08:00
bandit.yaml Add bandit for security static analysis testing 2015-07-02 09:17:48 -07:00
openstack-common.conf Switch to the oslo_utils.fileutils 2015-07-24 14:10:44 +03:00
requirements.txt Merge "Replace openssl calls with cryptography lib" 2015-07-28 20:06:27 +00:00
run_tests.sh Fix likely undesired use of redirection 2015-02-02 16:26:31 +01:00
setup.cfg Merge "Switch to oslo.service library" 2015-07-22 04:50:24 +00:00
setup.py Updated from global requirements 2015-07-18 16:07:43 +00:00
test-requirements.txt Updated from global requirements 2015-07-23 12:52:36 +00:00
tox.ini tox: make it possible to run pep8 on current patch only 2015-07-24 16:15:38 +01:00

README.rst

OpenStack Nova README

OpenStack Nova provides a cloud computing fabric controller, supporting a wide variety of virtualization technologies, including KVM, Xen, LXC, VMware, and more. In addition to its native API, it includes compatibility with the commonly encountered Amazon EC2 and S3 APIs.

OpenStack Nova 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.

Nova primarily consists of a set of Python daemons, though it requires and integrates with a number of native system components for databases, messaging and virtualization capabilities.

To keep updated with new developments in the OpenStack project follow @openstack on Twitter.

To learn how to deploy OpenStack Nova, consult the documentation available online at:

http://docs.openstack.org

For information about the different compute (hypervisor) drivers supported by Nova, read this page on the wiki:

https://wiki.openstack.org/wiki/HypervisorSupportMatrix

In the unfortunate event that bugs are discovered, they should be reported to the appropriate bug tracker. If you obtained the software from a 3rd party operating system vendor, it is often wise to use their own bug tracker for reporting problems. In all other cases use the master OpenStack bug tracker, available at:

http://bugs.launchpad.net/nova

Developers wishing to work on the OpenStack Nova project should always base their work on the latest Nova code, available from the master GIT repository at:

https://git.openstack.org/cgit/openstack/nova

Developers should also join the discussion on the mailing list, at:

http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Any new code must follow the development guidelines detailed in the HACKING.rst file, and pass all unit tests. Further developer focused documentation is available at:

http://docs.openstack.org/developer/nova/

For information on how to contribute to Nova, please see the contents of the CONTRIBUTING.rst file.

-- End of broadcast