Commit Graph

99 Commits

Author SHA1 Message Date
Zuul af9977c71c Merge "Restore nova-consoleauth to install docs" 2018-12-17 16:36:28 +00:00
Zuul 5ca357c100 Merge "Use links to placement docs in nova docs" 2018-12-08 10:05:43 +00:00
Zuul 5bf6f6304e Merge "Deprecate the nova-xvpvncproxy service" 2018-12-05 13:18:41 +00:00
Zuul e26ac8f24a Merge "Deprecate the nova-console service" 2018-12-05 13:05:06 +00:00
melanie witt 983e6ea551 Restore nova-consoleauth to install docs
The installation of the nova-consoleauth service was erroneously
removed from the docs prematurely. The nova-consoleauth service
is still being used in Rocky, with the removal being possible in
Stein.

This should have been fixed as part of change
Ibbdc7c50c312da2acc59dfe64de95a519f87f123 but was missed.

This is also related to the release note update in Rocky
under change Ie637b4871df8b870193b5bc07eece15c03860c06.

Co-Authored-By: Matt Riedemann <mriedem.os@gmail.com>

Closes-Bug: #1793255
Related-Bug: #1798188

Change-Id: Ied268da9e70bd2807c2dfe7a479181fbec52979d
2018-11-28 15:21:55 -05:00
Takashi NATSUME 7dd7d9a5fa Use links to placement docs in nova docs
Placement documents have been published since
I667387ec262680af899a628520c107fa0d4eec24.

So use links to placement documents
https://docs.openstack.org/placement/latest/
in nova documents.

Change-Id: I218a6d11fea934e8991e41b4b36203c6ba3e3dbf
2018-11-26 05:39:56 +00:00
Zuul edee8e6f8d Merge "Add nova-status upgrade check for consoles" 2018-10-30 22:44:07 +00:00
melanie witt d2535b0261 Add nova-status upgrade check for consoles
This will check if a deployment is currently using consoles and warns
the operator to set [workarounds]enable_consoleauth = True on their
console proxy host if they are performing a rolling upgrade which is
not yet complete.

Partial-Bug: #1798188

Change-Id: Idd6079ce4038d6f19966e98bcc61422b61b3636b
2018-10-26 04:34:49 +00:00
Matt Riedemann c86f309c56 Add more documentation for online_data_migrations CLI
This is a follow up to commit c4c6dc736 to clarify some
confusing comments in the code, add more comments in
the actual runtime code, and also provide an example
in the CLI man page docs along with an explanation of
the output, specifically for the case that $found>0
but done=0 and what that means.

Change-Id: I0691caab2c44d3189504c54e51bb263ecdc5d1d2
Related-Bug: #1794364
2018-10-24 16:14:00 -04:00
imacdonn 3eea37b85b Handle online_data_migrations exceptions
When online_data_migrations raise exceptions, nova/cinder-manage catches
the exceptions, prints fairly useless "something didn't work" messages,
and moves on. Two issues:

1) The user(/admin) has no way to see what actually failed (exception
   detail is not logged)

2) The command returns exit status 0, as if all possible migrations have
   been completed successfully - this can cause failures to get missed,
   especially if automated

This change adds logging of the exceptions, and introduces a new exit
status of 2, which indicates that no updates took effect in the last
batch attempt, but some are (still) failing, which requires intervention.

Change-Id: Ib684091af0b19e62396f6becc78c656c49a60504
Closes-Bug: #1796192
2018-10-16 15:49:51 +00:00
Stephen Finucane 4e6cffe45e Deprecate the nova-xvpvncproxy service
This is a relic that has long since been replaced by the noVNC proxy
service. Start preparing for its removal.

Change-Id: Icb225dec3ad291b751e475bd3703ce0eb30b44db
2018-10-15 10:03:13 +01:00
Stephen Finucane f18ae13e36 Deprecate the nova-console service
As discussed on the mailing list [1].

[1] http://lists.openstack.org/pipermail/openstack-dev/2018-October/135413.html

Change-Id: I1f1fa1d0f79bec5a4101e03bc2d43ba581dd35a0
2018-10-15 10:03:08 +01:00
Zuul 2f635fa914 Merge "Validate transport_url in nova-manage cell_v2 commands" 2018-09-25 10:10:24 +00:00
Christian Berendt d3e254e47b Add missing backticks in nova-manage docs
Change-Id: I8f7a4c8029a54902d531d98da62a0d8bd7cc383d
2018-09-18 15:02:36 +02:00
Eric Fried 2833785f59 Report client: _reshape helper, placement min bump
Add a thin wrapper to invoke the POST /reshaper placement API with
appropriate error checking. This bumps the placement minimum to the
reshaper microversion, 1.30.

