396 Commits

Author SHA1 Message Date
Zuul
418eb770fc Merge "Allocate mdevs when resizing or reverting resize" 2020-04-21 00:42:44 +00:00
Sylvain Bauza
d2e0afc1f7 Allocate mdevs when resizing or reverting resize
Now that allocations are passed to the methods, we can ask whether we
need to use mediated devices for the instance.

Adding a large functional test for verifying it works.

Change-Id: I018762335b19c98045ad42147080203092b51c27
Closes-Bug: #1778563
2020-04-20 14:48:16 +02:00
Takashi Natsume
2e299a6e72 doc: Fix term mismatch warnings in glossary
The term role has became case sensitive since sphinx 3.0.1.
It causes the following warnings and makes a check job fail.

  WARNING: term not in glossary: availability zone

This patch fixes the issue.

Change-Id: I1f993b503ef769da0950afa206d6ac4a54f903b4
Closes-Bug: #1872260
2020-04-12 13:06:49 +09: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
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
9728dff3a1 Merge "Add description of live_migration_timeout_action option" 2020-03-03 02:18:59 +00:00
Zuul
bfe681cd29 Merge "Allow TLS ciphers/protocols to be configurable for console proxies" 2020-02-24 17:27:02 +00: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
Zuul
9fa3600fca Merge "doc: define boot from volume in the glossary" 2020-01-29 03:52:50 +00: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
1fed6bd934 Merge "Remove 'nova-xvpvncproxy'" 2020-01-08 06:27:03 +00:00
Zuul
0e81260415 Merge "FUP for docs nits in cross-cell-resize series" 2020-01-07 16:29:48 +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
Matt Riedemann
6ebee92445 Add cross-cell resize policy rule and enable in API
This adds the "compute:servers:resize:cross_cell" policy
rule which is now used in the API to determine if a resize
or cold migrate operation can be performed across cells.

The check in the API is based on:

- The policy check passing for the request.
- The minimum nova-compute service version being high
  enough across all cells to perform a cross-cell resize.

If either of those conditions fail a traditional same-cell
resize will be performed.

A docs stub is added here and will be fleshed out in an
upcoming patch.

Implements blueprint cross-cell-resize

Change-Id: Ie8a0f79a3b16e02b7a34a1b81f547013a3d88996
2019-12-23 10:10:57 -05:00
Stephen Finucane
02eb9cffe6 Remove 'nova-xvpvncproxy'
This legacy service is no longer used and was deprecated during the
Stein cycle [1]. It's time to say adios and remove them in their
entirety. This is pretty straightforward, with the sole exception of
schema for the 'remote-consoles' API, which has to continue supporting
requests for type 'xvpvnc' even if we can't fulfil those requests now.

[1] https://review.opendev.org/#/c/610076/

Part of blueprint remove-xvpvncproxy

Depends-On: https://review.opendev.org/695853
Change-Id: I2f7f2379d0cd54e4d0a91008ddb44858cfc5a4cf
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-12-23 14:20:28 +00:00
Zuul
a24c7848cc Merge "Add CrossCellWeigher" 2019-12-22 21:26:28 +00:00
Zuul
ac2cec2d4d Merge "Add troubleshooting doc about rebuilding the placement db" 2019-12-18 17:44:22 +00:00
Zuul
b6e353a2c8 Merge "support pci numa affinity policies in flavor and image" 2019-12-13 00:25:32 +00:00
Matt Riedemann
18179aee4e Add CrossCellWeigher
When performing a resize, we'll want to (by default) select
target hosts from the source cell to do a traditional resize
if possible before considering target hosts in another cell
which will be slower and more complicated. If the source cell
is disabled or target flavor is not available in the source cell,
then we'll have no choice but to select a host from another cell.
But all things being equal between hosts, we want to stay within
the source cell (by default). Therefore this change adds a new
CrossCellWeigher and related configuration option to prefer hosts
within the source cell when moving a server. The weigher is
completely noop unless a cross-cell move is permitted by
configuration, which will be provided in a future change.

Part of blueprint cross-cell-resize

Change-Id: Ib18752efa56cfeb860487fe6b26102bb4b1db038
2019-12-12 12:40:29 -05:00
Matt Riedemann
6c704cc1c5 Add resource provider allocation unset example to troubleshooting doc
Now that the openstack resource provider allocation unset command is
available [1] this change adds a note about using it in the troubleshooting
doc for cleaning up orphaned allocations.

Sub-sections are used to try and separate the two non-heal_allocations
solutions with the recommended solution first (using the new unset command).

While in here I noticed a typo in the heal_allocations section as well and
fixed it.

[1] I627bfd1ff699d075028da6afafbe7fb9b2f13058

