ironic/doc/source/admin/radosgw.rst
Matthew Thode e9e4d8870c Remove endpoint_type from configuration
python-swiftclient stopped supporting the temp url structure used when radosgw
was set as the endpoint_type in ocata, meaning only Newton and older versions
of python-swiftclient will work.  Newton is deprecated, so remove the option.

This breaks the deprecation cycle, but since it has been not working for so
long it needs to just be dropped.

Change-Id: Ibdc93b049b7e1ae34cac9e1f599786439c46a685
2018-05-22 19:53:55 +03:00

2.3 KiB

Ceph Object Gateway support

Overview

Ceph project is a powerful distributed storage system. It contains object store and provides a RADOS Gateway Swift API which is compatible with OpenStack Swift API.

Ironic added support for RADOS Gateway temporary URL in the Mitaka release.

Configure Ironic and Glance with RADOS Gateway

  1. Install Ceph storage with RADOS Gateway. See Ceph documentation.

  2. Configure RADOS Gateway to use keystone for authentication. See Integrating with OpenStack Keystone

  3. Register RADOS Gateway endpoint in the keystone catalog, with the same format swift uses, as the object-store service. URL example:

    http://rados.example.com:8080/swift/v1/AUTH_$(project_id)s.

    In the ceph configuration, make sure radosgw is configured with the following value:

    rgw swift account in url = True
  4. Configure Glance API service for RADOS Swift API as backend. Edit the configuration file for the Glance API service (is typically located at /etc/glance/glance-api.conf):

    [glance_store]
    
    stores = file, http, swift
    default_store = swift
    default_swift_reference=ref1
    swift_store_config_file=/etc/glance/glance-swift-creds.conf
    swift_store_container = glance
    swift_store_create_container_on_put = True

    In the file referenced in swift_store_config_file option, add the following:

    [ref1]
    user = <service project>:<service user name>
    key = <service user password>
    user_domain_id = default
    project_domain_id = default
    auth_version = 3
    auth_address = http://keystone.example.com/identity

    Values for user and key options correspond to keystone credentials for RADOS Gateway service user.

    Note: RADOS Gateway uses FastCGI protocol for interacting with HTTP server. Read your HTTP server documentation if you want to enable HTTPS support.

  5. Restart Glance API service and upload all needed images.

  6. If you're using custom container name in RADOS, change Ironic configuration file on the conductor host(s) as follows:

    [glance]
    
    swift_container = glance
  7. Restart Ironic conductor service(s).