Commit Graph

370 Commits

Author SHA1 Message Date
Zuul 4cf008135f Merge "docs: Improve documentation on writing custom scheduler filters" 2020-02-26 12:08:01 +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
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 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
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
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
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
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
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 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 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
Matt Riedemann b609bdc20e doc: mention that rescuing a volume-backed server is not supported
The API reference already says this [1] so the doc should also.

[1] https://docs.openstack.org/api-ref/compute/?expanded=rescue-server-rescue-action-detail#rescue-server-rescue-action

Change-Id: I085bb3f01802332fcf4820d3ead6f74785dff8b9
2019-11-15 19:21:43 +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
Lee Yarwood 7f46b9b281 docs: Extract rescue from reboot
This change simply extracts and slightly reorders the existing rescue
documentation from the reboot reference page.

Closes-Bug: #1852609
Change-Id: I4ce8874aa3e879e89ab5c7c76162561acbdea5c4
2019-11-15 10:56:03 -05:00
Zuul 59d4cfef7d Merge "Add image caching to the support matrix" 2019-11-14 08:29:51 +00:00
Zuul 9fcb0d5def Merge "Add support matrix for Delete (Abort) on-going live migration" 2019-11-13 23:43:52 +00: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
Archit Modi aa39641182 Revert "openstack server create" to "nova boot" in nova docs
When this patch [1] was introduced, it didn't take into consideration,
the updated/changed/modified parameters when using OSC vs nova CLI, so not
every option can be used in "openstack server create" which was used in "nova boot"
and vice versa. This bug would track reverting some of these incorrect commands usage.

For example- "nova boot --block device <params1>" can be translated as
"openstack server create --block-device-mapping <params2>" where params1 and
params2 are formatted differently (hence needs more than a simple search/replace)

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

Related-To: https://review.opendev.org/#/c/404623/
Change-Id: I8e400da9445101b9ff5240511c56105e26e16e4c
Closes-Bug: #1851425
2019-11-06 16:25:52 +00:00
Kevin_Zheng 70e5c214f0 Add support matrix for Delete (Abort) on-going live migration
The info of Delete (Abort) on-going live migration is missing
in support matrix, it could be useful for users to consider
using this feature.

This patch adds it.

Change-Id: I2f917627fa451d20b1fd1ff35025481a4e525084
Closes-Bug: #1808902
2019-10-30 11:33:07 -04:00
Takashi NATSUME 976120cb20 Fix unit of hw_rng:rate_period
Replace seconds with milliseconds
in the description of hw_rng:rate_period.

* https://libvirt.org/formatdomain.html#elementsRng

Change-Id: I285f68c81b0587c6a197d4791b09234a1697f5e7
Closes-Bug: #1843542
2019-10-10 21:28:19 +00:00
Matt Riedemann 2e73dc2015 doc: link to user/availability-zones from user home page
This is a follow up to [1]. The user docs home page has a link
to the admin AZ guide but not a direct link to the user AZ guide
so that is added here.

[1] https://review.opendev.org/#/c/667133/10/doc/source/user/index.rst@75

Change-Id: I4acb120d2e347a43abc584107c7a19bb422af384
2019-10-08 16:30:17 -04:00
Akihiro Motoki 152d5c359c doc: Improve PDF document structure
This is a follow-up patch for https://review.opendev.org/676730.

In the TOC of the current PDF file [1], most contents related to
user and admin guides are located under "For Contributors" section.
This is weird. It happens because the latex builder constructs
the document tree based on "toctree" directives even though they
are marked as "hidden".

This commit reorganizes "toctree" per section.
The "toctree" directives must be placed at the end of
individual sections. Otherwise, content of a last section and
content just after "toctree" directive are concatenated
into a same section in the rendered LaTeX document.

This commit also improves the following as well:

* Specify "openany" as "extraclassoptions" to skip blank pages
  along with "oneside" to use same page style for odd and even pages.
* Set "tocdepth" and "secnumdepth" to 3 respectively.
  "tocdepth" controls the depth of TOC and "secnumdepth" controls
  the level of numbered sections in TOC.

Note that this commit does not reorganize file structure under doc/source.
I believe this should be done separately.

[1] https://docs.openstack.org/nova/latest/doc-nova.pdf

Change-Id: Ie9685e6a4798357d4979aa6b4ff8a03663a9c71c
Story: 2006100
Task: 35140
2019-10-08 11:06:00 +01:00
Stephen Finucane 5c5927a3d2 docs: Rewrite host aggregate, availability zone docs
These closely related features are the source of a disproportionate
number of bugs and a large amount of confusion among users. The spread
of information around multiple docs probably doesn't help matters.

Do what we've already done for the metadata service and remote consoles
and clean these docs up. There are a number of important changes:

