openstack-manuals/doc/install-guide-rst/source/ceilometer-swift.rst
KATO Tomoyuki eb87e3a28e [install-guide] convert ceilometer config to RST
* section_ceilometer-nova.xml
* section_ceilometer-glance.xml
* section_ceilometer-cinder.xml
* section_ceilometer-swift.xml

Change-Id: I8f0e3e6763db72c793aa40209f892adb04b8e222
Implements: blueprint installguide-liberty
2015-07-13 22:57:49 +09:00

3.6 KiB

Configure the Object Storage service

To retrieve storage-oriented events and samples, configure the Object Storage service to send notifications to the message bus.

To configure prerequisites

The Telemetry service requires access to the Object Storage service using the ResellerAdmin role. Perform these steps on the controller node.

  1. Source the admin credentials to gain access to admin-only CLI commands.

    $ source admin-openrc.sh
  2. Create the ResellerAdmin role:

    $ openstack role create ResellerAdmin
    +-------+----------------------------------+
    | Field | Value                            |
    +-------+----------------------------------+
    | id    | 462fa46c13fd4798a95a3bfbe27b5e54 |
    | name  | ResellerAdmin                    |
    +-------+----------------------------------+
  3. Add the ResellerAdmin role to the service tenant and ceilometer user:

    $ openstack role add --project service --user ceilometer ResellerAdmin
    +-------+----------------------------------+
    | Field | Value                            |
    +-------+----------------------------------+
    | id    | 462fa46c13fd4798a95a3bfbe27b5e54 |
    | name  | ResellerAdmin                    |
    +-------+----------------------------------+

To configure notifications

Perform these steps on the controller and any other nodes that run the Object Storage proxy service.

  1. Edit the /etc/swift/proxy-server.conf file and complete the following actions:

    1. In the [filter:keystoneauth] section, add the ResellerAdmin role:

      [filter:keystoneauth]
      ...
      operator_roles = admin,user,ResellerAdmin
    2. In the [pipeline:main] section, add ceilometer:

      [pipeline:main]
      ...
      pipeline = authtoken cache healthcheck keystoneauth proxy-logging ceilometer proxy-server
    3. In the [filter:ceilometer] section, configure notifications:

      [filter:ceilometer]
      ...
      paste.filter_factory = ceilometermiddleware.swift:filter_factory
      control_exchange = swift
      url = rabbit://openstack:RABBIT_PASS@controller:5672/
      driver = messagingv2
      topic = notifications
      log_level = WARN

      Replace RABBIT_PASS with the password you chose for the openstack account in RabbitMQ.

  2. Add the swift system user to the ceilometer system group to permit access to the Telemetry configuration files by the Object Storage service:

    # usermod -a -G ceilometer swift

obs

  1. Restart the Object Storage proxy service:

    # systemctl restart openstack-swift-proxy.service

rdo

  1. Install the ceilometermiddleware package:

    # pip install ceilometermiddleware
  2. Restart the Object Storage proxy service:

    # systemctl restart openstack-swift-proxy.service

ubuntu

  1. Restart the Object Storage proxy service:

    # service swift-proxy restart