summaryrefslogtreecommitdiff
path: root/doc/source/cli
Commit message (Collapse)AuthorAgeFilesLines
* Add docs for stable-compute-uuid behaviorsDan Smith2023-02-081-0/+2
| | | | | | | | | | This adds some admin guide documentation about the stable compute_id file. It covers upgrade, greenfield generation, and greenfield pre-provisioning by deployment tools. Related to blueprint stable-compute-uuid Change-Id: I078b3f9e1919f2008628dc7b889e8696f1f6159a
* Merge "Fix typos in nova docs"Zuul2022-10-062-2/+2
|\
| * Fix typos in nova docsRajesh Tailor2022-09-232-2/+2
| | | | | | | | Change-Id: I7b6f8c198aa42f5ef3f8b158308b993b040454ec
* | Update nova-manage doc pageRajesh Tailor2022-09-101-4/+4
|/ | | | | | | | | | | | | nova-manage doc page [1] mentioned usage of `nova-manage db archive` command, which doesn't exist. This change updates the doc page with the correct command `nova-manage db archive_deleted_rows`. [1] https://docs.openstack.org/nova/latest/cli/nova-manage.html Closes-Bug: #1981088 Change-Id: Ibcbccf87ec70e9edea61c99d4d3bcf610cc1df64
* Add documentation and releasenotes for RBAC changeghanshyam mann2022-08-301-1/+1
| | | | | | | | | | | | We have droped the system scope from Nova policy and keeping the legacy admin behaviour same. This commit adds the releasenotes and update the policy configuration documentation accordingly. Also, remove the upgrade check for policy which was added for the system scope configuration protection. Change-Id: I127cc4da689a82dbde07059de90c451eb09ea4cf
* Follow up for nova-manage image property commandsmelanie witt2022-02-241-0/+6
| | | | | | | | | | | | This a follow up for change Ic8783053778cf4614742186e94059d5675121db1 and corrects the 'image_property set --property' arg format in the hw_machine_type doc. Newline formats in the nova-manage CLI doc is cleaned up to be consistent throughout and unnecessary () is removed from the ImagePropertyCommands class. Related to blueprint libvirt-device-bus-model-update Change-Id: I5b67e9ae5125f6dad68cae7ac0601ac5b02e74b3
* manage: Add image_property commandsLee Yarwood2022-02-241-0/+85
| | | | | | | | | | | | | | | This adds an image property show and image property set command to nova-manage to allow users to update image properties stored for an instance in system metadata without having to rebuild the instance. This is intended to ease migration to new machine types, as updating the machine type could potentially invalidate the existing image properties of an instance. Co-Authored-By: melanie witt <melwittt@gmail.com> Blueprint: libvirt-device-bus-model-update Change-Id: Ic8783053778cf4614742186e94059d5675121db1
* [nova-manage]support extended resource requestBalazs Gibizer2021-11-011-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The nova-manage placement heal_allocations CLI is capable of healing missing placement allocations due to port resource requests. To support the new extended port resource request this code needs to be adapted too. When the heal_allocation command got the port resource request support in train, the only way to figure out the missing allocations was to dig into the placement RP tree directly. Since then nova gained support for interface attach with such ports and to support that placement gained support for in_tree filtering in allocation candidate queries. So now the healing logic can be generalized to following: For a given instance 1) Find the ports that has resource request but no allocation key in the binding profile. These are the ports we need to heal 2) Gather the RequestGroups from the these ports and run an allocation_candidates query restricted to the current compute of the instance with in_tree filtering. 3) Extend the existing instance allocation with a returned allocation candidate and update the instance allocation in placement. 4) Update the binding profile of these ports in neutron The main change compared to the existing implementation is in step 2) the rest mostly the same. Note that support for old resource request format is kept alongside of the new resource request format until Neutron makes the new format mandatory. blueprint: qos-minimum-guaranteed-packet-rate Change-Id: I58869d2a5a4ed988fc786a6f1824be441dd48484
* Add section for 'nova-manage placement audit' toolmelanie witt2021-09-161-0/+2
| | | | | | | | The 'nova-manage placement audit' tool has functionality that can delete orphaned allocations in placement. Add a section for it in the doc for troubleshooting orphaned allocations. Change-Id: I697de57cf7eb43c0993af2b1f5b3f5c4395ef097
* Add --sleep option for archive_deleted_rows --until-completemelanie witt2021-09-021-2/+8
| | | | | | | | | | | | | | | | Currently, when 'nova-manage db archive_deleted_rows' is run with the --until-complete option, the process will archive rows in batches in a tight loop, which can cause problems in busy environments where the aggressive archiving interferes with other requests trying to write to the database. This adds an option for users to specify an amount of time in seconds to sleep between batches of rows while archiving with --until-complete, allowing the process to be throttled. Closes-Bug: #1912579 Change-Id: I638b2fa78b81919373e607458e6f68a7983a79aa
* Merge "nova-manage: Introduce volume show, refresh, get_connector commands"Zuul2021-08-311-0/+108
|\
| * nova-manage: Introduce volume show, refresh, get_connector commandsLee Yarwood2021-08-251-0/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a combination of commands to allow users to show existing stashed connection_info for a volume attachment and update volume attachments with fresh connection_info from Cinder by recreating the attachments. Unfortunately we don't have an easy way to access host connector information remotely (i.e. over the RPC API), meaning we need to also provide a command to get the compute specific connector information which must be run on the compute node that the instance is located on. Blueprint: nova-manage-refresh-connection-info Co-authored-by: Stephen Finucane <stephenfin@redhat.com> Change-Id: I2e3a77428f5f6113c10cc316f94bbec83f0f46c1
* | Bump min placement microversion to 1.36Balazs Gibizer2021-08-211-0/+4
|/ | | | | | | | | | | | To implement the usage of same_subtree query parameter in the allocation candidate request first the minimum requires placement microversion needs to be bumped from 1.35 to 1.36. This patch makes such bump and update the related nova upgrade check. Later patches will modify the query generation to include the same_subtree param to the request. Change-Id: I5bfec9b9ec49e60c454d71f6fc645038504ef9ef blueprint: qos-minimum-guaranteed-packet-rate
* Merge "Block servers with vGPU and device profile in heal_allocations"Zuul2021-08-181-0/+9
|\
| * Block servers with vGPU and device profile in heal_allocationsBalazs Gibizer2021-08-061-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | Nested allocations are only partially supported in nova-manage placement heal_allocations CLI. This patch documents the missing support and blocks healing instances with VGPU or Cyborg device profile request in the embedded flavor. Blocking is needed as if --forced is used with such instances then the tool could recreate an allocation ignoring some of these resources. Change-Id: I89ac90d2ea8bc268940869dbbc90352bfad5c0de Related-Bug: bug/1939020
* | db: Integrate alembicStephen Finucane2021-08-091-0/+16
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This looks more complicated than it is, but it's really quite simple. Essentially we have to deal with two possible configurations: - For existing deployments, the DB sync operation should apply any outstanding sqlalchemy-migrate-based migrations, dummy apply the initial alembic migration, and then apply any additional alembic-based migrations requested (or any available, if no version is specified). - For new deployments, the DB sync operation should apply the initial alembic migration and any additional alembic-based migrations requested (or any available, if no version is specified). No sqlalchemy-migrate-based migrations will ever be applied. While we continue to allow users to request a specific database migration version to upgrade to, we *do not* allow them to request a sqlalchemy-migrate-based migration version. There's no good reason to do this - the deployment won't run with an out-of-date DB schema (something that's also true of the alembic migration, fwiw) - and we want to get people off of sqlalchemy-migrate as fast as possible. A change in a future release can remove the sqlalchemy-migrate-based migrations once we're sure that they'll have upgraded to a release including all of the sqlalchemy-migrated-based migrations (so Wallaby). Tests are modified to validate the sanity of these operations. They're mostly trivial changes, but we do need to do some funky things to ensure that (a) we don't use logger configuration from 'alembic.ini' that will mess with our existing logger configuration and (b) we re-use connection objects as necessary to allow us to run tests against in-memory databases, where a different connection would actually mean a different database. We also can't rely on 'WalkVersionsMixin' from oslo.db since that only supports sqlalchemy-migrate [1]. We instead must re-invent the wheel here somewhat. [1] https://github.com/openstack/oslo.db/blob/10.0.0/oslo_db/sqlalchemy/test_migrations.py#L42-L44 Change-Id: I850af601f81bd5d2ecc029682ae10d3a07c936ce Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* Merge "Add --task-log option to nova-manage db archive_deleted_rows"Zuul2021-06-181-1/+16
|\
| * Add --task-log option to nova-manage db archive_deleted_rowsmelanie witt2021-06-171-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The task_log table contains instance usage audit records if nova-compute has been configured with [DEFAULT]instance_usage_audit = True. This will be the case if OpenStack Telemetry is being used in the deployment, as the option causes nova to generate audit information that Telemetry then retrieves from the server usage audit log API [1]. Historically, there has been no way to delete task_log table records other than manual database modification. Because of this, task_log records could pile up over time and operators are forced to perform manual steps to periodically truncate the table. This adds a --task-log option to the 'nova-manage db archive_deleted_rows' CLI to also archive task_log records while archiving the database. --task-log works in conjunction with --before if operators desire archving only records that are older than <date>. The 'updated_at' field is used by --task-log --before <date> to determine the age of a task_log record for archival. Closes-Bug: #1877189 [1] https://docs.openstack.org/api-ref/compute/#server-usage-audit-log-os-instance-usage-audit-log Change-Id: Ibed67854a693c930effd4dba7aca6cd03b65bd92
* | Merge "docs: Correct typos in 'nova-manage db' docs"Zuul2021-04-221-2/+2
|\ \
| * | docs: Correct typos in 'nova-manage db' docsStephen Finucane2021-03-311-2/+2
| | | | | | | | | | | | | | | | | | | | | Per review feedback. Change-Id: Id157e3614bfe9adca44e6ca0adc56e3ae9efee59 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* | | Merge "docs: Add man pages for 'nova-policy'"Zuul2021-04-2112-5/+105
|\ \ \
| * | | docs: Add man pages for 'nova-policy'Stephen Finucane2021-04-1912-5/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I don't actually grok what this does that 'oslopolicy-checker' couldn't do, so perhaps we can deprecate this in the future. For now though, simply document the thing. While we're here, we make some additional related changes: - Remove references to the 'policy.yaml' file for services that don't use policy (i.e. everything except the API services and, due to a bug, the nova-compute service). - Update remaining references to the 'policy.yaml' file to include the 'policy.d/' directory - Update the help text for the '--api-name' and '--target' options of the 'nova-policy policy check' command to correct tense and better explain their purpose. Also, yes, 'nova-policy policy check' is dumb. Don't blame me :) Change-Id: I913b0de9ec40a615da7bf9981852edef4a88fecb Signed-off-by: Stephen Finucane <stephenfin@redhat.com> Related-bug: #1675486
* | | | Merge "docs: Correct typos in 'nova-manage cells_v2' docs"Zuul2021-04-191-8/+9
|\ \ \ \ | |/ / / |/| | |
| * | | docs: Correct typos in 'nova-manage cells_v2' docsStephen Finucane2021-03-311-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Per review feedback. Change-Id: Ib14c8901920a0844d22674b768bc543a10298c4b Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* | | | docs: Populate "See Also" section with meaningful linksStephen Finucane2021-04-1312-16/+27
| | | | | | | | | | | | | | | | | | | | Change-Id: I28dbbb22f1752081615722a3932394741654a9da Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* | | | docs: Document options for remaining nova-* commandsStephen Finucane2021-04-1313-15/+304
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of these share the same collection of oslo.config and oslo.log options so it makes sense to group them together. The only exception is nova-rootwrap, which is a wrapper around the 'oslo_rootwrap.cmd.main' module, which curiously does not use argparse and doesn't have any options. Change-Id: I393ff162be58700956fbab29ff6b9ba3cf5860a6 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* | | docs: Rewrite 'nova-manage libvirt' docsStephen Finucane2021-03-301-10/+31
| | | | | | | | | | | | | | | Change-Id: Ice641a8ce2658e0df4eea08f527fe7813617218f Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* | | docs: Rewrite 'nova-manage placement' docsStephen Finucane2021-03-301-42/+90
|/ / | | | | | | | | Change-Id: Ie973de1eb411db6379b544987b55199913eb62b6 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* | docs: Rewrite 'nova-manage api_db', 'cell_v2' docsStephen Finucane2021-03-301-90/+434
|/ | | | | Change-Id: I82c718cdf2134005d0a1639072cefe037da78f15 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* docs: Rewrite 'nova-manage db' docs to use proper directivesStephen Finucane2021-03-301-129/+208
| | | | | | | | We have them. Let's use them. The resulting man pages aren't perfect, but they're *much* better. Change-Id: I84d54a246fecbd2f7d2950d6c6044f7cd1b8e9df Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
* docs: Use proper headers in nova-manage man pageStephen Finucane2021-03-301-638/+853
| | | | | | | | | | | This is step one in improving the usability of these docs. The current style makes it impossible to link to individual commands from the built docs. There is a better way. Use headers along with code blocks to show the actual command. This was mostly generated from a find-replace along with some follow-up manual fixes. Change-Id: Icd25006f31c8e34fe33d79779e0577dc78f96a24 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* nova-status: Add hw_machine_type check for libvirt instancesLee Yarwood2021-03-031-0/+1
| | | | | | | | | | | | | | | | | This change introduces a new nova-status check to ensure a machine type has been recorded for each instance within an environment. nova-status will fail with a warning when instances are found, directing the operator to use the previously added nova-manage list_unset and update commands to set a machine type for these instances. The logic for this check comes entirely from the list_unset command. It is noted in the warning output that this can be ignored if no libvirt or HyperV based computes are present in the environment as hw_machine_type is only used by these two virt drivers at present. blueprint: libvirt-default-machine-type Change-Id: Ic3ae48c57e61c4e45883fbae1328a448be025953
* nova-manage: Add libvirt list_unset_machine_type commandLee Yarwood2021-03-031-0/+24
| | | | | | | | | | | This change adds a libvirt command to list all instance UUIDs with hw_machine_type unset in their image metadata. This will be useful to operators attempting to change the [libvirt]hw_machine_type default in the future as it allows them to confirm if it is safe to change the configurable without impacting existing instances. blueprint: libvirt-default-machine-type Change-Id: I39909ace97f62e87f326d4d822d4e4c391445765
* nova-manage: Add libvirt update_machine_type commandLee Yarwood2021-03-031-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds a second update command to the libvirt group within nova-manage. This command will set or update the machine type of the instance when the following criteria are met: * The instance must have a ``vm_state`` of ``STOPPED``, ``SHELVED`` or ``SHELVED_OFFLOADED``. * The machine type is supported. The supported list includes alias and versioned types of ``pc``, ``pc-i440fx``, ``pc-q35``, ``q35``, ``virt`` or ``s390-ccw-virtio``. * The update will not move the instance between underlying machine types. For example, ``pc`` to ``q35``. * The update will not move the instance between an alias and versioned machine type or vice versa. For example, ``pc`` to ``pc-1.2.3`` or ``pc-1.2.3`` to ``pc``. A --force flag is provided to skip the above checks but caution should be taken as this could easily lead to the underlying ABI of the instance changing when moving between machine types. blueprint: libvirt-default-machine-type Change-Id: I6b80021a2f90d3379c821dc8f02a72f350169eb3
* nova-manage: Add libvirt get_machine_type commandLee Yarwood2021-03-031-0/+22
| | | | | | | | | This change introduces the first machine_type command to nova-manage to fetch and display the current machine type if set in the system metadata of the instance. blueprint: libvirt-default-machine-type Change-Id: Idc035671892e4668141a93763f8f2bed7a630812
* cmd: Remove 'nova-manage db ironic_flavor_migration'Stephen Finucane2021-02-101-48/+42
| | | | | | | | This command was helpful to assist users FFUing past the Pike release, however, it's no longer helpful and should be removed now. Do just that. Change-Id: Ib42f65dbcf61ead571e9107e7ffbba2b29f48d64 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* cmd: Remove 'nova-manage db null_instance_uuid_scan'Stephen Finucane2021-02-021-3/+0
| | | | | | | | | | | Change I2aae01ed235f1257b0b3ddc6aee4efc7be38eb6e indicated that this command was no longer necessary and could be removed. In hindsight, it's been unnecessary since Liberty, which introduced a blocking migration requiring this script be run, and it could have been deleted years ago. No time like the present though. Change-Id: I532c7918a8e2c887f29d2f0e1e33b80f2b3a7507 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* Add upgrade check about old computesBalazs Gibizer2020-11-041-0/+4
| | | | | | | | | | | Report a warning during upgrade checks if there are computes older than the previous major nova release in the system. So if code is upgraded to Wallaby and the upgrade check was run before the restart of the services with W code then the check warns for Ussuri computes in the system. Change-Id: I873b0c1e6e695ae88241bbf75ac9f80ecc6f5664
* [Trivial] Replace ref of policy.json to policy.yamlGhanshyam Mann2020-09-098-8/+8
| | | | | | | | 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
* Migrate default policy file from JSON to YAMLGhanshyam Mann2020-09-091-0/+4
| | | | | | | | | | | | | | | | | | | | Default value of 'CONF.oslo_policy.policy_file' config option has been changed from 'policy.json' to 'policy.yaml'. If new default file 'policy.yaml' does not exist but old default 'policy.json' exist then fallback to use old default file. An upgrade checks is added to check the policy_file format and fail upgrade checks if it is JSON formatted. Added a warning in policy doc about JSON formatted file is deprecated, also removed all the reference to policy.json file in doc as well as in tests. Related Blueprint: policy-json-to-yaml Closes-Bug: #1875418 Change-Id: Ic4d3b998bb9701cb1e3ef12d9bb6f4d91cc19c18
* docs: Remove subtitles, metadata from man pagesStephen Finucane2020-05-2112-109/+23
| | | | | | | | | | | These do not render correctly when generating man pages and likely exist from a time when the pages were built with rst2man (i.e. docutils) instead of Sphinx. They're not necessary when using Sphinx since that information is provided via the 'man_pages' config option in 'conf.py', which are updated here to reflect reality. Change-Id: I133e7231112cc9025e57a29d43bfa7002ca775e7 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* Merge "Support for --force flag for nova-manage placement heal_allocations ↵Zuul2020-05-111-1/+4
|\ | | | | | | command"
| * Support for --force flag for nova-manage placement heal_allocations commandjay2020-05-061-1/+4
| | | | | | | | | | | | | | Use this flag to forcefully heal allocation for a specific instance Change-Id: I54147d522c86d858f938df509b333b6af3189e52 Closes-Bug: #1868997
* | doc: Fix list rendering in cli/nova-status.rstTakashi Natsume2020-05-021-3/+1
| | | | | | | | | | Change-Id: I29ebb4c956ce979d60f74346d93510797f8de76b Signed-off-by: Takashi Natsume <takanattie@gmail.com>
* | Add nova-status upgrade check and reno for policy new defaultsGhanshyam Mann2020-05-011-0/+5
|/ | | | | | | | | | | | | | | | | | | | | There are cases where policy file is re-generated freshly and end up having the new defaults only but expectation is that old deprecated rule keep working. If a rule is present in policy file then, that has priority over its defaults so either rules should not be present in policy file or users need to update their token to match the overridden rule permission. This issue was always present when any policy defaults were changed with old defaults being supported as deprecated. This is we have changed all the policy for new defaults so it came up as broken case. Adding nova-status upgrade check also to detect such policy file. Related-Bug: #1875418 Change-Id: Id9cd65877e53577bff22e408ca07bbeec4407f6e
* Merge "Support for nova-manage placement heal_allocations --cell"Zuul2020-04-031-1/+4
|\
| * Support for nova-manage placement heal_allocations --cellhackertron2020-04-021-1/+4
| | | | | | | | | | | | Closes-bug: #1868531 Change-Id: I98b3280583a6d12461d8aa52e5714d7606b84369
* | FUP for Add a placement audit commandSylvain Bauza2020-03-301-1/+0
| | | | | | | | | | | | | | | | Since I537ed74503d208957f0a97af3ab754a6750dac20 had some clean-up comments, we can just provide a follow-up change. Change-Id: Ie8b5147322e13ad7df966b5c3c41ef0418e4f64c Related-Bug: #1793569
* | Add a placement audit commandSylvain Bauza2020-01-301-0/+36
|/ | | | | | | | | | 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
* Merge "Print help if nova-manage subcommand is not specified"Zuul2020-01-151-1/+1
|\