- All documentation related to host aggregates and availability zones is
  placed in one of three documents, '/user/availability-zones',
  '/admin/aggregates' and '/admin/availability-zones'. (note that there
  is no '/user/aggregates' document since this is not user-facing)

- References to these features are updated to point to the new location

- A glossary is added. Currently this only contains definitions for host
  aggregates and availability zones

- nova CLI commands are replaced with their openstack CLI counterparts

- Some gaps in related documentation are closed

Change-Id: If847b0085dbfb4c813d4a8d14d99346f8252bc19
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-10-07 17:26:35 +01:00
Zuul 68ed8d85e1 Merge "Update cells v2 up-call caveats doc" 2019-10-04 23:38:42 +00:00
Zuul 5ee7a7d5da Merge "docs: Update resize doc" 2019-10-03 19:44:57 +00:00
melanie witt c4d6aabad1 Restore console proxy deployment info to cells v2 layout doc
This information was mistakenly removed when references to the
nova-consoleauth service were removed from the docs in change
Ie96e18ea7762b93b4116b35d7ebcfcbe53c55527.

Closes-Bug: #1846401

Change-Id: I08fa4650d190114775993e8094efbf46b984dfdc
2019-10-02 20:29:52 +00:00
Matt Riedemann a87fbdda9d Update cells v2 up-call caveats doc
With the fix for bug 1781286 for reschedules during server
create and resize/migrate, we can update the cells v2 docs
saying the up-call issue for that big is now fixed.

Change-Id: I9ff116de8b63c0fbfb880008718b1386178b1d1a
Related-Bug: #1781286
2019-10-02 13:44:23 -04:00
Zuul 16b85a7ade Merge "docs: Note use of 'nova-manage db sync --config-file'" 2019-09-27 09:18:56 +00:00
Zuul bd6a3931f1 Merge "Correct link to placement upgrade notes" 2019-09-25 23:11:37 +00:00
Stephen Finucane 70a4054f86 docs: Update resize doc
- Remove references to configuration options (which end-users will not
  be able to set)
- Switch from the '--confirm' and '--revert' flags to the top-level
  commands
- You can't revert a failed resize so don't suggest otherwise
- Fix some wrapping

Change-Id: I934e7ca327ff4c9bb9b00d1df3323df05da956d9
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Depends-On: I733796d3bda6c3755a3d3548bbe695abb474a6a0
2019-09-25 13:36:26 +00:00
Stephen Finucane 50e60401ed docs: Update CPU topologies guide to reflect the new PCPU world
We don't need to do a whole lot here. The key things to note are that
some host level configuration is now necessary, that the 'isolate' CPU
thread policy behaves slightly differently, and that you can request
'PCPU' inventory explicitly instead of using 'hw:cpu_policy=dedicated'
or the image metadata equivalent.

Part of blueprint cpu-resources

Change-Id: Ic1f98ea8a7f6bdc86f2d6b4734774fa380f8cc10
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-09-25 14:30:23 +01:00
Chris Dent 98008e048c Correct link to placement upgrade notes
In the depends-on the upgrade notes in placement are moved to a
different URL. Because the link here in nova was to an anchor, not
a URL, a redirect on the placement side will not catch this, so
explicitly update the link.

Depends-On: https://review.opendev.org/683783
Change-Id: Ib07eacb9150bbb8b0726cfe06ae334c7a764955c
2019-09-25 10:26:44 +01:00
Stephen Finucane de0cd7503e docs: Note use of 'nova-manage db sync --config-file'
I forget this every darn time I'm working on something that requires DB
migrations.

Change-Id: I6ca988793cf2bfc2d5938acc158fd94e61e06a92
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-09-24 17:18:27 +01:00
Adam Spiers 8e5d6767bb Enable booting of libvirt guests with AMD SEV memory encryption
Track compute node inventory for the new MEM_ENCRYPTION_CONTEXT
resource class (added in os-resource-classes 0.4.0) which represents
the number of guests a compute node can host concurrently with memory
encrypted at the hardware level.

This serves as a "master switch" for enabling SEV functionality, since
all the code which takes advantage of the presence of this inventory
in order to boot SEV-enabled guests is already in place, but none of
it gets used until the inventory is non-zero.

A discrete inventory is required because on AMD SEV-capable hardware,
the memory controller has a fixed number of slots for holding
encryption keys, one per guest.  Typical early hardware only has 15
slots, thereby limiting the number of SEV guests which can be run
concurrently to 15.  nova needs to track how many slots are available
and used in order to avoid attempting to exceed that limit in the
hardware.

Work is in progress to allow QEMU and libvirt to expose the number of
slots available on SEV hardware; however until this is finished and
released, it will not be possible for nova to programatically detect
the correct value with which to populate the MEM_ENCRYPTION_CONTEXT
inventory.  So as a stop-gap, populate the inventory using the value
manually provided by the cloud operator in a new configuration option
CONF.libvirt.num_memory_encrypted_guests.

