Commit Graph

2327 Commits

Author SHA1 Message Date
Zuul 2c6388e3cd Merge "docs: Add note about an image signature validation limitation when using rbd" 2020-01-07 00:51:29 +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
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
Zuul a24c7848cc Merge "Add CrossCellWeigher" 2019-12-22 21:26:28 +00:00
Lee Yarwood 0d750d62b0 docs: Add note about an image signature validation limitation when using rbd
Document a small wrinkle with the image signature validation feature
when using the Libvirt virt driver, rbd imagebackend and RAW image
format due to the validation being triggered during image download.

Change-Id: Ic67c4d251c17e5e93045eb50ff99580e2cf66c76
2019-12-20 10:48:54 +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
Monty Taylor e7cc5efd20 Keep pre-commit inline with hacking and fix whitespace
The flake8 hook for pre-commit installs its own flake8 which is
not what hacking is pinned to. This results in a bunch of errors.
By doing a local hook we can cause these to be the same.

There are flake8 exclusions in tox.ini that need to be used
in pre-commit. Also we should exclude svg files from the whitespace
modifications, because who cares.

Once those are fixed, running pre-commit -a fixes some whitespace
issues. While the normal use isn't to run -a - if someone does make
a patch that touches any of these they'll get erroneous unrelated
errors compared to their lower work - so fix all of the existing
issues, which are mostly space-at-end-of-line issues it seems.

Change-Id: I78e753492e99c03b30a0a691db3bd75ee3d289c9
2019-12-12 14:56:39 +00: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
Eric Fried 54195a1bd9 Use Placement 1.34 (string suffixes & mappings)
This commit cuts us over to using placement microversion 1.34 for GET
/allocation_candidates, thereby supporting string request group suffixes
(added in 1.33) when specified in flavor extra_specs.

The mappings (added in 1.34) are not used in code yet, but a future
patch will tie the group suffixes to the RequestGroup.requester_id so
that it can be correlated after GET /a_c. This will allow us to get rid
of map_requested_resources_to_providers, which was a hack to bridge the
gap until we had mappings from placement.

Change-Id: I52499ff6639c1a5815a8557b22dd33106dcc386b
2019-12-05 17:02:46 -06:00
Zuul 2230ec836b Merge "Integrate 'pre-commit'" 2019-12-05 12:26:58 +00: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
Zuul bed6e8ead9 Merge "docs: Blast final references to nova-network" 2019-11-30 16:57:14 +00:00
Zuul a6a42cf248 Merge "Follow up I18d73212f9d98bc75974a024cf6fd872fdfb1ca4" 2019-11-29 20:56:18 +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
Matt Riedemann dc1402666f Follow up I18d73212f9d98bc75974a024cf6fd872fdfb1ca4
Multiple cells is not a requirement for using the API metadata
service so this fixes the change based on the nova-network multi-host
change [1].

[1] https://review.opendev.org/#/c/686816/12/doc/source/install/get-started-compute.rst@29

Change-Id: Ie033e6f328a8be903c56b45fdfb019b0046f23ad
2019-11-29 12:07:20 -05:00
Zuul d209dd7d52 Merge "Add sequence diagrams to resize/cold migrate contrib doc" 2019-11-29 17:02:27 +00:00
Zuul 7b66fc2229 Merge "Fix incorrect command examples" 2019-11-29 16:44:20 +00:00
Zuul e5e0994c3a Merge "Add contributor doc for resize and cold migrate" 2019-11-29 15:20:10 +00:00
Stephen Finucane 5f8dd65f6c Integrate 'pre-commit'
This nifty tool provides a extensible way to configure pre-commit hooks
to do everything from running linters to spellchecking [1] and has
already been adopted by a few OpenStack projects [2]. Let's start using
it as a faster, more automatic alternative to the 'fast8' tox target and
iterate on it as we find more things to use it for. The 'fast8' target
is not deprecated though a note is included for end-users to alert them
to this great new tool.

Note that the 'check-executables-have-shebangs' actually failed and
highlighted that the 'contributor/development-environment.rst' document
was marked as executable when it shouldn't have been. This is corrected.