Change-Id: Idf8997d5efdfdfca6967899a0882ffb9ecf96915
blueprint: reshape-provider-tree
2018-08-24 15:39:18 -05:00
Zuul 63c1f9a17a Merge "Add nova-status upgrade check for request spec migrations" 2018-07-28 02:39:19 +00:00
Zuul 99d2a34d1f Merge "Add nova-manage placement sync_aggregates" 2018-07-25 18:56:26 +00:00
Matt Riedemann aa6360d683 Add nova-manage placement sync_aggregates
This adds the "nova-manage placement sync_aggregates"
command which will compare nova host aggregates to
placement resource provider aggregates and add any
missing resource provider aggregates based on the nova
host aggregates.

At this time, it's only additive in that the command
does not remove resource provider aggregates if those
matching nodes are not found in nova host aggregates.
That likely needs to happen in a change that provides
an opt-in option for that behavior since it could be
destructive for externally-managed provider aggregates
for things like ironic nodes or shared storage pools.

Part of blueprint placement-mirror-host-aggregates

Change-Id: Iac67b6bf7e46fbac02b9d3cb59efc3c59b9e56c8
2018-07-24 11:19:23 -04:00
Matt Riedemann 660e328a25 Use consumer generation in _heal_allocations_for_instance
If we're updating existing allocations for an instance due
to the project_id/user_id not matching the instance, we should
use the consumer_generation parameter, new in placement 1.28,
to ensure we don't overwrite the allocations while another
process is updating them.

As a result, the include_project_user kwarg to method
get_allocations_for_consumer is removed since nothing else
is using it now, and the minimum required version of placement
checked by nova-status is updated to 1.28.

Change-Id: I4d5f26061594fa9863c1110e6152069e44168cc3
2018-07-23 14:09:55 -04:00
Matt Riedemann 6b6d81cf2b Heal allocations with incomplete consumer information
Allocations created before microversion 1.8 didn't have project_id
/ user_id consumer information. In Rocky those will be migrated
to have consumer records, but using configurable sentinel values.

As part of heal_allocations, we can detect this and heal the
allocations using the instance.project_id/user_id information.

This is something we'd need if we ever use Placement allocation
information counting quotas.

Note that we should be using Placement API version 1.28 with
consumer_generation when updating the allocations, but since
people might backport this change the usage of consumer
generations is left for a follow up patch.

Related to blueprint add-consumer-generation

Change-Id: Idba40838b7b1d5389ab308f2ea40e28911aecffa
2018-07-13 11:29:54 -04:00
Matt Riedemann e73f828057 Add nova-status upgrade check for request spec migrations
We can't easily add a blocker db sync migration to make
sure the migrate_instances_add_request_spec online data
migration has been run since we have to iterate both cells
(for instances) and the API DB (for request specs) and that's
not something we should do during a db sync call.

But we want to eventually drop the online data migration and
the accompanying compat code found in the api and conductor
services.

This adds a nova-status upgrade check for missing request specs
and fails if any existing non-deleted instances are found which
don't have a matching request spec.

Related to blueprint request-spec-use-by-compute

Change-Id: I1fb63765f0b0e8f35d6a66dccf9d12cc20e9c661
2018-07-11 14:34:03 -04:00
Zuul 44c8aec3f0 Merge "Mention nova-status upgrade check CLI in upgrade doc" 2018-06-29 15:45:58 +00:00
Matt Riedemann 1476b030bd Fix CLI docs for nova-manage api_db commands
There were a few changes needed here:

1. There is no "API cell database", just the API
   database, so this removes mentions of cells.

2. The VERSION argument was missing from the sync help.

3. The sync command does not create a database, it upgrades
   the schema. Wording for that was borrowed from the
   nova-manage db sync help.

4. Starting in Rocky, the api_db sync command also upgrades
   the schema for the optional placement database if configured
   so that's mentioned here as well.

Change-Id: Ibc49f93b8bd51d9a050acde5ef3dc8aad91321ca
Closes-Bug: #1778733
2018-06-26 10:16:55 -04:00
Kevin_Zheng a79e2885d0 Mention nova-status upgrade check CLI in upgrade doc
Mention nova-status upgrade check CLI in upgrade doc

Closes-Bug: #1772973
Change-Id: I5e643febebd435550af2d7c49546a16ac5a21453
2018-06-20 14:22:13 +08:00
Matt Riedemann bc6ca87a6a Validate transport_url in nova-manage cell_v2 commands
In the three commands that take a --transport-url option,
or reads it from config, this will validate the tranport URL is
valid by calling the parsing code in oslo.messaging and fail
if the URL does not parse correctly.

