2376 Commits

Author SHA1 Message Date
Zuul
c9421a3248 Merge "docs: Add documentation for flavor extra specs" 2020-04-10 05:22:22 +00:00
Zuul
77482b05af Merge "Support different vGPU types per pGPU" 2020-04-09 23:29:14 +00:00
Sylvain Bauza
5b5cbc64f9 Support different vGPU types per pGPU
It's now possible to have a different vGPU type for each pGPU. By modifying
the config, you can say which PCI device (ie. a pGPU) should use a specific
vGPU type.

For upgrades, the behaviour from Train won't be changed since we only use
the first type if we don't have the dynamic options (so operators don't
need to change nova.conf before upgrading).

Implements: blueprint vgpu-multiple-types

Change-Id: I46f0a76811142888db2bbc66cc3fde04ff890c01
2020-04-09 17:54:26 +02:00
Zuul
874c2fe329 Merge "api: Add framework for extra spec validation" 2020-04-09 07:01:46 +00:00
Stephen Finucane
63e30e022d docs: Add documentation for flavor extra specs
Now that we have a registry of all extra specs known by stock nova, we
can start documenting these. We choose the configuration guide to do
this since configuration of flavor extra specs is traditionally an
admin-only operation.

Part of blueprint flavor-extra-spec-validators

Change-Id: I5ad6576e0d31a29822d1c7b47751ea81828630cf
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2020-04-08 13:20:15 +00:00
Stephen Finucane
58784943f7 api: Add framework for extra spec validation
Add the validation framework necessary to verify extra specs along with
the definitions for every extra spec we currently recognize in-tree.
None of this is currently used since we don't have the API microversions
wired up, but that will come in a future patch.

Note that we must add the H238 hacking check to the ignore list here,
since this includes our first use of Python 3-type classes without the
explicit 'object' subclass. This can be removed when that check is
removed from hacking.

Part of blueprint flavor-extra-spec-validators

Change-Id: Ib64a1348cce1dca995746214616c4f33d9d664bd
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2020-04-08 12:47:01 +00:00
Zuul
bc10a724c6 Merge "Add info about affinity requests to the troubleshooting doc" 2020-04-06 11:56:59 +00:00
Zuul
ae39f0395f Merge "Support for nova-manage placement heal_allocations --cell" 2020-04-03 15:13:00 +00:00
Zuul
bf242d1f16 Merge "FUP for Add a placement audit command" 2020-04-02 23:08:07 +00:00
hackertron
1a39ed9005 Support for nova-manage placement heal_allocations --cell
Closes-bug: #1868531

Change-Id: I98b3280583a6d12461d8aa52e5714d7606b84369
2020-04-02 16:06:38 -04:00
melanie witt
df216de6d9 Add info about affinity requests to the troubleshooting doc
We had recent bug report about a possible regression related to
affinity policy enforcement with parallel server create requests.

It turned out not to be a regression but because of the complexity
around affinity enforcement, it might help to add a section to the
compute troubleshooting doc about it which we could refer to in the
future.

Related-Bug: #1863190

Change-Id: I508c48183a7205d46e13154d4e92d31dfa7f7d78
2020-03-31 22:21:40 +00:00
Zuul
e5ea915f1b Merge "[Community goal] Update contributor documentation" 2020-03-31 19:33:46 +00:00
Zuul
fe66c28dac Merge "Add a placement audit command" 2020-03-30 12:01:33 +00:00
Sylvain Bauza
35ec5a0bd1 FUP for Add a placement audit command
Since I537ed74503d208957f0a97af3ab754a6750dac20 had some clean-up comments,
we can just provide a follow-up change.

Change-Id: Ie8b5147322e13ad7df966b5c3c41ef0418e4f64c
Related-Bug: #1793569
2020-03-30 12:18:05 +02:00
Zuul
df9195de72 Merge "Non-Admin user can filter their instances by more filters" 2020-03-26 14:29:46 +00:00
Balazs Gibizer
612c36034b [Community goal] Update contributor documentation
As the Ussuri goal we have an OpenStack project wide contributing
documentation template [1]. Nova has its own contributor documentation
so this patch adds the new contributing.rst according to the global
template and links the sections in it to the existing Nova contributor
documentation.

