Update nova-status and docs for nova-compute requiring placement 1.14
With change I2f367b06e683ed7c815dd9e0536a46e5f0a27e6c, nova-compute now unconditionally requires Placement 1.14 to be available (the client side code doesn't check to see if 1.14 is available before trying to use it). This change updates the nova-status check for the minimum required version of Placement and also starts the "Queens" section of the Placement upgrade notes docs. Change-Id: I37415e384d375bc9b548a0223f787a9236286bb0
This commit is contained in:
parent
a0ff3e2936
commit
4b7a150584
|
@ -101,6 +101,10 @@ Upgrade
|
||||||
* Checks for the Placement API are modified to require version 1.4, that
|
* Checks for the Placement API are modified to require version 1.4, that
|
||||||
is needed in Pike and further for nova-scheduler to work correctly.
|
is needed in Pike and further for nova-scheduler to work correctly.
|
||||||
|
|
||||||
|
**17.0.0 (Queens)**
|
||||||
|
|
||||||
|
* Checks for the Placement API are modified to require version 1.14.
|
||||||
|
|
||||||
See Also
|
See Also
|
||||||
========
|
========
|
||||||
|
|
||||||
|
|
|
@ -49,12 +49,14 @@ changed or be partially complete at this time.
|
||||||
* `Compute Node Inventory <https://specs.openstack.org/openstack/nova-specs/specs/newton/implemented/compute-node-inventory-newton.html>`_
|
* `Compute Node Inventory <https://specs.openstack.org/openstack/nova-specs/specs/newton/implemented/compute-node-inventory-newton.html>`_
|
||||||
* `Resource Provider Allocations <https://specs.openstack.org/openstack/nova-specs/specs/newton/implemented/resource-providers-allocations.html>`_
|
* `Resource Provider Allocations <https://specs.openstack.org/openstack/nova-specs/specs/newton/implemented/resource-providers-allocations.html>`_
|
||||||
* `Resource Provider Base Models <https://specs.openstack.org/openstack/nova-specs/specs/newton/implemented/resource-providers.html>`_
|
* `Resource Provider Base Models <https://specs.openstack.org/openstack/nova-specs/specs/newton/implemented/resource-providers.html>`_
|
||||||
* `Nested Resource Providers <http://specs.openstack.org/openstack/nova-specs/specs/pike/approved/nested-resource-providers.html>`_
|
* `Nested Resource Providers`_
|
||||||
* `Custom Resource Classes <http://specs.openstack.org/openstack/nova-specs/specs/ocata/implemented/custom-resource-classes.html>`_
|
* `Custom Resource Classes <http://specs.openstack.org/openstack/nova-specs/specs/ocata/implemented/custom-resource-classes.html>`_
|
||||||
* `Scheduler Filters in DB <http://specs.openstack.org/openstack/nova-specs/specs/ocata/implemented/resource-providers-scheduler-db-filters.html>`_
|
* `Scheduler Filters in DB <http://specs.openstack.org/openstack/nova-specs/specs/ocata/implemented/resource-providers-scheduler-db-filters.html>`_
|
||||||
* `Scheduler claiming resources to the Placement API <http://specs.openstack.org/openstack/nova-specs/specs/pike/approved/placement-claims.html>`_
|
* `Scheduler claiming resources to the Placement API <http://specs.openstack.org/openstack/nova-specs/specs/pike/approved/placement-claims.html>`_
|
||||||
* `The Traits API - Manage Traits with ResourceProvider <http://specs.openstack.org/openstack/nova-specs/specs/pike/approved/resource-provider-traits.html>`_
|
* `The Traits API - Manage Traits with ResourceProvider <http://specs.openstack.org/openstack/nova-specs/specs/pike/approved/resource-provider-traits.html>`_
|
||||||
|
|
||||||
|
.. _Nested Resource Providers: http://specs.openstack.org/openstack/nova-specs/specs/queens/approved/nested-resource-providers.html
|
||||||
|
|
||||||
Deployment
|
Deployment
|
||||||
==========
|
==========
|
||||||
|
|
||||||
|
@ -264,6 +266,14 @@ Pike (16.0.0)
|
||||||
used in testing, this is mentioned for completeness but should not be a
|
used in testing, this is mentioned for completeness but should not be a
|
||||||
concern for production deployments.
|
concern for production deployments.
|
||||||
|
|
||||||
|
Queens (17.0.0)
|
||||||
|
~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
* The minimum Placement API microversion required by the *nova-compute* service
|
||||||
|
is ``1.14`` in order to support `Nested Resource Providers`_. This means you
|
||||||
|
must upgrade the Placement service before upgrading any *nova-compute*
|
||||||
|
services to Queens.
|
||||||
|
|
||||||
|
|
||||||
REST API
|
REST API
|
||||||
========
|
========
|
||||||
|
|
|
@ -196,10 +196,12 @@ class UpgradeCommands(object):
|
||||||
versions = self._placement_get("/")
|
versions = self._placement_get("/")
|
||||||
max_version = pkg_resources.parse_version(
|
max_version = pkg_resources.parse_version(
|
||||||
versions["versions"][0]["max_version"])
|
versions["versions"][0]["max_version"])
|
||||||
# NOTE(rpodolyaka): 1.10 is needed in Pike and further as
|
# NOTE(mriedem): 1.14 is required by nova-compute services to
|
||||||
# FilterScheduler requires GET /allocation_candidates in the
|
# get and set parent resource provider UUIDs for nested resource
|
||||||
# Placement API.
|
# provider support.
|
||||||
needs_version = pkg_resources.parse_version("1.10")
|
# NOTE: If you bump this version, remember to update the history
|
||||||
|
# section in the nova-status man page (doc/source/cli/nova-status).
|
||||||
|
needs_version = pkg_resources.parse_version("1.14")
|
||||||
if max_version < needs_version:
|
if max_version < needs_version:
|
||||||
msg = (_('Placement API version %(needed)s needed, '
|
msg = (_('Placement API version %(needed)s needed, '
|
||||||
'you have %(current)s.') %
|
'you have %(current)s.') %
|
||||||
|
|
|
@ -210,7 +210,7 @@ class TestPlacementCheck(test.NoDBTestCase):
|
||||||
"versions": [
|
"versions": [
|
||||||
{
|
{
|
||||||
"min_version": "1.0",
|
"min_version": "1.0",
|
||||||
"max_version": "1.10",
|
"max_version": "1.14",
|
||||||
"id": "v1.0"
|
"id": "v1.0"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -230,7 +230,7 @@ class TestPlacementCheck(test.NoDBTestCase):
|
||||||
"versions": [
|
"versions": [
|
||||||
{
|
{
|
||||||
"min_version": "1.0",
|
"min_version": "1.0",
|
||||||
"max_version": "1.10",
|
"max_version": "1.14",
|
||||||
"id": "v1.0"
|
"id": "v1.0"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -251,7 +251,7 @@ class TestPlacementCheck(test.NoDBTestCase):
|
||||||
}
|
}
|
||||||
res = self.cmd._check_placement()
|
res = self.cmd._check_placement()
|
||||||
self.assertEqual(status.UpgradeCheckCode.FAILURE, res.code)
|
self.assertEqual(status.UpgradeCheckCode.FAILURE, res.code)
|
||||||
self.assertIn('Placement API version 1.10 needed, you have 0.9',
|
self.assertIn('Placement API version 1.14 needed, you have 0.9',
|
||||||
res.details)
|
res.details)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
upgrade:
|
||||||
|
- |
|
||||||
|
The ``nova-compute`` service requires Placement API version 1.14 at a
|
||||||
|
minimum to support `nested resource providers`_.
|
||||||
|
|
||||||
|
.. _nested resource providers: http://specs.openstack.org/openstack/nova-specs/specs/queens/approved/nested-resource-providers.html
|
Loading…
Reference in New Issue