[1] https://pre-commit.com/
[2] https://review.opendev.org/#/q/file:.pre-commit-config.yaml

Change-Id: I256e75eceeb3495dce04885ca42d16adb4160cf3
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-28 12:46:55 +00: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 d63ed15574 Merge "nova-net: Remove 'nova-dhcpbridge' binary" 2019-11-26 21:12:35 +00:00
Zuul a86e4de0c6 Merge "doc: remove admin/manage-users" 2019-11-26 12:08:28 +00:00
ericxiett 0195939588 Fix incorrect command examples
The command of 'openstack resource provider show <HOST1_UUID>' does not
return the uuid. This patch fixes it. Then following commands use
'host_id' instead of 'server_id'.

Change-Id: I60298ea3b22d9dfec2cd7a3e9950ed04aedc6bf5
Closes-Bug: #1853745
2019-11-26 02:36:40 +00:00
Stephen Finucane 19424403f4 nova-net: Remove 'nova-dhcpbridge' binary
There are actually a few things here that rely on a running
nova-dhcpbridge instances, but since it's not possible to start
nova-network now, that shouldn't matter.

Change-Id: I63447baeaac0be3fb7f919bfe588da50133c74d7
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-25 16:43:36 +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
Zuul a3499027f0 Merge "Remove 'nova-console' service, 'console' RPC API" 2019-11-22 22:43:00 +00:00
Zuul e2bba0b15e Merge "Make it easier to run a selection of tests relevant to ongoing work" 2019-11-22 20:58:18 +00:00
Zuul 8cbe9939d2 Merge "Don't claim that CLI user data requires manual base64 encoding" 2019-11-22 20:58:10 +00:00
Zuul 58fba4f885 Merge "docs: Strip '.rst' suffix" 2019-11-22 20:57:58 +00:00
Zuul a75b2f1e32 Merge "docs: Replacing underscores with dashes" 2019-11-22 20:57:51 +00:00
Zuul b398e44036 Merge "docs: Remove 'adv-config', 'system-admin' subdocs" 2019-11-22 20:57:44 +00:00
Matt Riedemann 49422f87d2 Add sequence diagrams to resize/cold migrate contrib doc
This adds high level sequence diagrams for the resize flows
including confirm and revert.

Change-Id: Iaca4325c9b4d7b63c5bc811bdba2db0d10db61f6
2019-11-22 15:15:38 -05:00
Matt Riedemann 1e781f6f34 Add contributor doc for resize and cold migrate
Resize and cold migrate can be confusing since they are
very similar operations and share mostly the same code paths
but there are some notable differences. This adds a contributor
doc, similar to the evacuate-vs-rebuild contributor doc, to
try and explain things at a high level and provide enough links
so contributors can follow along and see where things fit into
the puzzle.

A sequence diagram is sorely needed for this as well but that will
come in a separate change.

Change-Id: I11b401a3f874226fdc20a0ee0bd518192f70fa1d
2019-11-22 15:15:34 -05:00
Zuul 4ff2796524 Merge "Give the policy vision document a facelift" 2019-11-22 19:53:09 +00:00
Stephen Finucane 6537a537f9 Remove 'nova-console' service, 'console' RPC API
This legacy service was only compatible with the XenServer driver and
has effectively been replaced by the noVNC console proxy service. Remove
the service. The API that provided remote access to this service,
'os-consoles', was removed in a previous change. Note that
'os-remote-consoles' is unrelated and therefore is not removed, though
it will now reject requests for XVP VNC consoles.

This was previously discussed and agreed on openstack-dev [1] and
openstack-discuss [1].

Part of blueprint remove-xvpvncproxy

[1] http://lists.openstack.org/pipermail/openstack-dev/2018-October/135413.html
[2] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005369.html

Change-Id: Ib1ff32f04b16af7981471f67c8e0bf04e6ecb6be
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-11-22 16:09:38 +00:00
Zuul 41c2513bb2 Merge "Remove service_uuids_online_data_migration" 2019-11-18 21:01:45 +00:00
Zuul 313a1a1d23 Merge "doc: mention that rescuing a volume-backed server is not supported" 2019-11-16 07:48:43 +00:00