Also the top level CONTRIBUTING.rst template has been changed in the
cookiecutter repo[2]. So this patch updates the CONTRIBUTING.rst according
to the new template.

[1] https://opendev.org/openstack/cookiecutter/src/branch/master/%7b%7bcookiecutter.repo_name%7d%7d/doc/source/contributor/contributing.rst
[2] https://review.opendev.org/#/c/696001

Change-Id: Ia12cd4acbb63f192fcaf0790b72f8e977025a9dc
Story: #2007236
Task: #38541
2020-03-25 12:01:37 +00:00
Victor Coutellier
4018d6fb71 Non-Admin user can filter their instances by more filters
Microversion bump to allow non-admin user to use more filters key
when listing instances.

In order to stay coherent, all existing instance filters who are
related to a field readable by default to non admin users when showing
instance details, should be allowed by default without policy
modification.

Implements: blueprint non-admin-filter-instance-by-az

Change-Id: Ia66d3a1ceb74ed521cf44922929b2a502f3ee935
2020-03-15 17:35:49 +01:00
Lucian Petrut
ca3e14319b hyper-v: update support matrix
This change documents certain hyper-v driver features that are not
included in the driver support matrix.

Change-Id: I29f6d816138bd31ad6bc8d327636b202d718bdff
2020-03-04 15:45:21 +02:00
Zuul
9728dff3a1 Merge "Add description of live_migration_timeout_action option" 2020-03-03 02:18:59 +00:00
Zuul
4cf008135f Merge "docs: Improve documentation on writing custom scheduler filters" 2020-02-26 12:08:01 +00:00
Zuul
bfe681cd29 Merge "Allow TLS ciphers/protocols to be configurable for console proxies" 2020-02-24 17:27:02 +00:00
Zuul
4f69d8e6c7 Merge "Add JSON schema and test for network_data.json" 2020-02-18 18:57:16 +00:00
Stephen Finucane
fa5e1b556f docs: Improve documentation on writing custom scheduler filters
Operators can deploy their own scheduler filters. We currently provide
some minimal instructions for how to do this but it omits things like
the need to package these filters so they can be picked up correctly.

Change-Id: I725801c9c049455a0196e4664d767b81a8d4edf2
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2020-02-18 15:13:46 +00:00
Ilya Etingof
69ee625a66 Add JSON schema and test for network_data.json
Added JSON schema defining `network_data.json` contents and
beefed up the MetadataTest functional test cases to use a
real instance instead of a database shell. This way the
tests see real data in the metadata service like a real
network_data.json.

Besides internal Nova consumption, this schema might be
helpful to other tools (such as ironic or Glean) to
validate human-generated `network_data.json` prior to
using it.

Co-Authored-By: Balazs Gibizer <balazs.gibizer@est.tech>
Change-Id: Ie5a5a1fc81c7c2d3f61b72d19de464cfc9dab5ec
2020-02-17 15:35:24 +01:00
Nathan Kinder
08bdcdb5b6 Allow TLS ciphers/protocols to be configurable for console proxies
The console proxies (VNC, SPICE, etc) currently don't allow the
allowed TLS ciphers and protocol versions to be configurable.  This
results in the defaults being used from the underlying system,
which may not be secure enough for many deployments.  This patch
allows for the ciphers and minimum SSL/TLS protocol version for
each console proxy to be configured in nova's config.

We utilize websockify underneath our console proxies, which added
support for allowed ciphers and the SSL/TLS version to be
configurable as of version 0.9.0.  This change updates the lower
constraint for this dependency.