Change-Id: If60cdf697cab2f035cd22830303f5ecaba0f3969
Closes-Bug: #1770341
2018-06-19 17:29:30 -05:00
Zuul 907e168431 Merge "Add supplementary info for simple_cell_setup cmd" 2018-06-16 00:54:20 +00:00
Chen 8992416f9d Add supplementary info for simple_cell_setup cmd
Mention that if no transport_url is provided then the one
in the configuration file will be used for command
``nova-manage cell_v2 simple_cell_setup [--transport-url <transport_url>]``,
just like that for other cell_v2 commands.

Change-Id: Ifededa59f7ffe5887e67e29b93f70fa70dfaef33
2018-06-15 11:17:48 +08:00
Eric Fried 20da4ee469 Update nova-status & docs: require placement 1.25
Change I496e8d64907fdcb0e2da255725aed1fc529725f2 made nova-scheduler
require placement >= 1.25 so this change updates the minimum required
version checked in the nova-status upgrade check command along with the
upgrade docs.

related to blueprint: granular-resource-requests

Change-Id: I0a17ee362461a8ae2113804687799bb9d9216110
2018-06-13 10:15:13 -05:00
tianhui 98c503337a Fix bug to doc:nova-status
There is a wrong format in the doc and correct it

Change-Id: Ib171ca43e648a02c933f0cbefe6ca2186b2794ef
2018-06-07 19:37:18 +08:00
Zuul 07652b8bab Merge "Add nova-manage placement heal_allocations CLI" 2018-06-06 20:32:18 +00:00
Matt Riedemann 95106d2fa1 Add nova-manage placement heal_allocations CLI
This adds a new CLI which will iterate all non-cell0
cells looking for instances that (1) have a host,
(2) aren't undergoing a task state transition and
(3) don't have allocations in placement and try
to allocate resources, based on the instance embedded
flavor, against the compute node resource provider
on which the instance is currently running.

