Enable Object Storage meters for Red Hat Enterprise Linux and CentOS¶
Telemetry uses a combination of polling and notifications to collect Object Storage meters.
Note
Your environment must include the Object Storage service.
Prerequisites¶
The Telemetry service requires access to the Object Storage service
using the ResellerAdmin
role. Perform these steps on the controller
node.
Source the
admin
credentials to gain access to admin-only CLI commands.$ . admin-openrc
Create the
ResellerAdmin
role:$ openstack role create ResellerAdmin +-----------+----------------------------------+ | Field | Value | +-----------+----------------------------------+ | domain_id | None | | id | 462fa46c13fd4798a95a3bfbe27b5e54 | | name | ResellerAdmin | +-----------+----------------------------------+
Add the
ResellerAdmin
role to theceilometer
user:$ openstack role add --project service --user ceilometer ResellerAdmin
Note
This command provides no output.
Install components¶
Install the packages:
# dnf install python3-ceilometermiddleware
Configure Object Storage to use Telemetry¶
Perform these steps on the controller and any other nodes that run the Object Storage proxy service.
Edit the
/etc/swift/proxy-server.conf
file and complete the following actions:In the
[filter:keystoneauth]
section, add theResellerAdmin
role:[filter:keystoneauth] ... operator_roles = admin, user, ResellerAdmin
In the
[pipeline:main]
section, addceilometer
:[pipeline:main] pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth container-quotas account-quotas slo dlo versioned_writes proxy-logging ceilometer proxy-server
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 theopenstack
account inRabbitMQ
.
Finalize installation¶
Restart the Object Storage proxy service:
# systemctl restart openstack-swift-proxy.service