docs: use openstackdocstheme extlink extension
The extlink extension [1] ensures the urls have version-specific references to other projects. [1] https://docs.openstack.org/openstackdocstheme/latest/#external-link-helper Change-Id: I0d5d445fae8a7ec60f6a9caacede7cc77770b36e Story: 2006621 Task: 36825
This commit is contained in:
parent
7fe0b0ee4d
commit
a25589b20f
@ -17,8 +17,8 @@ Enabling API Audit Logging
|
||||
==========================
|
||||
|
||||
Audit middleware is available as part of `keystonemiddleware` (>= 1.6) library.
|
||||
For information regarding how audit middleware functions refer `here.
|
||||
<https://docs.openstack.org/keystonemiddleware/latest/audit.html>`_
|
||||
For information regarding how audit middleware functions refer
|
||||
:keystonemiddleware-doc:`here <audit.html>`.
|
||||
|
||||
Auditing can be enabled for the Bare Metal service by making the following changes
|
||||
to ``/etc/ironic/ironic.conf``.
|
||||
|
@ -242,7 +242,8 @@ Node serial console of the Bare Metal service is compatible with the
|
||||
serial console of the Compute service. Hence, serial consoles to
|
||||
Bare Metal nodes can be seen and interacted with via the Dashboard service.
|
||||
In order to achieve that, you need to follow the documentation for
|
||||
`Serial Console`_ from the Compute service.
|
||||
:nova-doc:`Serial Console <admin/remote-console-access.html#serial>`
|
||||
from the Compute service.
|
||||
|
||||
Configuring HA
|
||||
~~~~~~~~~~~~~~
|
||||
@ -281,4 +282,3 @@ configuration, you may consider some settings below.
|
||||
memcache_servers = memcache01:11211,memcache02:11211,memcache03:11211
|
||||
|
||||
.. _`socat`: http://www.dest-unreach.org/socat
|
||||
.. _`Serial Console`: https://docs.openstack.org/nova/latest/admin/remote-console-access.html#serial
|
||||
|
@ -8,7 +8,8 @@ All communications with the node are by default performed over secure SSH
|
||||
transport.
|
||||
|
||||
The ``ansible`` deploy interface uses Ansible playbooks to define the
|
||||
deployment logic. It is not based on `Ironic Python Agent`_ (IPA)
|
||||
deployment logic. It is not based on
|
||||
:ironic-python-agent-doc:`Ironic Python Agent (IPA) <>`
|
||||
and does not generally need IPA to be running in the deploy ramdisk.
|
||||
|
||||
Overview
|
||||
@ -49,7 +50,8 @@ file.
|
||||
Features
|
||||
--------
|
||||
|
||||
Similar to deploy interfaces relying on `Ironic Python Agent`_, this deploy
|
||||
Similar to deploy interfaces relying on
|
||||
:ironic-python-agent-doc:`Ironic Python Agent (IPA) <>`, this deploy
|
||||
interface also depends on the deploy ramdisk calling back to ironic API's
|
||||
``heartbeat`` endpoint.
|
||||
|
||||
@ -465,6 +467,5 @@ You can use these modules in your playbooks as well.
|
||||
is not shadowed.
|
||||
|
||||
.. _Ansible: https://docs.ansible.com/ansible/latest/index.html
|
||||
.. _Ironic Python Agent: https://docs.openstack.org/ironic-python-agent/latest/
|
||||
.. _ironic-staging-drivers: https://opendev.org/x/ironic-staging-drivers/src/branch/stable/pike/imagebuild
|
||||
.. _ironic-python-agent-builder: https://opendev.org/openstack/ironic-python-agent-builder
|
||||
|
@ -123,7 +123,7 @@ The ``ilo`` hardware type supports following hardware interfaces:
|
||||
enabled_inspect_interfaces = ilo,inspector
|
||||
|
||||
.. note::
|
||||
`Ironic Inspector <https://docs.openstack.org/ironic-inspector/latest/>`_
|
||||
:ironic-inspector-doc:`Ironic Inspector <>`
|
||||
needs to be configured to use ``inspector`` as the inspect interface.
|
||||
|
||||
* management
|
||||
@ -334,8 +334,8 @@ Different configuration for ilo hardware type
|
||||
Glance Configuration
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
1. `Configure Glance image service with its storage backend as Swift
|
||||
<https://docs.openstack.org/glance/latest/configuration/configuring.html#configuring-the-swift-storage-backend>`_.
|
||||
1. :glance-doc:`Configure Glance image service with its storage backend as Swift
|
||||
<configuration/configuring.html#configuring-the-swift-storage-backend>`.
|
||||
|
||||
2. Set a temp-url key for Glance user in Swift. For example, if you have
|
||||
configured Glance with user ``glance-swift`` and tenant as ``service``,
|
||||
|
@ -11,8 +11,8 @@ variety of actions such as inspect, configure, clean and deploy images.
|
||||
IPA is distributed over nodes and runs, inside of a ramdisk, the
|
||||
process of booting this ramdisk on the node.
|
||||
|
||||
For more information see the `ironic-python-agent documentation
|
||||
<https://docs.openstack.org/ironic-python-agent/latest>`_.
|
||||
For more information see the
|
||||
:ironic-python-agent-doc:`ironic-python-agent documentation <>`.
|
||||
|
||||
Drivers
|
||||
=======
|
||||
@ -63,7 +63,7 @@ Steps to enable proxies
|
||||
This will probably require you to configure the proxy server to cache the
|
||||
content even if the requested URL contains a query, and to raise the maximum
|
||||
cached file size as images can be pretty big. If you have HTTPS enabled in
|
||||
swift (see `swift deployment guide <https://docs.openstack.org/swift/latest/deployment_guide.html>`_),
|
||||
swift (see :swift-doc:`swift deployment guide <deployment_guide.html>`),
|
||||
it is possible to configure the proxy server to talk to swift via HTTPS
|
||||
to download the image, store it in the cache unencrypted and return it to
|
||||
the node via HTTPS again. Because the image will be stored unencrypted in
|
||||
|
@ -58,7 +58,7 @@ hardware interfaces:
|
||||
The default is ``irmc``.
|
||||
|
||||
.. note::
|
||||
`Ironic Inspector <https://docs.openstack.org/ironic-inspector/latest/>`_
|
||||
:ironic-inspector-doc:`Ironic Inspector <>`
|
||||
needs to be present and configured to use ``inspector`` as the
|
||||
inspect interface.
|
||||
|
||||
|
@ -44,7 +44,4 @@ Dashboard Integration
|
||||
A plugin for the OpenStack Dashboard (horizon) service is under development.
|
||||
Documentation for that can be found within the ironic-ui project.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
Dashboard (horizon) plugin <https://docs.openstack.org/ironic-ui/latest>
|
||||
* :ironic-ui-doc:`Dashboard (horizon) plugin <>`
|
||||
|
@ -90,14 +90,15 @@ The ironic-python-agent ramdisk emits timing metrics for every API method.
|
||||
Deployers who use custom HardwareManagers can emit custom metrics for their
|
||||
hardware. For more information on custom HardwareManagers, and emitting
|
||||
metrics from them, please see the
|
||||
`ironic-python-agent documentation <https://docs.openstack.org/ironic-python-agent/latest/>`_.
|
||||
:ironic-python-agent-doc:`ironic-python-agent documentation <>`.
|
||||
|
||||
|
||||
Adding New Metrics
|
||||
==================
|
||||
|
||||
If you're a developer, and would like to add additional metrics to ironic,
|
||||
please see the `ironic-lib developer documentation
|
||||
<https://docs.openstack.org/ironic-lib/latest/>`_ for details on how to use
|
||||
please see the
|
||||
:ironic-lib-doc:`ironic-lib developer documentation <>`
|
||||
for details on how to use
|
||||
the metrics library. A release note should also be created each time a metric
|
||||
is changed or removed to alert deployers of the change.
|
||||
|
@ -89,8 +89,8 @@ templates offer a way to define a set of one or more deploy steps to be
|
||||
executed with particular sets of arguments and priorities.
|
||||
|
||||
Each deploy template has a name, which must be a valid trait. Traits can be
|
||||
either standard or custom. Standard traits are listed in the `os_traits
|
||||
library <https://docs.openstack.org/os-traits/latest/>`_. Custom traits must
|
||||
either standard or custom. Standard traits are listed in the
|
||||
:os-traits-doc:`os_traits library <>`. Custom traits must
|
||||
meet the following requirements:
|
||||
|
||||
* prefixed with ``CUSTOM_``
|
||||
|
@ -391,9 +391,9 @@ Developer documentation
|
||||
In-band RAID configuration is done using IPA ramdisk. IPA ramdisk has
|
||||
support for pluggable hardware managers which can be used to extend the
|
||||
functionality offered by IPA ramdisk using stevedore plugins. For more
|
||||
information, see Ironic Python Agent `Hardware Manager`_ documentation.
|
||||
|
||||
.. _`Hardware Manager`: https://docs.openstack.org/ironic-python-agent/latest/install/index.html#hardware-managers
|
||||
information, see Ironic Python Agent
|
||||
:ironic-python-agent-doc:`Hardware Manager <install/index.html#hardware-managers>`
|
||||
documentation.
|
||||
|
||||
The hardware manager that supports RAID configuration should do the following:
|
||||
|
||||
|
@ -186,8 +186,8 @@ An easy way to do this is to:
|
||||
deploy RAM disks' requests.
|
||||
* to disable unauthorized access to these endpoints in the (first) API services
|
||||
group that serves external requests, the following lines should be
|
||||
added to the `policy.yaml file
|
||||
<https://docs.openstack.org/ironic/latest/configuration/sample-policy.html>`_::
|
||||
added to the
|
||||
:ironic-doc:`policy.yaml file <configuration/sample-policy.html>`::
|
||||
|
||||
# Send heartbeats from IPA ramdisk
|
||||
"baremetal:node:ipa_heartbeat": "rule:is_admin"
|
||||
|
@ -142,9 +142,9 @@ A few things should be checked in this case:
|
||||
Filter ComputeCapabilitiesFilter returned 0 hosts
|
||||
|
||||
The name of the filter that removed the last hosts may give some hints on
|
||||
what exactly was not matched. See `Nova filters documentation
|
||||
<https://docs.openstack.org/nova/latest/filter_scheduler.html>`_ for more
|
||||
details.
|
||||
what exactly was not matched. See
|
||||
:nova-doc:`Nova filters documentation <filter_scheduler.html>`
|
||||
for more details.
|
||||
|
||||
#. If none of the above helped, check Ironic conductor log carefully to see
|
||||
if there are any conductor-related errors which are the root cause for
|
||||
|
@ -380,8 +380,8 @@ recommended that you switch to using **ironic-inspector**, which is a newer
|
||||
client module for the in-band inspection service, which was previously part of
|
||||
the **ironic-discoverd** package. Ironic Liberty supports the
|
||||
**ironic-discoverd** service, but does not support its in-tree client module.
|
||||
Please refer to `ironic-inspector version support matrix
|
||||
<https://docs.openstack.org/ironic-inspector/latest/install/index.html#version-support-matrix>`_
|
||||
Please refer to
|
||||
:ironic-inspector-doc:`ironic-inspector version support matrix <install/index.html#version-support-matrix>`
|
||||
for details on which ironic versions are compatible with which
|
||||
**ironic-inspector**/**ironic-discoverd** versions.
|
||||
|
||||
@ -391,8 +391,8 @@ The discoverd to inspector upgrade procedure is as follows:
|
||||
**ironic-discoverd** (usually the same as conductor).
|
||||
|
||||
* Update the **ironic-inspector** configuration file to stop using deprecated
|
||||
configuration options, as marked by the comments in the `example.conf
|
||||
<https://docs.openstack.org/ironic-inspector/latest/install/index.html#configuration>`_.
|
||||
configuration options, as marked by the comments in the
|
||||
:ironic-inspector-doc:`example.conf <install/index.html#configuration>`.
|
||||
It is recommended you move the configuration file to
|
||||
``/etc/ironic-inspector/inspector.conf``.
|
||||
|
||||
|
@ -215,10 +215,9 @@ RAID interface. For example, to update all nodes use:
|
||||
|
||||
.. note::
|
||||
The ability of a node to use the ``agent`` RAID interface depends on
|
||||
the ramdisk (more specifically, a `hardware manager`_ used in it),
|
||||
not on the driver.
|
||||
|
||||
.. _hardware manager: https://docs.openstack.org/ironic-python-agent/latest/contributor/hardware_managers.html
|
||||
the ramdisk (more specifically, a
|
||||
:ironic-python-agent-doc:`hardware manager <contributor/hardware_managers.html>`
|
||||
used in it), not on the driver.
|
||||
|
||||
Network and storage
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -65,6 +65,32 @@ apidoc_separate_modules = True
|
||||
|
||||
repository_name = 'openstack/ironic'
|
||||
use_storyboard = True
|
||||
openstack_projects = [
|
||||
'bifrost',
|
||||
'cinder',
|
||||
'glance',
|
||||
'ironic',
|
||||
'ironic-inspector',
|
||||
'ironic-lib',
|
||||
'ironic-neutron-agent',
|
||||
'ironic-python-agent',
|
||||
'ironic-ui',
|
||||
'keystone',
|
||||
'keystonemiddleware',
|
||||
'networking-baremetal',
|
||||
'neutron',
|
||||
'nova',
|
||||
'oslo.messaging',
|
||||
'oslo.reports',
|
||||
'oslo.versionedobjects',
|
||||
'oslotest',
|
||||
'osprofiler',
|
||||
'os-traits',
|
||||
'python-ironicclient',
|
||||
'python-ironic-inspector-client',
|
||||
'python-openstackclient',
|
||||
'swift',
|
||||
]
|
||||
|
||||
wsme_protocols = ['restjson']
|
||||
|
||||
|
@ -48,12 +48,12 @@ developed by the same community.
|
||||
|
||||
.. seealso::
|
||||
|
||||
* https://docs.openstack.org/bifrost/latest/
|
||||
* https://docs.openstack.org/ironic-inspector/latest/
|
||||
* https://docs.openstack.org/ironic-lib/latest/
|
||||
* https://docs.openstack.org/ironic-python-agent/latest/
|
||||
* https://docs.openstack.org/python-ironicclient/latest/
|
||||
* https://docs.openstack.org/python-ironic-inspector-client/latest/
|
||||
* :bifrost-doc:`Bifrost Documentation <>`
|
||||
* :ironic-inspector-doc:`Ironic Inspector Documentation <>`
|
||||
* :ironic-lib-doc:`Ironic Lib Documentation <>`
|
||||
* :ironic-python-agent-doc:`Ironic Python Agent (IPA) Documentation <>`
|
||||
* :python-ironicclient-doc:`Ironic Client Documentation <>`
|
||||
* :python-ironic-inspector-client-doc:`Ironic Inspector Client Documentation <>`
|
||||
|
||||
Project Hosting Details
|
||||
-----------------------
|
||||
|
@ -131,8 +131,8 @@ Then run ``tox`` with the debug environment as one of the following::
|
||||
tox -e debug test_file_name.TestClass
|
||||
tox -e debug test_file_name.TestClass.test_name
|
||||
|
||||
For more information see the `oslotest documentation
|
||||
<https://docs.openstack.org/oslotest/latest/user/features.html#debugging-with-oslo-debug-helper>`_.
|
||||
For more information see the
|
||||
:oslotest-doc:`oslotest documentation <user/features.html#debugging-with-oslo-debug-helper>`.
|
||||
|
||||
Database Setup
|
||||
--------------
|
||||
|
@ -138,5 +138,5 @@ the preferred process is:
|
||||
-----------------------------------------------------------------
|
||||
|
||||
For more information, see the
|
||||
`oslo.reports documentation <https://docs.openstack.org/oslo.reports/latest/user/usage.html>`_
|
||||
:oslo.reports-doc:`oslo.reports documentation <user/usage.html>`
|
||||
page.
|
||||
|
@ -6,7 +6,8 @@ Developing New Notifications
|
||||
|
||||
Ironic notifications are events intended for consumption by external services.
|
||||
Notifications are sent to these services over a message bus by
|
||||
oslo.messaging's Notifier class [1]_. For more information about configuring
|
||||
:oslo.messaging-doc:`oslo.messaging's Notifier class <reference/notifier.html>`.
|
||||
For more information about configuring
|
||||
notifications and available notifications, see :ref:`deploy-notifications`.
|
||||
|
||||
Ironic also has a set of base classes that assist in clearly defining the
|
||||
@ -62,8 +63,9 @@ object. Here's an example::
|
||||
'an_extra_field': fields.StringField(nullable=True)
|
||||
}
|
||||
|
||||
Note that both the payload and notification classes are oslo versioned
|
||||
objects [2]_. Modifications to these require a version bump so that consumers
|
||||
Note that both the payload and notification classes are
|
||||
:oslo.versionedobjects-doc:`oslo versioned objects <>`.
|
||||
Modifications to these require a version bump so that consumers
|
||||
of notifications know when the notifications have changed.
|
||||
|
||||
SCHEMA defines how to populate the payload fields. It's an optional
|
||||
@ -149,5 +151,3 @@ This example will send the following notification over the message bus::
|
||||
"publisher_id":"ironic-conductor.hostname01"
|
||||
}
|
||||
|
||||
.. [1] https://docs.openstack.org/oslo.messaging/latest/reference/notifier.html
|
||||
.. [2] https://docs.openstack.org/oslo.versionedobjects/latest/
|
||||
|
@ -38,7 +38,8 @@ and ceilometer API is used to retrieve all messages related to one trace.
|
||||
OSProfiler has entry point that allows the user to retrieve information
|
||||
about traces and present it in HTML/JSON using CLI.
|
||||
|
||||
For more details see `OSProfiler – Cross-project profiling library`_.
|
||||
For more details see
|
||||
:osprofiler-doc:`OSProfiler – Cross-project profiling library <index.html>`.
|
||||
|
||||
|
||||
How to Use OSProfiler with Ironic in Devstack
|
||||
@ -117,7 +118,5 @@ Each trace has embedded trace point details as shown below:
|
||||
References
|
||||
==========
|
||||
|
||||
- `OSProfiler – Cross-project profiling library`_
|
||||
- :osprofiler-doc:`OSProfiler – Cross-project profiling library <index.html>`
|
||||
- :ref:`deploy_devstack`
|
||||
|
||||
.. _OSProfiler – Cross-project profiling library: https://docs.openstack.org/osprofiler/latest/index.html
|
||||
|
@ -21,8 +21,8 @@ a minor version. Server minor version is increased every time the API behavior
|
||||
is changed (note `Exceptions from Versioning`_).
|
||||
|
||||
.. note::
|
||||
`Nova versioning documentation`_ has a nice guide for developers on when to
|
||||
bump an API version.
|
||||
:nova-doc:`Nova versioning documentation <contributor/microversions.html#when-do-i-need-a-new-microversion>`
|
||||
has a nice guide for developers on when to bump an API version.
|
||||
|
||||
The server indicates its minimum and maximum supported API versions in the
|
||||
``X-OpenStack-Ironic-API-Minimum-Version`` and
|
||||
@ -47,8 +47,6 @@ version of API that they have been tested against.
|
||||
microversion, which always requests the newest supported API version from
|
||||
the server.
|
||||
|
||||
.. _Nova versioning documentation: https://docs.openstack.org/nova/latest/contributor/microversions.html#when-do-i-need-a-new-microversion
|
||||
|
||||
REST API Versions History
|
||||
-------------------------
|
||||
|
||||
|
@ -46,8 +46,8 @@ and provide the file or HTTP URL to the Bare Metal service.
|
||||
|
||||
For the format of the configuration drive, Bare Metal service expects a
|
||||
``gzipped`` and ``base64`` encoded ISO 9660 [#]_ file with a ``config-2``
|
||||
label. The `openstack baremetal client
|
||||
<https://docs.openstack.org/python-ironicclient/latest/cli/osc_plugin_cli.html>`_
|
||||
label. The
|
||||
:python-ironicclient-doc:`openstack baremetal client <cli/osc_plugin_cli.html>`
|
||||
can generate a configuration drive in the `expected format`_. Just pass a
|
||||
directory path containing the files that will be injected into it via the
|
||||
``--config-drive`` parameter of the ``openstack baremetal node deploy``
|
||||
|
@ -53,7 +53,7 @@ and Object Storage service as described below.
|
||||
#. Optionally, configure the ironic-conductor service. The default
|
||||
configuration assumes that:
|
||||
|
||||
#. the Object Storage service is implemented by swift_,
|
||||
#. the Object Storage service is implemented by :swift-doc:`swift <>`,
|
||||
#. the Object Storage service URL is available from the service catalog,
|
||||
#. the project, used by the Image service to access the Object Storage, is
|
||||
the same as the project, used by the Bare Metal service to access it,
|
||||
@ -73,5 +73,3 @@ and Object Storage service as described below.
|
||||
swift_temp_url_key = secret
|
||||
|
||||
#. (Re)start the ironic-conductor service.
|
||||
|
||||
.. _swift: https://docs.openstack.org/swift/latest/
|
||||
|
@ -50,7 +50,7 @@ Configure the Identity service for the Bare Metal service
|
||||
|
||||
More complete documentation on managing Users and Roles within your
|
||||
OpenStack deployment are outside the scope of this document, but may be
|
||||
found here_.
|
||||
found :keystone-doc:`here <admin/identity-concepts.html#user-management>`.
|
||||
|
||||
#. You can further restrict access to the Bare Metal service by creating a
|
||||
separate "baremetal" Project, so that Bare Metal resources (Nodes, Ports,
|
||||
@ -73,11 +73,8 @@ Configure the Identity service for the Bare Metal service
|
||||
--user USERNAME baremetal_observer
|
||||
|
||||
#. Further documentation is available elsewhere for the ``openstack``
|
||||
`command-line client`_ and the Identity_ service. A
|
||||
:doc:`policy.json.sample </configuration/sample-policy>`
|
||||
:python-openstackclient-doc:`command-line client <cli/authentication.html>`
|
||||
and the :keystone-doc:`Identity <admin/cli-manage-projects-users-and-roles.html>`
|
||||
service. A :doc:`policy.json.sample </configuration/sample-policy>`
|
||||
file, which enumerates the service's default policies, is provided for
|
||||
your convenience with the Bare Metal Service.
|
||||
|
||||
.. _Identity: https://docs.openstack.org/keystone/latest/admin/cli-manage-projects-users-and-roles.html
|
||||
.. _`command-line client`: https://docs.openstack.org/python-openstackclient/latest/cli/authentication.html
|
||||
.. _here: https://docs.openstack.org/keystone/latest/admin/identity-concepts.html#user-management
|
||||
|
@ -11,11 +11,11 @@ metal provisioning.
|
||||
It is recommended to use the baremetal ML2 mechanism driver and L2 agent for
|
||||
proper integration with the Networking service. Documentation regarding
|
||||
installation and configuration of the baremetal mechanism driver and L2 agent
|
||||
is available `here
|
||||
<https://docs.openstack.org/networking-baremetal/latest/index.html>`_.
|
||||
is available
|
||||
:networking-baremetal-doc:`here <index.html>`.
|
||||
|
||||
For use with `routed networks
|
||||
<https://docs.openstack.org/neutron/latest/admin/config-routed-networks>`_
|
||||
For use with
|
||||
:neutron-doc:`routed networks <admin/config-routed-networks>`
|
||||
the baremetal ML2 components are required.
|
||||
|
||||
.. Note:: When the baremetal ML2 components are *not* used, ports in the
|
||||
|
@ -30,8 +30,8 @@ still used to determine the root partition size.
|
||||
|
||||
.. note:: You can add ``--id <id>`` to specify an ID for the flavor.
|
||||
|
||||
See the `docs on this command
|
||||
<https://docs.openstack.org/python-openstackclient/latest/cli/command-objects/flavor.html#flavor-create>`_
|
||||
See the
|
||||
:python-openstackclient-doc:`docs on this command <cli/command-objects/flavor.html#flavor-create>`
|
||||
for other options that may be specified.
|
||||
|
||||
After creation, associate each flavor with one custom resource class. The name
|
||||
|
@ -134,8 +134,8 @@ provisioning will happen in a multi-tenant environment (which means using the
|
||||
default; make sure not to override it by manually setting it to False.
|
||||
|
||||
#. Install and configure a compatible ML2 mechanism driver which supports bare
|
||||
metal provisioning for your switch. See `ML2 plugin configuration manual
|
||||
<https://docs.openstack.org/neutron/latest/admin/config-ml2.html>`_
|
||||
metal provisioning for your switch. See
|
||||
:neutron-doc:`ML2 plugin configuration manual <admin/config-ml2.html>`
|
||||
for details.
|
||||
|
||||
#. Restart the ironic-conductor and ironic-api services after the
|
||||
|
@ -3,11 +3,12 @@
|
||||
Building or downloading a deploy ramdisk image
|
||||
==============================================
|
||||
|
||||
Ironic depends on having an image with the ironic-python-agent_ (IPA)
|
||||
Ironic depends on having an image with the
|
||||
:ironic-python-agent-doc:`ironic-python-agent (IPA) <>`
|
||||
service running on it for controlling and deploying bare metal nodes.
|
||||
|
||||
Two kinds of images are published on every commit from every branch of
|
||||
ironic-python-agent_:
|
||||
:ironic-python-agent-doc:`ironic-python-agent (IPA) <>`
|
||||
|
||||
* DIB_ images are suitable for production usage and can be downloaded from
|
||||
https://tarballs.openstack.org/ironic-python-agent/dib/files/.
|
||||
@ -21,7 +22,6 @@ Building from source
|
||||
Check the ironic-python-agent-builder_ project for information on how to build
|
||||
ironic-python-agent ramdisks.
|
||||
|
||||
.. _ironic-python-agent: https://docs.openstack.org/ironic-python-agent/latest/
|
||||
.. _DIB: https://docs.openstack.org/ironic-python-agent-builder/latest/admin/dib.html
|
||||
.. _TinyIPA: https://docs.openstack.org/ironic-python-agent-builder/latest/admin/tinyipa.html
|
||||
.. _ironic-python-agent-builder: https://docs.openstack.org/ironic-python-agent-builder/latest/
|
||||
|
@ -98,7 +98,8 @@ inspect
|
||||
implements fetching hardware information from nodes. Can be implemented
|
||||
out-of-band (via contacting the node's BMC) or in-band (via booting
|
||||
a ramdisk on a node). The latter implementation is called ``inspector``
|
||||
and uses a separate service called ironic-inspector_. Example:
|
||||
and uses a separate service called
|
||||
:ironic-inspector-doc:`ironic-inspector <>`. Example:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
@ -292,4 +293,3 @@ existing nodes.
|
||||
provide an explicit value for this interface when creating a node.
|
||||
|
||||
.. _setup.cfg: https://opendev.org/openstack/ironic/src/branch/master/setup.cfg
|
||||
.. _ironic-inspector: https://docs.openstack.org/ironic-inspector/latest/
|
||||
|
@ -18,8 +18,7 @@ of the following ways:
|
||||
* `Using an SSL termination proxy
|
||||
<https://docs.openstack.org/security-guide/secure-communication/tls-proxies-and-http-services.html>`_
|
||||
|
||||
* `Using native SSL support in swift
|
||||
<https://docs.openstack.org/swift/latest/deployment_guide.html>`_
|
||||
* :swift-doc:`Using native SSL support in swift <deployment_guide.html>`
|
||||
(recommended only for testing purpose by swift).
|
||||
|
||||
.. _EnableHTTPSinGlance:
|
||||
@ -31,8 +30,7 @@ Ironic drivers usually use Image service during node provisioning. By default,
|
||||
image service does not use HTTPS, but it is required for secure communication.
|
||||
It can be enabled by making the following changes to ``/etc/glance/glance-api.conf``:
|
||||
|
||||
#. `Configuring SSL support
|
||||
<https://docs.openstack.org/glance/latest/configuration/configuring.html#configuring-ssl-support>`_
|
||||
#. :glance-doc:`Configuring SSL support <configuration/configuring.html#configuring-ssl-support>`
|
||||
|
||||
#. Restart the glance-api service::
|
||||
|
||||
@ -42,7 +40,7 @@ It can be enabled by making the following changes to ``/etc/glance/glance-api.co
|
||||
Debian/Ubuntu:
|
||||
sudo service glance-api restart
|
||||
|
||||
See the `Glance <https://docs.openstack.org/glance/latest/>`_ documentation,
|
||||
See the :glance-doc:`Glance <>` documentation,
|
||||
for more details on the Image service.
|
||||
|
||||
Enabling HTTPS communication between Image service and Object storage
|
||||
@ -55,8 +53,7 @@ To enable secure HTTPS communication between Image service and Object storage fo
|
||||
|
||||
#. :ref:`EnableHTTPSinSwift`
|
||||
|
||||
#. `Configure Swift Storage Backend
|
||||
<https://docs.openstack.org/glance/latest/configuration/configuring.html#configuring-the-swift-storage-backend>`_
|
||||
#. :glance-doc:`Configure Swift Storage Backend <configuration/configuring.html#configuring-the-swift-storage-backend>`
|
||||
|
||||
#. :ref:`EnableHTTPSinGlance`
|
||||
|
||||
|
@ -325,7 +325,8 @@ Adding scheduling information
|
||||
|
||||
#. If you wish to perform more advanced scheduling of the instances based on
|
||||
hardware capabilities, you may add metadata to each node that will be
|
||||
exposed to the Compute scheduler (see: `ComputeCapabilitiesFilter`_).
|
||||
exposed to the Compute scheduler (see:
|
||||
:nova-doc:`ComputeCapabilitiesFilter <user/filter-scheduler.html>`).
|
||||
A full explanation of this is outside of the scope of this document. It can
|
||||
be done through the special ``capabilities`` member of node properties:
|
||||
|
||||
@ -476,8 +477,6 @@ To move a node from ``manageable`` to ``available`` provision state:
|
||||
For more details on the Bare Metal service's state machine, see the
|
||||
:doc:`/contributor/states` documentation.
|
||||
|
||||
.. _ComputeCapabilitiesFilter: https://docs.openstack.org/nova/latest/user/filter-scheduler.html
|
||||
|
||||
Mapping nodes to Compute cells
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
@ -36,7 +36,8 @@ are very similar to other OpenStack services:
|
||||
database back-end to further isolate bare metal resources (and associated
|
||||
metadata) from users.
|
||||
|
||||
- An oslo.messaging_ compatible queue, such as RabbitMQ. It may use the same
|
||||
- An :oslo.messaging-doc:`oslo.messaging <>`
|
||||
compatible queue, such as RabbitMQ. It may use the same
|
||||
implementation as that of the Compute service, but that is not a requirement.
|
||||
Used to implement RPC between ironic-api and ironic-conductor.
|
||||
|
||||
@ -118,15 +119,15 @@ Associated projects
|
||||
Optionally, one may wish to utilize the following associated projects for
|
||||
additional functionality:
|
||||
|
||||
python-ironicclient_
|
||||
:python-ironicclient-doc:`python-ironicclient <>`
|
||||
A command-line interface (CLI) and python bindings for interacting with the
|
||||
Bare Metal service.
|
||||
|
||||
ironic-ui_
|
||||
:ironic-ui-doc:`ironic-ui <>`
|
||||
Horizon dashboard, providing graphical interface (GUI) for the Bare Metal
|
||||
API.
|
||||
|
||||
ironic-inspector_
|
||||
:ironic-inspector-doc:`ironic-inspector <>`
|
||||
An associated service which performs in-band hardware introspection by
|
||||
PXE booting unregistered hardware into the ironic-python-agent ramdisk.
|
||||
|
||||
@ -134,16 +135,10 @@ diskimage-builder_
|
||||
A related project to help facilitate the creation of ramdisks and machine
|
||||
images, such as those running the ironic-python-agent.
|
||||
|
||||
bifrost_
|
||||
:bifrost-doc:`bifrost <>`
|
||||
A set of Ansible playbooks that automates the task of deploying a base image
|
||||
onto a set of known hardware using ironic in a standalone mode.
|
||||
|
||||
.. _remote procedure call (RPC): https://en.wikipedia.org/wiki/Remote_procedure_call
|
||||
.. _WSGI: https://en.wikipedia.org/wiki/Web_Server_Gateway_Interface
|
||||
.. _oslo.messaging: https://docs.openstack.org/oslo.messaging/latest/
|
||||
.. _python-ironicclient: https://docs.openstack.org/python-ironicclient/latest/
|
||||
.. _ironic-ui: https://docs.openstack.org/ironic-ui/latest/
|
||||
.. _ironic-inspector: https://docs.openstack.org/ironic-inspector/latest/
|
||||
.. _diskimage-builder: https://docs.openstack.org/diskimage-builder/latest/
|
||||
.. _bifrost: https://docs.openstack.org/bifrost/latest/
|
||||
|
||||
|
@ -22,17 +22,17 @@ Components
|
||||
This architecture assumes `an OpenStack installation`_ with the following
|
||||
components participating in the bare metal provisioning:
|
||||
|
||||
* The `Compute service`_ manages bare metal instances.
|
||||
* The :nova-doc:`Compute service <>` manages bare metal instances.
|
||||
|
||||
* The `Networking service`_ provides DHCP for bare metal instances.
|
||||
* The :neutron-doc:`Networking service <>` provides DHCP for bare metal instances.
|
||||
|
||||
* The `Image service`_ provides images for bare metal instances.
|
||||
* The :glance-doc:`Image service <>` provides images for bare metal instances.
|
||||
|
||||
The following services can be optionally used by the Bare Metal service:
|
||||
|
||||
* The `Volume service`_ provides volumes to boot bare metal instances from.
|
||||
* The :cinder-doc:`Volume service <>` provides volumes to boot bare metal instances from.
|
||||
|
||||
* The `Bare Metal Introspection service`_ simplifies enrolling new bare metal
|
||||
* The :ironic-inspector-doc:`Bare Metal Introspection service <>` simplifies enrolling new bare metal
|
||||
machines by conducting in-band introspection.
|
||||
|
||||
Node roles
|
||||
@ -50,7 +50,8 @@ nodes:
|
||||
and bare metal nodes.
|
||||
|
||||
The *compute* and *block storage* nodes are configured as described in the
|
||||
installation guides of the `Compute service`_ and the `Volume service`_
|
||||
installation guides of the :nova-doc:`Compute service <>` and the
|
||||
:cinder-doc:`Volume service <>`
|
||||
respectively. The *controller* nodes host the Bare Metal service components.
|
||||
|
||||
Networking
|
||||
@ -168,10 +169,10 @@ The following components of the Bare Metal service are installed on a
|
||||
There is no 1-1 mapping between ``ironic-conductor`` and ``nova-compute``
|
||||
processes, as they communicate only through the Bare Metal API service.
|
||||
|
||||
* The networking-baremetal_ ML2 plugin should be loaded into the Networking
|
||||
* The :networking-baremetal-doc:`networking-baremetal <>` ML2 plugin should be loaded into the Networking
|
||||
service to assist with binding bare metal ports.
|
||||
|
||||
The ironic-neutron-agent_ service should be started as well.
|
||||
The :ironic-neutron-agent-doc:`ironic-neutron-agent <>` service should be started as well.
|
||||
|
||||
* If the Bare Metal introspection is used, its ``ironic-inspector`` process
|
||||
has to be installed on all *controllers*. Each such process works as both
|
||||
@ -237,12 +238,5 @@ protocol, and the *bare metal network* has to have a route to the *storage
|
||||
network*. See :doc:`/admin/boot-from-volume` for more details.
|
||||
|
||||
.. _an OpenStack installation: https://docs.openstack.org/arch-design/use-cases/use-case-general-compute.html
|
||||
.. _Compute service: https://docs.openstack.org/nova/latest/
|
||||
.. _Networking service: https://docs.openstack.org/neutron/latest/
|
||||
.. _Image service: https://docs.openstack.org/glance/latest/
|
||||
.. _Volume service: https://docs.openstack.org/cinder/latest/
|
||||
.. _Bare Metal Introspection service: https://docs.openstack.org/ironic-inspector/latest/
|
||||
.. _control plane design guide: https://docs.openstack.org/arch-design/design-control-plane.html
|
||||
.. _networking-baremetal: https://docs.openstack.org/networking-baremetal/latest/
|
||||
.. _ironic-neutron-agent: https://docs.openstack.org/networking-baremetal/latest/install/index.html#configure-ironic-neutron-agent
|
||||
.. _iSCSI: https://en.wikipedia.org/wiki/ISCSI
|
||||
|
@ -60,8 +60,8 @@ There are however some limitations for different hardware interfaces:
|
||||
|
||||
Steps to start a deployment are pretty similar to those when using Compute:
|
||||
|
||||
#. To use the `openstack baremetal CLI
|
||||
<https://docs.openstack.org/python-ironicclient/latest/cli/osc_plugin_cli.html>`_,
|
||||
#. To use the
|
||||
:python-ironicclient-doc:`openstack baremetal CLI <cli/osc_plugin_cli.html>`,
|
||||
set up these environment variables. Since no authentication strategy is
|
||||
being used, the value none must be set for OS_AUTH_TYPE. OS_ENDPOINT is
|
||||
the URL of the ironic-api process.
|
||||
|
@ -129,6 +129,3 @@ following command.
|
||||
::
|
||||
|
||||
$ openstack baremetal node maintenance unset $NODE_UUID
|
||||
|
||||
|
||||
.. _ironic-python-agent: https://docs.openstack.org/ironic-python-agent/latest/
|
||||
|
Loading…
Reference in New Issue
Block a user