A service for managing and provisioning Bare Metal servers.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

129 lines
3.7 KiB

Configuring ironic-api service
#. The Bare Metal service stores information in a database. This guide uses the
MySQL database that is used by other OpenStack services.
Configure the location of the database via the ``connection`` option. In the
following, replace ``IRONIC_DBPASSWORD`` with the password of your
``ironic`` user, and replace ``DB_IP`` with the IP address where the DB
server is located:
.. code-block:: ini
# The SQLAlchemy connection string used to connect to the
# database (string value)
#. Configure the ironic-api service to use the RabbitMQ message broker by
setting the following option. Replace ``RPC_*`` with appropriate
address details and credentials of RabbitMQ server:
.. code-block:: ini
# A URL representing the messaging driver to use and its full
# configuration. (string value)
transport_url = rabbit://RPC_USER:RPC_PASSWORD@RPC_HOST:RPC_PORT/
Alternatively, you can use JSON RPC for interactions between
ironic-conductor and ironic-api. Enable it in the configuration and provide
the keystone credentials to use for authentication:
.. code-block:: ini
rpc_transport = json-rpc
# Authentication type to load (string value)
auth_type = password
# Authentication URL (string value)
# Username (string value)
# User's password (string value)
# Project name to scope to (string value)
# Domain ID containing project (string value)
# User's domain id (string value)
If you use port other than the default 8089 for JSON RPC, you have to
configure it, for example:
.. code-block:: ini
port = 9999
#. Configure the ironic-api service to use these credentials with the Identity
service. Replace ``PUBLIC_IDENTITY_IP`` with the public IP of the Identity
server, ``PRIVATE_IDENTITY_IP`` with the private IP of the Identity server
and replace ``IRONIC_PASSWORD`` with the password you chose for the
``ironic`` user in the Identity service:
.. code-block:: ini
# Authentication strategy used by ironic-api: one of
# "keystone" or "noauth". "noauth" should not be used in a
# production environment because all authentication will be
# disabled. (string value)
# Authentication type to load (string value)
# Complete public Identity API endpoint (string value)
# Complete admin Identity API endpoint. (string value)
# Service username. (string value)
# Service account password. (string value)
# Service tenant name. (string value)
# Domain name containing project (string value)
# User's domain name (string value)
#. Create the Bare Metal service database tables:
.. code-block:: bash
$ ironic-dbsync --config-file /etc/ironic/ironic.conf create_schema
#. Restart the ironic-api service:
sudo systemctl restart openstack-ironic-api
sudo service ironic-api restart