191bdf2069
Nova re-generates the resource request of an instance for each server move operation (migrate, resize, evacuate, live-migrate, unshelve) to find (or validate) a target host for the instance move. This patch extends the this logic to support the extended resource request from neutron. As the changes in the neutron interface code is called from nova-compute service during the port binding the compute service version is bumped. And a check is added to the compute-api to reject the move operations with ports having extended resource request if there are old computes in the cluster. blueprint: qos-minimum-guaranteed-packet-rate Change-Id: Ibcf703e254e720b9a6de17527325758676628d48
58 lines
2.5 KiB
ReStructuredText
58 lines
2.5 KiB
ReStructuredText
=================================
|
|
Using ports with resource request
|
|
=================================
|
|
|
|
Starting from microversion 2.72 nova supports creating servers with neutron
|
|
ports having resource request visible as a admin-only port attribute
|
|
``resource_request``. For example a neutron port has resource request if it has
|
|
a QoS minimum bandwidth rule attached. Deleting such servers or detaching such
|
|
ports works since Stein version of nova without requiring any specific
|
|
microversion.
|
|
|
|
However the following API operations are still not supported in nova:
|
|
|
|
* Creating servers with neutron networks having QoS minimum bandwidth rule is
|
|
not supported. The user needs to pre-create the port in that neutron network
|
|
and create the server with the pre-created port.
|
|
|
|
* Attaching Neutron ports and networks having QoS minimum bandwidth rule is not
|
|
supported.
|
|
|
|
Also the following API operations are not supported in the 19.0.0 (Stein)
|
|
version of nova:
|
|
|
|
* Moving (resizing, migrating, live-migrating, evacuating, unshelving after
|
|
shelve offload) servers with ports having resource request is not yet
|
|
supported.
|
|
|
|
As of 20.0.0 (Train), nova supports cold migrating and resizing servers with
|
|
neutron ports having resource requests if both the source and destination
|
|
compute services are upgraded to 20.0.0 (Train) and the
|
|
``[upgrade_levels]/compute`` configuration does not prevent the computes from
|
|
using the latest RPC version. However cross cell resize and cross cell migrate
|
|
operations are still not supported with such ports and Nova will fall back to
|
|
same-cell resize if the server has such ports.
|
|
|
|
As of 21.0.0 (Ussuri), nova supports evacuating, live migrating and unshelving
|
|
servers with neutron ports having resource requests.
|
|
|
|
As of 23.0.0 (Wallaby), nova supports attaching neutron ports having QoS
|
|
minimum bandwidth rules.
|
|
|
|
Extended resource request
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Since neutron 19.0.0 (Xena), neutron implements an extended resource request
|
|
format via the the ``port-resource-request-groups`` neutron API extension. As
|
|
of nova 24.0.0 (Xena), nova does not fully support the new extension. If the
|
|
extension is enabled in neutron, then nova will reject interface attach
|
|
operation. Admins should not enable this API extension in neutron.
|
|
|
|
Please note that Nova only supports the server create operation if every
|
|
nova-compute service also upgraded to Xena version and the
|
|
``[upgrade_levels]/compute`` configuration does not prevent
|
|
the computes from using the latest RPC version.
|
|
|
|
See :nova-doc:`the admin guide <admin/port_with_resource_request.html>` for
|
|
administrative details.
|