
This adds the final missing pieces to support creating servers with ports having extended resource request. 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 such server create requests if there are old computes in the cluster. Note that some of the negative and SRIOV related interface attach tests are also started to pass as they are not dependent on any of the interface attach specific implementation. Still interface attach is broken here as the failing of the positive tests show. blueprint: qos-minimum-guaranteed-packet-rate Change-Id: I9060cc9cb9e0d5de641ade78c5fd7e1cc77ade46
2.6 KiB
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 server move operations, as well as 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 the admin guide <admin/port_with_resource_request.html>
for administrative details.