Since this commit effectively enables SEV, also add all the relevant
documentation as planned in the AMD SEV spec[0]:

- Add operation.boot-encrypted-vm to the KVM hypervisor feature matrix.

- Update the KVM section of the Configuration Guide.

- Update the flavors section of the User Guide.

- Add a release note.

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

blueprint: amd-sev-libvirt-support
Change-Id: I659cb77f12a38a4d2fb118530ebb9de88d2ed30d
2019-09-10 13:59:02 +01:00
Matt Riedemann 37164b418e doc: cleanup references to conductor doc
The conductor doc is not really end user material,
so this moves it under reference/, removes it from the
user page and adds it to the reference index for internals.
Also makes the contributor page link to the reference internals
since it's kind of weird to have one contributor section that
only mentions one thing but the internals under reference have
a lot more of that kind of detail. Finally, a todo is added so
we don't forget to update the reference internals about versioned
objects at some point since that's always a point of confusion
for people.

Change-Id: I8d3dbce5334afaa3e1ca309b2669eff9933a0104
2019-09-05 18:37:31 -04:00
Zuul 21df56a37a Merge "Docs and functional test for max_local_block_devices" 2019-08-29 13:44:38 +00:00
zhangbailin 27b6c18c66 Specify availability_zone to unshelve
This adds support, in a new microversion, for specifying an availability
zone to the unshelve server action when the server is shelved offloaded.

Note that the functional test changes are due to those tests using the
"latest" microversion where an empty dict is not allowed for unshelve
with 2.77 so the value is changed from an empty dict to None.

Implements: blueprint support-specifying-az-when-restore-shelved-server
Closes-Bug: #1723880

Change-Id: I4b13483eef42bed91d69eabf1f30762d6866f957
2019-08-27 12:57:10 -04:00
Matt Riedemann 364fa30062 Docs and functional test for max_local_block_devices
We get questions about if it's possible to configure nova to
always use cinder for root volumes even if the user isn't
explicitly booting from volume. This change adds a FAQ entry
about that to the block device mappings docs and also suggests
a way to force users to use volume-backed servers using the
max_local_block_devices option. The config option help for that
option is also cleaned up since --image is a CLI option but we
should stick to REST API parameters in descriptions and the
default mentioned in the help already gets rendered by oslo.config.
Finally, a simple functional test is added to assert the workaround
mentioned in the docs.

Change-Id: I3e77796b051e8d007fefe2eea06d38e8265e8272
2019-08-23 12:12:08 -04:00
Zuul 44e5c88b22 Merge "FUP for I5576fa2a67d2771614266022428b4a95487ab6d5" 2019-08-22 12:15:08 +00:00
Zuul 1ae57fe04d Merge "Deprecate Aggregate[Core|Ram|Disk]Filters" 2019-08-21 22:27:13 +00:00
Matt Riedemann 69faaddc6c FUP for I5576fa2a67d2771614266022428b4a95487ab6d5
This addresses a single review comment for the vPMU
flavor extra spec docs [1].

[1] https://review.opendev.org/#/c/671338/13/doc/source/user/flavors.rst@379

Change-Id: Id8ba982b0efa92630be60f79c6ecb67f7fd79100
2019-08-21 11:45:51 -04:00
Sean Mooney 588194d785 Deprecate Aggregate[Core|Ram|Disk]Filters
The Aggregate[Core|Ram|Disk]Filters have not worked
correctly since ocata, this change deprecates them
for removal next cycle.
http://lists.openstack.org/pipermail/openstack-dev/2018-January/126283.html

Related-Bug: #1804125
Change-Id: Ibfbfdae9e6ec93f772631a84e8969f4e11da8aee
2019-08-20 16:45:23 -04:00
Sean Mooney 326bc658ee Libvirt: add support for vPMU configuration.
This change adds the ablity for a user or operator to contol
the virtualisation of a performance monitoring unit within a vm.
This change introduces a new "hw:pmu" extra spec and a corresponding
image metadata property "hw_pmu".

The glance image metadata doc will be updated seperately by:
https://review.opendev.org/#/c/675182

Change-Id: I5576fa2a67d2771614266022428b4a95487ab6d5
Implements: blueprint libvirt-pmu-configuration
2019-08-20 14:41:57 +00:00
Adam Spiers 24c5e6f296 Don't claim that CLI user data requires manual base64 encoding
python-novaclient automatically encodes user data as base64 before
passing to the API, so don't claim that the user needs to do it,
as discussed on IRC:

http://eavesdrop.openstack.org/irclogs/%23openstack-nova/%23openstack-nova.2019-08-05.log.html#t2019-08-05T17:52:41

(Even they did need to, it would have been more helpful to tell
them *how*.)

Change-Id: I20c272e0a5b277652e1cef90d1f9fbb714e173d7
2019-08-05 19:06:06 +01:00