Commit Graph

174 Commits

Author SHA1 Message Date
melanie witt 585c579498 docs: Change note:: to warning:: for service user token
This changes the "note" about the requirement of configuring
[service_user] to a "warning" for better visibility.

Also replace a few setting values with variables instead of the
defaults from Devstack.

Change-Id: I561690582436832f4070a2d17aa8ff79b0f788fd
2024-09-05 23:05:46 +00:00
Sean Mooney 33a56781f4 fix sphinx-lint errors in docs and add ci
This change mainly fixes incorrect use of backticks
but also adress some other minor issues like unbalanced
backticks, incorrect spacing or missing _ in links.

This change add a tox target to run sphinx-lint
as well as adding it to the relevent tox envs to enforce
it in ci. pre-commit is leveraged to install and execute
sphinx-lint but it does not reqiure you to install the
hooks locally into your working dir.

Change-Id: Ib97b35c9014bc31876003cef4362c47a8a3a4e0e
2024-04-17 13:33:47 +01:00
Ghanshyam Mann c76c72cfe0 Remove HyperV: cleanup doc/code ref
Cleanup doc/code ref of HyperV driver.

Change-Id: I6cd8fb90829e040bfd356ff6b1c41aa9a1c906d2
2024-02-07 12:08:07 -08:00
Sylvain Bauza cc25813b6d doc: drop blockdiag usage
Since blockdiag seems a bit unmaintenained, let's just statically
generate the SVGs but let's keep the source files in tree so we can
modify the diagrams whenever we want, provided blockdiag exists in
a foreseenable future :-)

Closes-Bug: #2026345

Change-Id: I1cc078554ab149a9849c895e08c878180b7510b0
2024-01-22 18:27:04 +01:00
Zuul 897a91b928 Merge "docs: fix 404 for ironic docs" 2023-12-20 05:29:07 +00:00
John Garbutt cbf400df1d Deprecate ironic.peer_list
As part of the move to using Ironic shards, we document that the best
practice for scaling Ironic and Nova deployments is to shard Ironic
nodes between nova-compute processes, rather than attempting to
user the peer_list.

Currently, we only allow users to do this using conductor groups.
This works well for those wanting a conductor group per L2 network
domain. But in general, conductor groups per nova-compute are
a very poor trade off in terms of ironic deployment complexity.
Futher patches will look to enable the use of ironic shards,
alongside conductor groups, to more easily shard your ironic nodes
between nova-compute processes.

To avoid confusion, we rename the partition_key configuration
value to conductor_group.

blueprint ironic-shards

Change-Id: Ia2e23a59dbd2f13c6f74ca975c249751bebf54b2
2023-08-31 08:56:10 +00:00
Mohammed Naser c9c3931120 docs: fix 404 for ironic docs
The Ironic documentation currently seems to be giving 404s at the
moment since the URLs contain /latest/ and the ironic-doc line seems
to add them automatically, ending up with /latest/latest/

This can be observed at the moment[0] but will likely not be visible
breakage once this change merges.

[0]: https://docs.openstack.org/nova/latest/admin/configuration/hypervisor-ironic.html

Change-Id: I89f74af4b4dda6b926e348e257273ed107af43a4
2023-07-04 16:43:37 -04:00
melanie witt db455548a1 Use force=True for os-brick disconnect during delete
The 'force' parameter of os-brick's disconnect_volume() method allows
callers to ignore flushing errors and ensure that devices are being
removed from the host.

We should use force=True when we are going to delete an instance to
avoid leaving leftover devices connected to the compute host which
could then potentially be reused to map to volumes to an instance that
should not have access to those volumes.

We can use force=True even when disconnecting a volume that will not be
deleted on termination because os-brick will always attempt to flush
and disconnect gracefully before forcefully removing devices.

Closes-Bug: #2004555

Change-Id: I3629b84d3255a8fe9d8a7cea8c6131d7c40899e8
2023-05-10 07:09:05 -07:00
Rajesh Tailor 0fce3c03ab Fix typos in nova docs
Change-Id: I7b6f8c198aa42f5ef3f8b158308b993b040454ec
2022-09-23 09:09:37 +05:30
Stephen Finucane deae814611 Remove the PowerVM driver
The PowerVM driver was deprecated in November 2021 as part of change
Icdef0a03c3c6f56b08ec9685c6958d6917bc88cb. As noted there, all
indications suggest that this driver is no longer maintained and may be
abandonware. It's been some time and there's still no activity here so
it's time to abandon this for real.

This isn't as tied into the codebase as the old XenAPI driver was, so
removal is mostly a case of deleting large swathes of code. Lovely.

Change-Id: Ibf4f36136f2c65adad64f75d665c00cf2de4b400
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2022-08-02 15:31:19 +02:00
wnark 4d6cce1d10 docs: Correct path used for config on Hyper-V
Because in the above description:

  To install nova-compute, run:

  PS C:\> cd c:\nova
  PS C:\> python setup.py install

