From e00689d50fb6b311988afc2e8a3459ce3af15d47 Mon Sep 17 00:00:00 2001 From: Damian Dabrowski Date: Tue, 30 May 2023 00:11:08 +0200 Subject: [PATCH] Enable S3 API by default When only 'swift' is specified in `rgw_enable_apis`, sending a http request to the base RadosGW API URL('/') returns '405 Method Not Allowed'. It causes an important issue, because when any change is made to RadosGW configuration via ceph-ansible, the 'restart ceph rgws' handler is triggered that use restart_rgw_daemon.sh[1] script to restart radosgw service. Both curl and wget used by this script return non-zero return code on '405 Method Not Allowed' response, causing ceph-ansible playbook to fail. As a solution 's3' api can be enabled by default. With S3 API enabled, base RadosGW API URL('/') returns 200 instead of 405 RC. This change affects only environments using integrated ceph-ansible. [1] https://github.com/ceph/ceph-ansible/blob/stable-7.0/roles/ceph-handler/templates/restart_rgw_daemon.sh.j2#L68 Change-Id: Ief8759e19d935aec9d8cfa855b1b0ba2b0c83424 --- inventory/group_vars/ceph-rgw.yml | 6 ++---- .../notes/s3-api-enabled-by-default-53e6602aeb4d9ff1.yaml | 4 ++++ 2 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 releasenotes/notes/s3-api-enabled-by-default-53e6602aeb4d9ff1.yaml diff --git a/inventory/group_vars/ceph-rgw.yml b/inventory/group_vars/ceph-rgw.yml index eabe10fdb0..5e164628ff 100644 --- a/inventory/group_vars/ceph-rgw.yml +++ b/inventory/group_vars/ceph-rgw.yml @@ -12,10 +12,8 @@ ceph_conf_overrides_rgw: rgw_keystone_implicit_tenants: 'true' rgw_swift_account_in_url: 'true' rgw_swift_versioning_enabled: 'true' - rgw_enable_apis: swift - # For S3 support, update/add below rows - # rgw_enable_apis: 'swift, s3' - # rgw_s3_auth_use_keystone: 'true' + rgw_enable_apis: 'swift, s3' + rgw_s3_auth_use_keystone: 'true' ### ### Backend TLS diff --git a/releasenotes/notes/s3-api-enabled-by-default-53e6602aeb4d9ff1.yaml b/releasenotes/notes/s3-api-enabled-by-default-53e6602aeb4d9ff1.yaml new file mode 100644 index 0000000000..bebf664066 --- /dev/null +++ b/releasenotes/notes/s3-api-enabled-by-default-53e6602aeb4d9ff1.yaml @@ -0,0 +1,4 @@ +--- +other: + - | + S3 API is now enabled by default for deployments using integrated ceph-ansible.