ironic/doc/source/install/include/configure-ironic-singleprocess.inc
Steve Baker beaaf405d3 Add ironic-novncproxy service
This is a forklift of the nova novncproxy service to act as the noVNC
front-end to graphical consoles.

The service does the following:
- serves noVNC web assets for the browser based VNC client
- creates a websocket to proxy VNC traffic to an actual VNC server
- decouples authentication traffic so that the source server can have
  a different authentication method than the browser client

The forklifted code has been adapted to Ironic conventions, including:
- [vnc] config options following Ironic conventions and using existing
  config options where appropriate
- Removing the unnecessary authentication method VeNCrypt, leaving only
  the None auth method.
- Adapting the ironic-novncproxy command to use Ironic's service launch
  approach, allowing it to be started as part of the all-in-one ironic
- Replace Nova's approach of looking up the instance via the token.
  Instead the node UUID is included in the websocket querystring
  alongside the token
- Removing cookie fallback when token is missing from querystring
- Removing expected protocol validation in the websocket handshake
- Removing internal access path support
- Removing enforce_session_timeout as this will be done at the
  container level

Related-Bug: 2086715
Change-Id: I575a8671e2262408ba1d690cfceabe992c2d4fef
2025-02-19 20:17:57 +00:00

51 lines
1.5 KiB
PHP

Configuring single-process ironic
---------------------------------
As an alternative to starting separate API and conductor instances, you can
start ``ironic`` services that combine an API and a conductor in the same
process. This may be particularly beneficial in environments with limited
resources and low number of nodes to handle.
.. note:: This feature is available starting with the Yoga release series.
#. Start with setting up the environment as described in `Configuring
ironic-api service`_, `Configuring ironic-conductor service`_, and
`Configuring ironic-novncproxy service`_, but do not start any services. Merge
configuration options into a single configuration file.
.. note::
Any RPC settings will only take effect if you have more than one combined
service started or if you have additional conductors.
If you don't plan to have more than one conductor, you can disable the
RPC completely:
.. code-block:: ini
[DEFAULT]
rpc_transport = none
#. Stop existing services if they are already started:
RHEL/CentOS/SUSE::
sudo systemctl stop openstack-ironic-api
sudo systemctl stop openstack-ironic-conductor
sudo systemctl stop openstack-ironic-novncproxy
Ubuntu/Debian::
sudo service ironic-api stop
sudo service ironic-conductor stop
sudo service ironic-novncproxy stop
#. Start or restart the ironic service:
RHEL/CentOS/SUSE::
sudo systemctl restart openstack-ironic
Ubuntu/Debian::
sudo service ironic restart