ironic/install-guide/source/include/configure-ironic-api.rst
Vadim Hmyrov 7132ea7014 Update guide section for messaging setup
Our current guide suggests to use already deprecated messaging options.

Change-Id: I8c5e58979d05bae0cdaa3499e2c404799232f2ab
Closes-Bug: #1639738
2016-11-08 14:01:18 +02:00

2.6 KiB

Configuring ironic-api service

  1. 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:

    [database]
    
    # The SQLAlchemy connection string used to connect to the
    # database (string value)
    connection=mysql+pymysql://ironic:IRONIC_DBPASSWORD@DB_IP/ironic?charset=utf8
  2. 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:

    [DEFAULT]
    
    # 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/
  3. 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:

    [DEFAULT]
    
    # 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)
    auth_strategy=keystone
    
    [keystone_authtoken]
    
    # Authentication type to load (string value)
    auth_type=v3password
    
    # Complete public Identity API endpoint (string value)
    auth_uri=http://PUBLIC_IDENTITY_IP:5000/v3/
    
    # Complete admin Identity API endpoint. (string value)
    auth_url=http://PRIVATE_IDENTITY_IP:35357/v3/
    
    # Service username. (string value)
    admin_user=ironic
    
    # Service account password. (string value)
    admin_password=IRONIC_PASSWORD
    
    # Service tenant name. (string value)
    admin_tenant_name=service
  4. Create the Bare Metal service database tables:

    $ ironic-dbsync --config-file /etc/ironic/ironic.conf create_schema
  5. Restart the ironic-api service:

    Fedora/RHEL7/CentOS7:
      sudo systemctl restart openstack-ironic-api
    
    Ubuntu:
      sudo service ironic-api restart