This is meant as a way to help migrate CachingScheduler
users off the CachingScheduler by first shoring up
instance allocations in placement for any instances
created after Pike, when the nova-compute resource
tracker code stopped creating allocations in placement
since the FilterScheduler does it at the time of
scheduling (but the CachingScheduler doesn't).

This will be useful beyond just getting deployments
off the CachingScheduler, however, since operators
will be able to use it to fix incorrect allocations
resulting from failed operations.

There are several TODOs and NOTEs inline about things
we could build on top of this or improve, but for now
this is the basic idea.

Change-Id: Iab67fd56ab4845f8ee19ca36e7353730638efb21
2018-06-01 18:45:10 -04:00
Zuul d741f624c8 Merge "doc: Start using openstackdoctheme's extlink extension" 2018-05-30 15:21:12 +00:00
Zuul 465051809c Merge "doc: Don't use single backticks in man pages" 2018-05-30 13:41:50 +00:00
Matt Riedemann 216e232def Update nova-status and docs for required placement 1.24
Change Id7eecbfe53f3a973d828122cf0149b2e10b8833f made
nova-scheduler require placement >= 1.24 so this change
updates the minimum required version checked in the
nova-status upgrade check command along with the upgrade
docs.

Change-Id: I4369f7fb1453e896864222fa407437982be8f6b5
2018-05-18 21:46:25 +00:00
Zuul 3f1c581fc6 Merge "Use .. deprecated:: theme for deprecations" 2018-05-08 23:47:51 +00:00
Eric Fried fca14f0906 Use .. deprecated:: theme for deprecations
We were using `warning`, and `important` themes to mark deprecations in
various places.  We have a `deprecated` role, so this change switches to
use it.

Note that I also found the following files that mentioned deprecation,
but not in a way where using this role seemed appropriate.  I'm
recording them here so you know I considered them.

doc/source/admin/configuration/hypervisor-kvm.rst
doc/source/admin/configuration/schedulers.rst
doc/source/cli/index.rst
doc/source/cli/nova-rootwrap.rst
doc/source/contributor/api.rst
doc/source/contributor/code-review.rst
doc/source/contributor/policies.rst
doc/source/contributor/project-scope.rst
doc/source/reference/policy-enforcement.rst
doc/source/reference/stable-api.rst
doc/source/user/feature-classification.rst
doc/source/user/flavors.rst
doc/source/user/upgrade.rst

Change-Id: Icd7613d9886cfe0775372c817e5f3d07d8fb553d
2018-05-08 21:50:51 +00:00
melanie witt e91dad3ee9 Deprecate the nova-consoleauth service
Part of blueprint convert-consoles-to-objects

Change-Id: I9bfa89d2d8fe2b5803b4e1478377e13dc3231b1c
2018-05-03 10:02:29 -04:00
Stephen Finucane dd1a416bc9 doc: Start using openstackdoctheme's extlink extension
This ensures we have version-specific references to other projects [1].
Note that this doesn't mean the URLs are actually valid - we need to do
more work (linkcheck?) here, but it's an improvement nonetheless.

[1] https://docs.openstack.org/openstackdocstheme/latest/#external-link-helper

Change-Id: Ifb99e727110c4904a85bc4a13366c2cae300b8df
2018-05-03 14:34:47 +01:00
Zuul 7e25f50cbf Merge "Cleanup patch for the cell-disable series" 2018-05-03 10:58:38 +00:00
Stephen Finucane fcdc61a18a doc: Don't use single backticks in man pages
This is done in a couple of places in the documentation and is broken
rST. 'prog' is semantic markup that fits right in here, so use that.

Change-Id: Ic654e33daaf68b01f561ac8d792934d5a57a07e5
2018-05-03 10:48:43 +01:00
Zuul d079d26444 Merge "Log a warning and add nova-status check for old API service versions" 2018-04-20 05:21:00 +00:00
Surya Seetharaman 441a637771 Cleanup patch for the cell-disable series
This patch addresses the cleanup comments from the reviewers
for the cell-disable spec series.

Change-Id: I9e6e9518ca380b497f411dd01fed85562dd2731c
2018-04-13 10:03:53 +02:00
Zuul 7891acf809 Merge "Marker reset option for nova-manage map_instances" 2018-04-11 17:57:04 +00:00
Matt Riedemann eaf6340847 Log a warning and add nova-status check for old API service versions
Change Ib984c30543acb3ca9cb95fb53d44d9ded0f5a5c8, which was added
in Newton when cells v2 was optional, added some transitional code
to the API for looking up an instance, which didn't rely on instance
mappings in a cell to find the instance if the minimum nova-osapi_compute
service version was from before Ocata.

People have reported this being a source of confusion when upgrading
from before Ocata, when cells v2 wasn't required, to Ocata+ where cells
v2 along with the mapping setup is required. That's because they might
have older nova-osapi_compute service version records in their 'nova'
(cell) database which makes the API think the code is older than it
actually is, and results in an InstanceNotFound error.

This change does two things:

1. Adds a warning to the compute API code in this scenario to serve
   as a breadcrumb if a deployment hits this issue.

2. A nova-status check to look for minimum nova-osapi_compute service
   versions across all cells and report the issue as a warning. It's
   not an upgrade failure since we don't know how the nova-api service
   is configured, but leave that investigation up to the deployer.

This is also written in such a way that we should be able to backport
this through to stable/ocata.

Change-Id: Ie2bc4616439352850cf29a9de7d33a06c8f7c2b8
Closes-Bug: #1759316
2018-04-09 14:43:34 -04:00
Zuul 0120643def Merge "Add --enable and --disable options to nova-manage update_cell" 2018-04-05 23:16:13 +00:00
Matt Riedemann 7eb6703521 Add nova-status check for ironic flavor migration
In Pike we started requiring that ironic instances have their
embedded flavor migrated to track the ironic node custom
resource class. This can be done either via the normal running
of the nova-compute service and ironic driver or via the
'nova-manage db ironic_flavor_migration' command.

This change adds a nova-status check to see if there are any
unmigrated ironic instances across all non-cell0 cells, and
is based mostly on the same logic within the nova-manage command
except it's multi-cell aware and doesn't use the objects.

Change-Id: Ifd22325e849db2353b1b1eedfe998e3d6a79591c
2018-04-04 17:23:06 -04:00
Surya Seetharaman cd01cbe65e Add --enable and --disable options to nova-manage update_cell
Through these new options, users can enable or disable a cell
through the CLI.

Related to blueprint cell-disable

Change-Id: I761f2e2b1f1cc2c605f7da504a8c8647d6d6a45e
2018-04-04 20:23:51 +00:00
Dan Smith a9e7581f00 Make get_allocation_candidates() honor aggregate restrictions
This uses the member_of query parameter to placement to ensure that the
candidates returned are within the appropriate aggregate(s) if so
specified.

Related to blueprint placement-req-filter

Change-Id: If8ac06039ac9d647efdc088fbe944938e205e941
2018-03-28 15:58:45 -07:00
Zuul 9c7ebf90fa Merge "Add disabled option to create_cell command" 2018-03-26 13:26:35 +00:00
Zuul 7672472998 Merge "Modify nova-manage cell_v2 list_cells to display "disabled" column" 2018-03-26 13:11:28 +00:00