Change-Id: I896bb68c4bdd35d051ef3e95e19bdeb472f9bc99
Related-Bug: #1829479
2019-12-11 17:32:14 +00:00
Matt Riedemann
1a17fe8aab Add troubleshooting doc about rebuilding the placement db
This has come up a few times via support questions from operators
that have a nova cell database out of sync with the placement
database resulting in a mismatch in compute nodes to provider
uuids and they just want to wipe the placement database and rebuild
it from the current data in nova. This provides a document with the
high level steps to do that.

Change-Id: Ie4fed22615f60e132a887fe541771c447fae1082
2019-12-11 10:40:44 -05:00
Sean Mooney
8c72241726 support pci numa affinity policies in flavor and image
This addresses bug #1795920 by adding support for
defining a pci numa affinity policy via the flavor
extra specs or image metadata properties enabling
the policies to be applied to neutron sriov port
including hardware offloaded ovs.

Closes-Bug: #1795920
Related-Bug: #1805891
Implements: blueprint vm-scoped-sriov-numa-affinity
Change-Id: Ibd62b24c2bd2dd208d0f804378d4e4f2bbfdaed6
2019-12-11 14:39:12 +00:00
Boris Bobrov
1a88d35cb1 Also enable iommu for virtio controllers and video in libvirt
Ie54fca066f33 added logic to libvirt/designer.py for enabling iommu
for certain devices where virtio is used.  This is required for AMD
SEV[0].  However it missed two cases.

Firstly, a SCSI controller can have the model as 'virtio-scsi', e.g.:

    <controller type='scsi' index='0' model='virtio-scsi'>

As with other virtio devices, here a child element needs to be added
to the config when SEV is enabled:

    <driver iommu="on" />

We do not need to cover the case of a controller with type
'virtio-serial' now, since even though it is supported by libvirt, it
is not currently used anywhere in Nova.

Secondly, a video device can be virtio, e.g. when vgpus are in use:

    <video>
        <model type='virtio'/>
    </video>

Also take this opportunity to clarify the corresponding documentation
around disk bus options.

[0] http://specs.openstack.org/openstack/nova-specs/specs/train/approved/amd-sev-libvirt-support.html#proposed-change

Partial-Bug: #1845986
Change-Id: I626c35d1653e6a25125320032d0a4a0c67ab8bcf
2019-12-10 11:01:08 +00:00
xiaojueguan
9a13b02d9e Fix Typo mistake in documentation of "host aggregates in nova"
Change-Id: I74e169705e3c5dff03b0a478b1e8ce4d7504dca2
Closes-Bug: 1855314
2019-12-07 10:32:12 +08:00
Zuul
60b80894a0 Merge "docs: Clarify configuration steps for PF devices" 2019-12-03 20:10:05 +00:00
Zuul
4d08540a0e Merge "docs: Change order of PCI configuration steps" 2019-12-03 20:09:58 +00:00
Stephen Finucane
810aafc5ec docs: Clarify configuration steps for PF devices
Devices that report SR-IOV capabilities cannot be used without special
configuration - namely, the addition of "'device_type': 'type-PF'" or
"'device_type': 'type-VF'" to the '[pci] alias' configuration option.
Spell this out in the docs.

Change-Id: I4abbe30505a5e4ccba16027addd6d5f45066e31b
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Closes-Bug: #1852727
2019-12-02 16:31:28 +00:00
Stephen Finucane
5dcfd0750f docs: Blast final references to nova-network
Missed a few. Let's go again.

Change-Id: I26368cb59b08f3271d74310d0aa1e36f3d0db5d5
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-29 17:20:02 +00:00
Iury Gregory Melo Ferreira
1efd5ec232 Add ironic hypervisor doc
Nova documentation was missing information documentation about
Ironic virt driver.

Change-Id: I2431dc3db94da44001eefdead50607eab662d16f
Closes-Bug: #1852446
2020-01-16 14:00:18 +01:00
Zuul
67d9b5114e Merge "Fix typos in nova doc" 2020-01-10 23:27:11 +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
Stephen Finucane
29b9f788de docs: Blast most references to nova-network
The only ones remaining are some real crufty SVGs and references to
things that still exist because nova-network was once a thing.

Change-Id: I1aebf86c05c7b8c1562d0071d45de2fe53f4588b
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-27 18:26:10 +00:00
Stephen Finucane
c56a635de1 nova-net: Remove 'nova-network' binary
Get excited, people. It's finally dying, for real. There is a lot more
doc work needed here, but this is a start. No need for a release note
modification since we've already said that nova-network has been
removed, so there's no point in saying that the service itself has been
removed since that's implicit.