Closes-Bug: #1842149
Related-Bug: #1771773
Change-Id: I23ac1cc79482d0fabb359486a4b934463854cae5
2020-02-12 15:05:22 -06:00
Stephen Finucane
4bdecee385 docs: Fix the monkeypatching of blockdiag
blockdiag has a longstanding bug whereby it tries to access an attribute
on an 'io.BufferedReader' that doesn't exist. We had previously fixed
this in change Ibd32d30aacae65702d0ccbdb8a02b1667ec4e8ee, which undid
the damage blockdiag was doing. However, this worked because the monkey
patching blockdiag does happens when the 'blockdiag.utils.compat' module
is loaded [1], which was happening implicitly with our import of
'blockdiag.imagedraw.textfolder' [2]. However, that module no longer
imports the 'compat' [3] module so this doesn't work. Fix the issue by
just importing the 'compat' module manually, triggering the monkey
patching...which we can then undo.

[1] https://github.com/blockdiag/blockdiag/blob/2.0.0/src/blockdiag/utils/compat.py#L19-L26
[2] https://github.com/blockdiag/blockdiag/blob/1.5.4/src/blockdiag/imagedraw/textfolder.py#L18
[3] https://github.com/blockdiag/blockdiag/tree/2.0.0/src/blockdiag/imagedraw/textfolder.py

Change-Id: Idacfff98842fde38fb39791090f2da3310b441b5
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2020-01-31 17:52:54 +00:00
Zuul
b8f4e46939 Merge "zuul: Remove unnecessary 'USE_PYTHON3'" 2020-01-30 17:09:07 +00:00
Sylvain Bauza
c03716be1f Add a placement audit command
There are different situations when allocations can be orphaned.
Adding a new nova-manage command to lookup at all resource providers
and check against the related compute nodes whether they have
orphaned allocations.

Change-Id: I537ed74503d208957f0a97af3ab754a6750dac20
Closes-Bug: #1793569
2020-01-30 14:54:03 +01:00
Zuul
9fa3600fca Merge "doc: define boot from volume in the glossary" 2020-01-29 03:52:50 +00:00
Zuul
575d988a2c Merge "Fix typos for update_available_resource reference" 2020-01-25 19:21:44 +00:00
Riccardo Pittau
f0bc7874a8 Fix typos for update_available_resource reference
Fixing a couple of typos that wrongly refers to
update_available_resources()
insted of update_available_resource()

Change-Id: Iaf7828e9cfb73ac87018d78180d16aae91d838f3
2020-01-16 10:31:06 +01:00
Zuul
7c54ec6b81 Merge "Print help if nova-manage subcommand is not specified" 2020-01-15 01:55:37 +00:00
Zuul
67d9b5114e Merge "Fix typos in nova doc" 2020-01-10 23:27:11 +00:00
Zuul
3d3d6d5250 Merge "Use Placement 1.35 (root_required)" 2020-01-10 02:44:45 +00:00
zhufl
ea172ef85f Fix typos in nova doc
This is to fix the following typos:
  regadless
  users's
  possile
  caculated

Change-Id: If47adefa59f01b7f2ebcee5b7e07e0260df113e4
2020-01-09 15:49:49 +08:00
Matt Riedemann
33c7996624 doc: define boot from volume in the glossary
Define it and also link to the term in a few different docs.

Change-Id: I6333deb2f6e85eba3c92128dab4e4b4d35355603
2020-01-08 12:37:05 -05:00
Zuul
f25e5d0820 Merge "Update Testing NUMA documentation" 2020-01-08 16:56:01 +00:00
Victor Morales
4b6b755d86 Update Testing NUMA documentation
The document which contains the steps to test different NUMA
setups was using legacy instructions. This change pretends to update
those instructions to improve the readability.

Change-Id: Id8bf96f035528b15a51c802f06e07422b9f36736
2020-01-08 08:11:50 -08:00
Zuul
1fed6bd934 Merge "Remove 'nova-xvpvncproxy'" 2020-01-08 06:27:03 +00:00
Zuul
d4a0f69e61 Merge "nova-net: Remove firewall support (pt. 2)" 2020-01-08 01:55:20 +00:00
Eric Fried
bcc893a2b0 Use Placement 1.35 (root_required)
Placement microversion 1.35 gives us the root_required queryparam to GET
/allocation_candidates, allowing us to filter out candidates where the
*root* provider has/lacks certain traits, independent of traits
specified in any of the individual request groups.