The file is downloaded to c:\nova. After executing `python setup.py
install` in this directory, the etc directory is generated under
`c:\nova`. Correct the path.

Closes-Bug: #1964548
Change-Id: Ibf0c1b56f235fffae65afbbcee30056bae965afe
2022-05-30 14:40:00 +01:00
Stephen Finucane 13b06ebb1c docs: Add a new cells v2 document
We currently have three cells v2 documents in-tree:

- A 'user/cellsv2-layout' document that details the structure or
  architecture of a cells v2 deployment (which is to say, any modern
  nova deployment)
- A 'user/cells' document, which is written from a pre-cells v2
  viewpoint and details the changes that cells v2 *will* require and the
  benefits it *would* bring. It also includes steps for upgrading from
  pre-cells v2 (that is, pre-Pike) deployment or a deployment with cells
  v1 (which we removed in Train and probably broke long before)
- An 'admin/cells' document, which doesn't contain much other than some
  advice for handling down cells

Clearly there's a lot of cruft to be cleared out as well as some
centralization of information that's possible. As such, we combine all
of these documents into one document, 'admin/cells'. This is chosen over
'users/cells' since cells are not an end-user-facing feature. References
to cells v1 and details on upgrading from pre-cells v2 deployments are
mostly dropped, as are some duplicated installation/configuration steps.
Formatting is fixed and Sphinx-isms used to cross reference config
option where possible. Finally, redirects are added so that people can
continue to find the relevant resources. The result is (hopefully) a
one stop shop for all things cells v2-related that operators can use to
configure and understand their deployments.

Change-Id: If39db50fd8b109a5a13dec70f8030f3663555065
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2021-10-19 12:51:39 +01:00
Stephen Finucane 289438b4c2 docs: Drop references to non-filter scheduler drivers
Take the opportunity to clean up the docs quite a bit, ultimately
combining two disparate guides on the scheduler into one.

Change-Id: Ia72d39b4774d93793b381359b554c717dc9a6994
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2021-08-23 16:45:37 +01:00
Zuul 033af94179 Merge "Deprecate filters that have been replaced by placement filters" 2021-08-21 02:51:28 +00:00
Sean Mooney 7c7a2a142d Deprecate filters that have been replaced by placement filters
This change deprecates the AZ filters which is no longer required.

This also enable the use of placement for AZ enforcement by default and
deprecates the config option for removal.

Change-Id: I92b0386432444fc8bdf852de4bdb6cebb370a8ca
2021-06-01 15:11:50 +01:00
Stephen Finucane 9dfac32959 docs: Add libvirt misc doc
A new dumping ground for libvirt'y things that can't easily be
categorized or placed elsewhere.

Change-Id: I6999b9d66e12e1df7970aff6ce63e5323de6be45
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Related-Bug: #1843542
2021-03-23 11:17:10 +00:00
Stephen Finucane 76549775fe docs: Change formatting of hypervisor config guides
Use the formatting established in the style guide. There's a lot of
out-of-date information in here, but that's a battle for another day.

Change-Id: Ieec2c8f450c05a2451179e3bdba77514f2cc956e
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2021-03-23 11:16:42 +00:00
Stephen Finucane ee1443bb3f docs: Add CPU models guide
More information taken out of the catchall KVM guide and put into its
own doc, where it belongs.

Change-Id: I4a03561368b945e3aacbef8011b46933cc1fcfd7
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2021-03-23 11:14:09 +00:00
Stephen Finucane 49767beaa9 docs: Add SEV guide
This was previously hidden in the hypervisor configuration guide. Make
it a top-level document.

Change-Id: If402522c859c1413f0d90912e357496a0a67c5cf
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2021-03-23 11:13:34 +00:00
Stephen Finucane 3a390c2c82 libvirt: Drop support for Xen
This hasn't been validated upstream and there doesn't appear to be
anyone using it. It's time to drop support for this. This is mostly test
and documentation damage, though there is some other cleanup going on,
like the removal of the essentially noop 'pick_disk_driver_name' helper.

Change-Id: I73305e82da5d8da548961b801a8e75fb0e8c4cf1
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2021-01-22 10:06:40 +00:00
Stephen Finucane d02ce3c4f0 libvirt: Drop support for UML
This has not been tested in the gate for a long time and was only added
to enable CI in the early days of OpenStack. Time to bid adieu.

Change-Id: I7a157f37d2a67e1174a1725fd579c761d81a09b1
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2021-01-22 10:05:57 +00:00
Balazs Gibizer 1c056c384d Fallback to same-cell resize with qos ports
The cross-cell resize code does not consider neutron ports with resource
request. To avoid migration failures this patch makes nova to fall back
to same cell resize if the instance has neutron ports with resource
request.

