
To prepare for the unlikely event that Neutron merges and an operator enables the port-resource-request-groups neutron API extension before nova adds support for it, this patch rejects server creation if such extension is enabled in Neutron. Enabling that extension has zero benefits without nova support hence the harsh but simple rejection. A subsequent patch will reject server lifecycle operations in a more sophisticated way and as soon as we support some operations, like boot, the deployer might rightfully choose to enable the Neutron extension. Change-Id: I2c55d9da13a570efbc1c862116cea31aaa6aa02e blueprint: qos-minimum-guaranteed-packet-rate
2.4 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 support
the new extension. If the extension is enabled in neutron, then nova
will reject server create and move operations, as well as interface
attach operation. Admins should not enable this API extension in
neutron.
See the admin guide <admin/port_with_resource_request.html>
for administrative details.