Use it.

And add affordance for specifying such traits to the RequestSpec.

Which allows us to fix up the couple of request filters that were
hacking traits into the RequestSpec.flavor.

Change-Id: I44f02044ce178e84c23d178e5a23a3aa1208e502
2020-01-07 16:46:56 -06:00
Zuul
0e81260415 Merge "FUP for docs nits in cross-cell-resize series" 2020-01-07 16:29:48 +00:00
Zuul
2c6388e3cd Merge "docs: Add note about an image signature validation limitation when using rbd" 2020-01-07 00:51:29 +00:00
Stephen Finucane
30141e6b52 nova-net: Remove firewall support (pt. 2)
Firewall support is not needed with neutron, which supports both
security groups for per-port filtering and FWaaS for per-network
filtering. Remove both the generic firewalls and the hypervisor-specific
implementations.

This change focuses on removing the firewall-related API calls from the
various virt drivers. The firewall drivers themselves are removed
separately.

Change-Id: I5a9e5532c46a5f7064441ae644125d21efe5fda1
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2020-01-06 12:46:30 +00:00
zhufl
b608d6bfb4 Fix duplicated words issue like "during during boot time"
This is to fix the duplicated words issue like
"if it was specified during during boot time".

Change-Id: I0ffedb8c40399a4b0ecd83b142bdeaf556d1568f
2020-01-06 14:19:03 +08:00
chenxing
ba3c6bf555 Add description of live_migration_timeout_action option
Change-Id: I1e661751e62ecfa6ce9e3800cd5c3a285c0cca11
Closes-Bug: #1857013
2019-12-24 13:59:11 +08:00
Matt Riedemann
29100f9b5a FUP for docs nits in cross-cell-resize series
Addresses review comments from:

* https://review.opendev.org/#/c/638269/63/doc/source/admin/configuration/resize.rst
* https://review.opendev.org/#/c/696212/6/doc/source/admin/configuration/cross-cell-resize.rst

Also updates contributor/resize-and-cold-migrate since that is relatively
new and biased toward same-cell resize and cold migrate. However, I chose
to link the same-cell resize glossary term to that contributor doc rather
than admin/configuration/resize because the admin doc is woefully bare.

Part of blueprint cross-cell-resize

Change-Id: I93b051252e34c8604cebea617c34e9299ac508d4
2019-12-23 10:10:57 -05:00
Matt Riedemann
74e76b1a6b Add cross-cell resize tests for _poll_unconfirmed_resizes
This adds two tests and updates the cross-cell resize docs to
show that _poll_unconfirmed_resizes can work if the cells are
able to "up-call" to the API DB to confirm the resize. Since
lots of deployments still enable up-calls we don't explicitly
block _poll_unconfirmed_resizes from processing cross-cell
migrations. The other test shows that _poll_unconfirmed_resizes
fails if up-calls are disabled.

Part of blueprint cross-cell-resize

Change-Id: I39e8159f3e734a1219e1a44434d6360572620424
2019-12-23 10:10:57 -05:00
Matt Riedemann
6aafb29820 Add sequence diagrams for cross-cell-resize
This tries to strike a balance between giving a useful high level
flow without injecting too much complex detail in each diagram.

For the more complicated resize diagram, I have used labels to
try and make clear which conductor task is performing an action.

For the less complicated confirm and revert diagrams, I add a
separator to show where the conductor task is orchestrating the
calls and provide a bit more detail into what each task is doing
since the calls to computes are minimal in those cases.

Part of blueprint cross-cell-resize

Change-Id: I27c549901a3359f106ba5d77aa6559397ee12a5d
2019-12-23 10:10:57 -05:00
Matt Riedemann
aa74ac60e2 Flesh out docs for cross-cell resize/cold migrate
This gives most of the high level information. I'm sure there
are more troubleshooting things we can add but those could come
later as they crop up.

The sequence diagram(s) will come in a separate change.

Part of blueprint cross-cell-resize

Change-Id: I13f07a2d45bf5b8584adc8aa079bae640cb5c470
2019-12-23 10:10:57 -05:00