Commit Graph

49744 Commits

Author SHA1 Message Date
Eric Fried 5d0b00a0ef Doc: Nix os-traits link from POST resource_classes
The placement API reference documentation for POST /resource_classes [1]
said:

The new class must be a custom resource class, prefixed with CUSTOM_ and
distinct from the _standard_ resource classes.

...where _standard_ was a link to os-traits documentation [2]. Since we
don't have os-resource-classes (yet), this change set removes that
linkitude.

[1] https://developer.openstack.org/api-ref/placement/#create-resource-class
[2] https://docs.openstack.org/os-traits/latest/

Change-Id: I15fbed460598b7d603eca48cbaecf1036906f6c7
Closes-Bug: #1747095
2018-02-02 18:00:21 -06:00
Zuul 38eb95384f Merge "Don't wait for vif plug events during _hard_reboot" 2018-02-02 23:23:40 +00:00
Zuul 5e9cb49b0a Merge "Add the nova-multiattach job" 2018-02-02 23:14:09 +00:00
melanie witt 236bb54493 Don't wait for vif plug events during _hard_reboot
Originally, in change Id188d48609f3d22d14e16c7f6114291d547a8986 we
added a re-initialization of volumes, encryptors, and vifs to hard
reboot. When creating the libvirt domain and network, we were waiting
for vif plug events from neutron when we replugged the vifs. Then, we
started seeing timeouts in the linuxbridge gate job because compute
was timing out waiting for plug events from neutron during a hard
reboot.

It turns out that the behavior of neutron plug events depends on what
vif type we're using and we're also using a stale network info_cache
throughout the hard reboot code path, so we can't be 100% sure we know
which vifs to wait for plug events from anyway. We coincidentally get
some info_cache refreshes from network-changed events from neutron,
but we shouldn't rely on that.

Ideally, we could do something like wait for an unplug event after we
unplug the vif, then refresh the network_info cache, then wait for the
plug event. BUT, in the case of the os-vif linuxbridge unplug method,
it is a no-op, so I don't think we could expect to get an unplug
event for it (and we don't see any network-vif-unplugged events sent
in the q-svc log for the linuxbridge job during a hard reboot).

Closes-Bug: #1744361

Change-Id: Ib0cf5d55750f13d0499a570f14024dca551ed4d4
2018-02-02 17:08:42 +00:00
Chris Dent cab811b890 Don't rely on parse.urlencode in url comparisons
The tests for allocation_candidates query parameters in test_report.py
relied on urlencode with a dict arg to create the expected_url that is
compared with the actual URL that the report client creates when
communicating with the placement service.

This is risky because the ordering of the query parameters is
not reliable when the source data is a dict. This change expands
the tests where it was used to do more explicit comparisons.

Change-Id: I2e51a4574b20c0634ad83a53c0e68261bbf0ac82
Closes-Bug: #1747001
2018-02-02 15:34:59 +00:00
Zuul 8ac8c995ca Merge "doc: placement upgrade notes for queens" 2018-02-02 09:55:58 +00:00
Zuul 06781ee6e9 Merge "Pass limit to /allocation_requests" 2018-02-02 07:47:56 +00:00
Zuul 59e3ce09c6 Merge "Log the events we timed out waiting for while plugging vifs" 2018-02-02 06:02:07 +00:00
Zuul 55bffebc69 Merge "Remove deprecated policy items from fake_policy" 2018-02-02 05:51:33 +00:00
Zuul 6fb47ca22e Merge "Reduce policy deprecation warnings in test runs" 2018-02-02 05:51:25 +00:00
Zuul 46f3b873a4 Merge "Add functional tests for traits-based scheduling" 2018-02-02 05:03:24 +00:00
Zuul b7de3eca6d Merge "Cleanup launch instance and manage IPs docs" 2018-02-02 03:40:45 +00:00
Zuul 0432555adb Merge "Migrate "launch instance" user guide docs" 2018-02-02 03:40:33 +00:00
Zuul 1a762d00e2 Merge "Add server filters whitelist in server api-ref" 2018-02-02 02:02:52 +00:00
Zuul 2fd0cc2f77 Merge "trivial: Fix few policy doc" 2018-02-02 02:02:38 +00:00
Zuul f44c4d5a67 Merge "Updated from global requirements" 2018-02-02 02:02:10 +00:00
Zuul 2e9998016c Merge "Fix invalid UUIDs in remaining tests" 2018-02-02 01:16:07 +00:00
Zuul 7fc932d13e Merge "conf: Validate '[api] vendordata_providers' options" 2018-02-01 23:55:53 +00:00
Matt Riedemann b06895f030 doc: placement upgrade notes for queens
This adds a mention of the nova-scheduler service requiring
placement 1.17 and also links to the placement upgrade notes
from the more general upgrade notes, since we are now firmly
in a place where placement needs to be upgraded before nova.