Change-Id: Icaad4b2375b491c8a7e87fb6f4977ae2e13e8190
Closes-Bug: #1907522
2020-12-16 17:01:49 +01:00
Zuul f27a11feb7 Merge "Update supported transports for iscsi connector" 2020-12-05 17:01:40 +00:00
Radosław Piliszek 52c8137b4b [docs] Fix a placement client's command
For amending a single value, `--amend` switch is required to be
used. Otherwise Placement will return 400 about required
properties being missing.

Change-Id: Ia94be98dea22f97bc89201ee2a0a1a4e6b54c875
2020-11-13 15:26:46 +01:00
Balazs Gibizer f5a68826c7 [doc]: Fix glance image_metadata link
Change-Id: Ib1e3798992696cf5f271b20bc731b8b766d173ac
Closes-Bug: #1900731
2020-10-21 18:19:13 +02:00
Stephen Finucane 2a7f1f986e docs: Improve 'AggregateImagePropertiesIsolation' docs
When we introduced the 'ImageMetaProps' o.vo in Liberty, we lost the
ability to consume arbitrary metadata configured for images. This
affects users of the 'AggregateImagePropertiesIsolation' filter, who may
have set such arbitrary metadata and expected their instances to be
restricted to host aggregates matching that metadata.

The world has changed a lot since Liberty was released, and it's
probably too late and maybe even a little unwise to let that genie back
out of its bottle, however, we can and should probably do a better job
of warning people of this change in behavior in our documentation. Do
just this.

Change-Id: If7245a90711bd2ea13095ba26b9bc82ea3e17202
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Related-Bug: #1741810
2020-09-16 14:27:51 +01:00
Zuul e20f6f412e Merge "docs: Remove references to XenAPI driver" 2020-09-10 12:19:28 +00:00
Ghanshyam Mann ef769443fb [Trivial] Replace ref of policy.json to policy.yaml
policy file default and JSON format 'policy.json' is now
deprecated. Let's replace all the ref and test start using the
policy.yaml.

Change-Id: I78a273576702fb95d831bd9b801b5774fb9fd19e
2020-09-09 16:46:43 +00:00
Jiří Suchomel a33f455ec7 Adapt the admin guide to describe the direct RBD export
This documents how to set up nova and glance so the feature
for direct download from Ceph can be used.

Change-Id: I07509c67c65e988fe5149b625007e90e68488cfd
2020-09-03 11:30:34 +01:00
Stephen Finucane 58f7582c63 docs: Remove references to XenAPI driver
Not as many of these as I thought there would be. Also, yes, the change
to 'nova.conf.compute' is a doc change :)

Change-Id: I27626984ce94544bd81d998c5fdf141875faec92
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2020-08-31 15:53:31 +01:00
Stephen Finucane b5d4804346 doc: Update references to image properties
The 'architecture', 'hypervisor_type', 'hypervisor_version_requires' and
'vm_mode' image metadata properties have had new names for many cycles
now.

The example for the freshly renamed 'img_hv_requested_version' option
has been updated to show a Hyper-V example, since the Xen virt driver is
not tested and will likely be removed in the near future.

Change-Id: I5684d7d462d3f7cecd887216c5618139787ef5d7
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2020-08-31 11:59:14 +01:00
Zuul c5b33b0cfc Merge "Remove deprecated scheduler filters" 2020-08-26 12:14:55 +00:00
Sean Mooney 4939d0d1e2 Remove deprecated scheduler filters
The RetryFilter was deprecated in Train.
The Aggregate[core|ram|disk] filters were also deprecated in train.
This change removes all four deprecated filters and their docs.

Change-Id: Idc29c759632850d3d767a261c9f385af71348f65
2020-08-11 13:25:59 +00:00
Balazs Gibizer b327b961f6 Document nova in tree virt drivers
In I29c5a678efec4fbc4bd7958ebe6d454ae30701cd we made the libvirt driver
to run only on Linux. However we did not have documentation about what
virt driver runs on what Operating System. This patch starts such
documentation.

Change-Id: Iccf4ab14865ac1694d7b0dad5dcb101f1ba152c8
2020-07-10 10:07:42 +02:00
Ghanshyam Mann b2f07a4959 Fix pdf-docs build failing for TeX over capacity
With the new release of sphinx 3.1.0, nova pdf docs build
started failing with "! Dimension too large." error.
That started failing since 10th June when the requirement added
the new constraint for sphinx.

Seems like somewhere TeX memory is exhausted during the pdf
building (I think we are hitting this open sphinx bug[1]).
While reproducing it locally I found that our giant policy sample
file inclusion in pdf doc causing this error.

- https://zuul.opendev.org/t/openstack/build/9c3e835ad5ee4842a07d77fdbaa6c97d/log/sphinx-build-pdf.log#7661

We did skip the sample policy file for pdf in
doc/source/configuration/index.rst but did not do that
in admin configuration file and it start giving the error now.

With this fix, sample policy file in admin config also is included
in html but not in pdf.

Closes-Bug: #1883200

Change-Id: Iae143997138a5169a1e0fc76a74f9a0f09c03626
2020-06-12 15:34:45 +00: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 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 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
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
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
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
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
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