Change-Id: I18d73212f9d98bc75974a024cf6fd872fdfb1ca4
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-27 09:36:17 +00:00
Zuul
a86e4de0c6 Merge "doc: remove admin/manage-users" 2019-11-26 12:08:28 +00:00
Matt Riedemann
173831558f doc: remove admin/manage-users
The majority if this doc was talking about ec2 concepts
which haven't been in nova for a looooong time so this
change just deletes the doc and moves the one useful
piece into another part of the admin guide and links to
the keystone docs.

Change-Id: I8d7c9c244767645a5d63716842eaf19ca6ab1a45
2019-11-25 09:19:24 -05:00
Stephen Finucane
11723e47b9 docs: Rewrite quotas documentation
Yet another one of these. This time around, we make the following
changes:

- Put admin-focused stuff in '/admin', and user-focused docs in '/user'
- Merge the '/admin/quotas2' document into the '/admin/quotas' document
- Update references to novaclient to use openstackclient if possible and
  include a TODO if not
- s/tenant/project/

Note that there is some duplication between the user and admin docs
here. That's necessary since, for example, showing a user's quotas is
also something an admin will want to do.

Change-Id: I733515cf0f939fe95203ff0b09df2709daee108c
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-23 13:03:31 +00:00
Stephen Finucane
a0380894d0 docs: Strip '.rst' suffix
These are unnecessary noise. Drop them.

Change-Id: I6ce4c78bd53975ae83c10b2e5c3910f23b42dba0
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-15 16:37:26 +00:00
Stephen Finucane
c3d776d639 docs: Replacing underscores with dashes
Not the first time we've done this [1]. Probably not the last.

[1] I5c99ff6b04ee97bac210a0d6762015225775c5ee

Change-Id: I9fc70df93af73b56ac9155d8d402b153d2af9f4e
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-15 16:36:31 +00:00
Stephen Finucane
da207cc2be docs: Remove 'adv-config', 'system-admin' subdocs
These made things significantly less discoverable from the admin guide
and resulted in some duplication of links. Better to just flatten
things. Things are pretty much copy-pasted save for the removal of a
reference to the long-dead nova-objectstore service and the addition of
a TODO to provide overviews of other services.

Change-Id: Ibf2b6979318cf3f0a0519f66acbc279b2ce80968
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-15 16:36:30 +00:00
Stephen Finucane
557728abaf docs: Change order of PCI configuration steps
It doesn't really make sense to describe the "higher level"
configuration steps necessary for PCI passthrough before describing
things like BIOS configuration. Simply switch the ordering.

Change-Id: I4ea1d9a332d6585ce2c0d5a531fa3c4ad9c89482
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Related-Bug: #1852727
2019-11-15 11:45:25 +00:00
Zuul
8f341eb4a4 Merge "doc: add troubleshooting guide for cleaning up orphaned allocations" 2019-11-14 10:28:58 +00:00
Matt Riedemann
dcd3f516d2 doc: add troubleshooting guide for cleaning up orphaned allocations
While we do not have an automated fix for bug 1849479 this provides
a troubleshooting document for working around that issue where
allocations from a server that was evacuated from a down host need
to be cleaned up manually in order to delete the resource provider
and associated compute node/service.

In general this is also a useful guide for linking up the various
resources and terms in nova and how they are reflected in placement
with the relevant commands which is probably something we should
do more of in our docs.

Change-Id: I120e1ddd7946a371888bfc890b5979f2e19288cd
Related-Bug: #1829479
2019-11-13 15:31:32 -05:00
Eric Fried
f7c027db9a Add image caching to the support matrix
Add a section to the support matrix for image caching
(``has_imagecache`` virt driver capability).

Change-Id: I9147c5ea6b276b4fe18a981f4360844009bd3d95
Partial-Bug: #1847302
2019-11-13 11:09:03 -06:00
Eric Fried
828e8047e5 Consolidate [image_cache] conf options
Blueprint image-precache-support added a conf section called
[image_cache], so it makes sense to move all the existing image
cache-related conf options into it.

Old:
[DEFAULT]image_cache_manager_interval
[DEFAULT]image_cache_subdirectory_name
[DEFAULT]remove_unused_base_images
[DEFAULT]remove_unused_original_minimum_age_seconds
[libvirt]remove_unused_resized_minimum_age_seconds

New:
[image_cache]manager_interval
[image_cache]subdirectory_name
[image_cache]remove_unused_base_images
[image_cache]remove_unused_original_minimum_age_seconds
[image_cache]remove_unused_resized_minimum_age_seconds

Change-Id: I3c49825ac0d70152b6c8ee4c8ca01546265f4b80
Partial-Bug: #1847302
2019-11-13 11:09:03 -06:00