Since we consider placement global, this removes the 1.14
note about nova-compute since we assume that if you're going
to upgrade placement to get 1.17 for the scheduler, and control
services should be upgraded before computes, then the computes
are going to get a new enough placement service automatically.

Change-Id: I06937c7642dca4a1932cbbf46569acc9c58e44a6
2018-02-01 17:17:57 -05:00
Matt Riedemann 477a14e81e Add functional tests for traits-based scheduling
This adds a couple of functional tests for the end-to-end
flow of creating a server with a flavor that has a required
trait. Each test has two computes. One test covers the case
of a successful placement on a compute that has a trait where
the other compute doesn't. The other test covers the case that
none of the computes have the required trait so the server
create request fails.

Part of blueprint request-traits-in-nova

Change-Id: Iacb9808ef7188e3419abfac9e8c5fb5a46c71c05
2018-02-01 17:17:31 -05:00
Zuul d189e68227 Merge "De-duplicate _numa_get_flavor_XXX_map_list" 2018-02-01 21:38:15 +00:00
Zuul 2ecb99939e Merge "Log options at debug when starting API services under wsgi" 2018-02-01 21:27:09 +00:00
Zuul 648239466b Merge "Deduplicate service status notification samples" 2018-02-01 21:26:47 +00:00
Zuul f93881d162 Merge "Deduplicate aggregate notification samples" 2018-02-01 21:26:34 +00:00
Zuul d2b90c6389 Merge "Use util.validate_query_params in list_traits" 2018-02-01 21:26:22 +00:00
Zuul 538f47eeca Merge "add "--until-complete" option for nova-manage db archive_deleted_rows." 2018-02-01 21:26:11 +00:00
Zuul fa6f0bb2ec Merge "Mention required traits in the flavors user docs" 2018-02-01 21:25:55 +00:00
Zuul 84a7843190 Merge "Fix nits in support traits changes" 2018-02-01 21:25:45 +00:00
Zuul 16eebf94ef Merge "set_{aggregates|traits}_for_provider: tolerate set" 2018-02-01 21:18:59 +00:00
Zuul dbe9f12a89 Merge "ProviderTree.get_provider_uuids: Top-down ordering" 2018-02-01 21:18:50 +00:00
Zuul 5b254f7c3d Merge "SchedulerReportClient._delete_provider" 2018-02-01 21:05:49 +00:00
Matt Riedemann 49b1bf8c54 Cleanup launch instance and manage IPs docs
This is a follow up to Ie039322660fd0e2e0403843448379b78114c425b.

A few things are changed here:

* The note about using file injection is removed. File injection
  was deprecated in the API in Queens and not something that we
  really want users using.
* Mention that creating a flavor is typically admin-only.
* Link to the BDM docs for more details about BDM parameter values.
* Update the manage-ip-address docs to make the examples rely on
  using the networking resource CLIs rather than any proxy APIs
  that were available in nova.

Change-Id: Ifa2e2bbb4c5f51f13d1a5832bd7dbf9f690fcad7
2018-02-01 15:12:10 -05:00
Matt Riedemann 4ed5e81ee0 Migrate "launch instance" user guide docs
This imports the "launch instance" end user guide docs from
the openstack-manuals repo. As part of the docs migration
in Pike, these were forgotten. The copied contents come from
the stable/ocata branch of openstack-manuals, and therefore
likely need some updating, but that could be done in follow up
changes. This is an initial import to (1) publish the content
again somewhere and (2) fix broken links in the cinder docs
for booting from volume.

