config_tempest.py breaks if Rados Gateway is configured for object-store

Solution Verified - Updated

Environment

  • Red Hat Enterprise Linux 7.x
  • Red Hat Ceph Storage 1.3.x
  • Red Hat Ceph Storage 2.x
  • Red Hat OpenStack Platform
  • OpenStack Tempest test suite version 10.0.0-3

Issue

  • If the Rados Gateway is configured as object-store instead of swift the tools/config_tempest.py script will fail.

Fails with exception:

CRITICAL tempest [-] ServiceError: Request on service 'object-store' with url 'http://192.0.0.0:8087/info' failed with code 404
TRACE tempest Traceback (most recent call last):
TRACE tempest   File "tools/config_tempest.py", line 726, in <module>
TRACE tempest     main()
TRACE tempest   File "tools/config_tempest.py", line 140, in main
TRACE tempest     clients.identity_region)
TRACE tempest   File "/root/tempest/tempest/common/api_discovery.py", line 154, in discover
TRACE tempest     services[name]['extensions'] = service.get_extensions()
TRACE tempest   File "/root/tempest/tempest/common/api_discovery.py", line 111, in get_extensions
TRACE tempest     top_level_path="info")
TRACE tempest   File "/root/tempest/tempest/common/api_discovery.py", line 53, in do_get
TRACE tempest     " with code %d" % (self.name, url, r.status))
TRACE tempest ServiceError: Request on service 'object-store' with url 'http://192.0.0.0:8087/info' failed with code 404

Resolution

  • During the Tempest configuration, set the following parameters in the Ceph configuration file (ceph.conf) on the RGW node (instance-name being the name of the RGW node) and restart the RGW:
[client.radosgw.instance-name]
rgw_swift_url_prefix = "/"
rgw_enable_apis=swift, swift_auth, admin
  • Once the configuration is complete, comment the parameters out and restart the RGW:
[client.radosgw.instance-name]
#rgw_swift_url_prefix = "/"
#rgw_enable_apis=swift, swift_auth, admin

Root Cause

  • If the Rados Gateway is configured as object-store instead of swift the tools/config_tempest.py script will fail because RadowGW does not implement the /info api call.
SBR
Category

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.