Change-Id: Ie039322660fd0e2e0403843448379b78114c425b
Partial-Bug: #1714017
Related-Bug: #1711267
2018-02-01 14:28:18 -05:00
Dan Smith f029784eaf Pass limit to /allocation_requests
This makes us pass an upper limit to placement when doing scheduling
activities. Without this, we'll always receive every host in the
deployment (that has space for the request), which may be very large.

Closes-Bug: #1746294
Change-Id: I1c34964a74123b3d94ccae89d7cac0426b57b9b6
2018-02-01 11:00:38 -05:00
Zuul 02b505806a Merge "trivial: Fix typos in release notes" 2018-02-01 10:02:55 +00:00
Zuul 44cc991f70 Merge "reno for notification-transformation-queens" 2018-02-01 08:59:20 +00:00
Zuul 71d481f5c7 Merge "ComputeDriver.update_provider_tree()" 2018-02-01 08:58:48 +00:00
Zuul ad2087425c Merge "report client: get_provider_tree_and_ensure_root" 2018-02-01 08:58:35 +00:00
Zuul fae202cc95 Merge "Fix bug case by none token context" 2018-02-01 08:58:27 +00:00
OpenStack Proposal Bot b4fbbbbe80 Updated from global requirements
Change-Id: I2f8741902eefe1dafc16806bf8235a8eb038a1f2
2018-02-01 07:20:35 +00:00
Zuul 40f74fb959 Merge "placement: enable required traits from the flavor extra specs" 2018-02-01 06:42:41 +00:00
Zuul cf06bf7289 Merge "Add functional tests for virt driver get_traits() method" 2018-02-01 06:42:29 +00:00
Zuul 45fe59a975 Merge "Implement get_traits() for the ironic virt driver" 2018-02-01 06:42:18 +00:00
Zuul d8c0f17213 Merge "[placement] Separate API schemas (resource_provider)" 2018-02-01 06:41:41 +00:00
ghanshyam 2d2b034751 trivial: Fix few policy doc
Fix few policy docs for correct path
and {server_id}

Change-Id: Ibe933cd60fcd470f10cb206cf7136c96c4189078
2018-02-01 03:04:00 +00:00
Ameed Ashour eba33a0e2d add "--until-complete" option for nova-manage db archive_deleted_rows.
Change-Id: Ibcb489efb364c03167b7398f615c9a15f6867370
Closes-bug: #1746531
2018-01-31 16:45:24 -05:00
Matt Riedemann 3e9a631ec8 Mention required traits in the flavors user docs
This takes most of the release note and adds it to the user
flavor docs which is more discoverable for an end user.

Change-Id: Ia83af4dfcc0c040679b0d0cd5282830fca27bd63
2018-01-31 11:07:12 -05:00
He Jie Xu 284ba35c33 Fix nits in support traits changes
Addresses the comments from earlier patches:

https://review.openstack.org/535642

https://review.openstack.org/536085

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

Change-Id: I366b97ef3c141834f48949700edb968a7c7c4167
2018-01-31 11:07:07 -05:00
Matt Riedemann 53dc0917c5 Log options at debug when starting API services under wsgi
The ServiceLauncher and ProcessLauncher in oslo.service will,
by default, log config options at DEBUG level at the start
of a service, which is what would happen when starting nova-api
using eventlet.

Running nova-api under wsgi has been supported since Pike, but
the wsgi app code doesn't log the debug options like oslo.service
would, so this adds that back in.

The placement-api wsgi app code would log the options but based on
whether or not debug logging is enabled, which is different from how
it works in oslo.service, so the config option that is checked is
changed in this patch, and a release note is added for that subtle
behavior change.

Closes-Bug: #1732000

Change-Id: I680fd9761a049cac619b7793fa5c60e6daf4fa47
2018-01-31 15:45:27 +00:00
Eric Fried a7a1f72dd4 set_{aggregates|traits}_for_provider: tolerate set
Report client's set_aggregates_for_provider and set_traits_for_provider
methods declare in their docstring that they accept an iterable for the
aggregates/traits parameter.  However, passing in a set results in a
JSON serialization error.  We could solve this by changing the docstring
(accept only lists).  Or, as is done here, by tolerating other kinds of
iterables, converting them to lists.

Change-Id: I749ffbd9a55ee71d5dbd266ef6faa4be4a1d395b
blueprint: nested-resource-providers
2018-01-31 08:35:35 -06:00